/* site.css: the one stylesheet for every page.
   1 Tokens, reset, type, header, footer and shared components
   2 Home page (scoped to .home-page)
   3 Interior pages (scoped to body:not(.home-page))
   4 Phone and small-screen overrides (formerly mobile.css)
   Breakpoints: phone <=720px, tablet 721-1120px, desktop >=1121px. 380px is for small-phone text fitting only. */

/* base.css: shared by every page (tokens, reset, type, header, footer, buttons, shared components).
   Page stylesheets (home.css, interior.css) load after it; mobile.css loads last. */
:root {
  --navy: #1b2a4a;
  --coral: #e8998d;
  --paper: #fdf8f5;
  --paper-warm: var(--paper);
  --coral-light: #f2b5ac;
  --sage: #7a9e8a;
  --periwinkle: #a7bdff;
  --slate: #4a5568;
  --slate-light: #a2aab7;
  /* Tints and shades of the brand colors (Brand Guidelines 2026, p.10): tints mix with white, shades mix with navy. Add new colors here, never as raw values. */
  --coral-10: color-mix(in srgb, var(--coral) 10%, #fff);
  --coral-20: color-mix(in srgb, var(--coral) 20%, #fff);
  --coral-30: color-mix(in srgb, var(--coral) 30%, #fff);
  --coral-shade-40: color-mix(in srgb, var(--coral) 40%, var(--navy));
  --navigation-deep-10: color-mix(in srgb, var(--navigation-deep) 10%, #fff);
  --navigation-deep-20: color-mix(in srgb, var(--navigation-deep) 20%, #fff);
  --navigation-deep-30: color-mix(in srgb, var(--navigation-deep) 30%, #fff);
  --navigation-deep-50: color-mix(in srgb, var(--navigation-deep) 50%, #fff);
  --navigation-deep-shade-60: color-mix(in srgb, var(--navigation-deep) 60%, var(--navy));
  --navigation-deep-shade-80: color-mix(in srgb, var(--navigation-deep) 80%, var(--navy));
  --navy-15: color-mix(in srgb, var(--navy) 15%, #fff);
  --navy-20: color-mix(in srgb, var(--navy) 20%, #fff);
  --navy-30: color-mix(in srgb, var(--navy) 30%, #fff);
  --navy-5: color-mix(in srgb, var(--navy) 5%, #fff);
  --navy-deep-50: color-mix(in srgb, var(--navy) 50%, #000);
  --navy-deep-75: color-mix(in srgb, var(--navy) 75%, #000);
  --periwinkle-10: color-mix(in srgb, var(--periwinkle) 10%, #fff);
  --periwinkle-20: color-mix(in srgb, var(--periwinkle) 20%, #fff);
  --periwinkle-30: color-mix(in srgb, var(--periwinkle) 30%, #fff);
  --periwinkle-70: color-mix(in srgb, var(--periwinkle) 70%, #fff);
  --respite-deep-10: color-mix(in srgb, var(--respite-deep) 10%, #fff);
  --respite-deep-20: color-mix(in srgb, var(--respite-deep) 20%, #fff);
  --respite-deep-30: color-mix(in srgb, var(--respite-deep) 30%, #fff);
  --respite-deep-50: color-mix(in srgb, var(--respite-deep) 50%, #fff);
  --respite-deep-70: color-mix(in srgb, var(--respite-deep) 70%, #fff);
  --respite-deep-shade-40: color-mix(in srgb, var(--respite-deep) 40%, var(--navy));
  --respite-deep-shade-60: color-mix(in srgb, var(--respite-deep) 60%, var(--navy));
  --sage-20: color-mix(in srgb, var(--sage) 20%, #fff);
  --sage-30: color-mix(in srgb, var(--sage) 30%, #fff);
  --sage-50: color-mix(in srgb, var(--sage) 50%, #fff);
  --slate-light-30: color-mix(in srgb, var(--slate-light) 30%, #fff);
  --slate-light-50: color-mix(in srgb, var(--slate-light) 50%, #fff);
  --slate-light-70: color-mix(in srgb, var(--slate-light) 70%, #fff);
  --slate-light-shade-60: color-mix(in srgb, var(--slate-light) 60%, var(--navy));
  --slate-light-shade-80: color-mix(in srgb, var(--slate-light) 80%, var(--navy));
  --respite: var(--periwinkle);
  --respite-deep: #6b8fd4;
  --navigation: var(--sage);
  --navigation-deep: #5c7d6a;
  --coral-ink: var(--coral-shade-40);
  --respite-ink: var(--respite-deep-shade-60);
  --navigation-ink: var(--navigation-deep-shade-60);
  --coral-field: var(--coral-shade-40);
  --respite-field: var(--respite-deep-shade-60);
  --navigation-field: var(--navigation-deep-shade-80);
  --sage-light: var(--navigation-deep-50);
  --periwinkle-light: var(--periwinkle-70);
  --panel: var(--navy-5);
  --panel-respite: var(--respite-deep-10);
  --panel-navigation: var(--navigation-deep-10);
  --panel-coral: var(--coral-10);
  --paper-2: var(--paper-warm);
  --respite-mist: var(--panel-respite);
  --navigation-mist: var(--panel-navigation);
  --ink: var(--navy);
  --ink-deep: var(--navy-deep-75);
  --ink-deepest: var(--navy-deep-50);
  --muted: var(--slate);
  --rule: var(--slate-light-30);
  --rule-strong: var(--navy-30);
  --white: #ffffff;
  --lift-2: 0 1px 2px rgba(27, 42, 74, 0.06), 0 18px 40px -20px rgba(27, 42, 74, 0.4);
  --lift-3: 0 2px 4px rgba(27, 42, 74, 0.07), 0 30px 64px -26px rgba(27, 42, 74, 0.52);
  /* Type scale: 7 steps (desktop / tablet / phone values set below). */
  --fs-display: 3rem;
  --fs-h2: 2.25rem;
  --fs-h3: 1.5rem;
  --fs-lede: 1.25rem;
  --fs-body: 1.0625rem;
  --fs-small: 0.9375rem;
  --fs-label: 0.8125rem;
  --t-caption: var(--fs-label);
  --t-body: var(--fs-body);
  --t-lede: var(--fs-lede);
  --t-card: var(--fs-h3);
  --t-h3: var(--fs-h3);
  --t-h2: var(--fs-h2);
  --t-h1: var(--fs-display);
  --t-statement: var(--fs-display);
  --t-section: var(--fs-h3);
  --lh-tight: 1.06;
  --lh-snug: 1.28;
  --lh-body: 1.55;
  --lh-loose: 1.7;
  --pad-tight: 32px;
  --pad: 56px;
  --pad-wide: 80px;
  --gutter: 48px;
  --shell: 1240px;
  --header-height: 74px;
  --card-pad: 24px;
  --content-gap: 16px;
  --hero-copy-width: 38rem;
  --hero-height: 36rem;
  --hero-image-height: clamp(160px, 46vw, 200px);
  --section-head-gap: 24px;
  --edge: max(var(--gutter), calc(50vw - var(--shell) / 2));
  --r-sm: 8px;
  --r-pill: 999px;
  --r-lg: 24px;
  --r-xl: var(--r-lg);
  --chan: var(--rule-strong);
  --focus: var(--navy);
  --lift-1: 0 1px 3px rgba(27, 42, 74, 0.06);
  --r: 16px;
}
@media (max-width: 1120px) {
  :root {
    --fs-display: 2.5rem;
    --fs-h2: 1.875rem;
    --fs-h3: 1.375rem;
    --fs-lede: 1.1875rem;
  }
}
@media (max-width: 720px) {
  :root {
    --fs-display: 2rem;
    --fs-h2: 1.625rem;
    --fs-h3: 1.25rem;
    --fs-lede: 1.125rem;
    --fs-body: 1rem;
  }
}
@media (max-width: 1120px) {
  :root {
    --t-h2: 2.125rem;
    --pad-wide: 64px;
    --pad: 48px;
    --pad-tight: 32px;
    --gutter: 30px;
    --t-h3: 1.5rem;
  }
}
@media (max-width: 720px) {
  :root {
    --t-h2: 1.875rem;
    --t-h3: 1.375rem;
    --t-card: 1.3125rem;
    --t-lede: 1.0625rem;
    --pad-wide: 48px;
    --pad: 36px;
    --pad-tight: 32px;
    --gutter: 22px;
    --card-pad: 20px;
  }
}
.nav-panel-inner > a.btn {
  background: var(--coral);
  border-color: var(--coral);
  color: var(--navy);
}
@media (max-width: 720px) {
  .hero--image .hero-grid {
    grid-template-columns: 1fr;
  }
}
@font-face {
  font-family: "Albert Sans";
  src: url("./fonts/albert-sans-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}
@font-face {
  font-family: "Albert Sans";
  src: url("./fonts/albert-sans-italic-latin.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Wix Madefor Display";
  src: url("./fonts/wix-madefor-display-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 500 800;
  font-display: swap;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
[hidden] {
  display: none !important;
}
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: calc(var(--header-height) + 18px);
  overflow-x: clip;
}
body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: var(--nw-text);
  font-size: var(--t-body);
  line-height: var(--lh-body);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: clip;
}
body.nav-open {
  overflow: clip;
}
html:has(body.nav-open) {
  overflow-y: hidden;
}
img,
picture,
svg,
iframe {
  display: block;
  max-width: 100%;
}
img {
  height: auto;
}
a {
  color: inherit;
}
:where(p, li, dd, dt, a, h1, h2, h3, h4, summary) {
  overflow-wrap: break-word;
}
p {
  margin: 0;
}
ul,
ol {
  margin: 0;
  padding-left: 1.25em;
}
table {
  border-collapse: collapse;
  width: 100%;
}
h1,
h2,
h3,
h4 {
  margin: 0;
  font-family: var(--nw-display);
  font-weight: 800;
  line-height: var(--lh-tight);
  letter-spacing: -0.03em;
  text-wrap: balance;
  color: var(--ink);
}
h1 {
  font-size: var(--t-h1);
  letter-spacing: -0.035em;
}
h2 {
  font-size: var(--t-h2);
  font-weight: 800;
}
h3 {
  font-size: var(--t-h3);
  line-height: 1.18;
  font-weight: 700;
  letter-spacing: -0.018em;
}
h4 {
  font-size: var(--t-card);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -0.022em;
}
:where(p, li) {
  text-wrap: pretty;
}
summary {
  text-wrap: balance;
}
.keep-together {
  white-space: nowrap;
  overflow-wrap: normal;
}
:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 3px;
  border-radius: var(--r-sm);
}
.hero :focus-visible,
.site-footer :focus-visible,
.cta :focus-visible,
.site-header :focus-visible,
.skip-link:focus-visible {
  outline-color: var(--coral-light);
}
::selection {
  background: var(--panel-coral);
  color: var(--ink);
}
.skip-link {
  position: fixed;
  left: 16px;
  top: -100px;
  z-index: 400;
  background: var(--navy);
  color: var(--paper);
  padding: 12px 18px;
  border-radius: var(--r-sm);
  font-weight: 700;
  text-decoration: none;
  transition: top 0.15s ease;
}
.skip-link:focus {
  top: 14px;
}
.shell {
  width: min(var(--shell), 100% - (var(--gutter) * 2));
  margin-inline: auto;
}
.band {
  position: relative;
  padding: var(--pad) 0;
  background: var(--white);
}
.band + .band {
  border-top: 1px solid var(--rule);
}
.sec {
  position: relative;
}
.sec::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 0;
  width: 3px;
  border-radius: var(--r-sm);
  background: var(--chan);
  display: none;
}
.sec--both::before {
  background: linear-gradient(
    180deg,
    var(--respite) 0%,
    var(--respite) 34%,
    var(--navigation) 72%,
    var(--navigation) 100%
  );
}
.sec-star {
  position: absolute;
  left: -7px;
  top: -6px;
  width: 17px;
  height: 17px;
  color: var(--chan);
  display: none;
}
.sec--both > .sec-star {
  color: var(--respite);
}
.sec--spine {
  padding-left: 0;
}
.sec--spine::before,
.sec--spine > .sec-star {
  display: none;
}
.sec-head {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.85fr);
  gap: 18px 56px;
  align-items: start;
  margin-bottom: var(--section-head-gap);
}
.sec-head--solo {
  grid-template-columns: 1fr;
}
.sec-head--solo .sec-title h2 {
  max-width: 17em;
}
.sec-title h2 {
  max-width: 13em;
}
.sec-body > * + * {
  margin-top: 16px;
}
.label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  font-family: var(--nw-text);
  font-size: var(--t-caption);
  font-weight: 700;
  text-transform: uppercase;
  color: var(--coral-ink);
  line-height: 1.3;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
}
.label--respite {
  color: var(--respite-ink);
}
.tick {
  flex: 0 0 auto;
  width: 18px;
  height: 3px;
  border-radius: var(--r-sm);
  background: var(--coral);
}
.label--respite .tick {
  background: var(--respite);
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms;
    transition-duration: 0.001ms;
  }
}
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  container-type: inline-size;

  transition: box-shadow 0.2s ease;
}
.site-header.is-stuck {
  box-shadow: 0 12px 30px -18px color-mix(in srgb, var(--navy-deep-50) 85%, transparent);
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
  height: var(--header-height);
}
.brand {
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  min-width: 0;
}
.brand img {
  height: 40px;
  width: auto;
  object-fit: contain;
}
.nav-desktop {
  display: flex;
  align-items: center;
  gap: 2px;
}
.nav-desktop > a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border-radius: var(--r-sm);
  color: rgba(255, 255, 255, 0.82);
  font-size: var(--fs-small);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition:
    color 0.16s ease,
    background 0.16s ease;
}
.nav-desktop > a:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.09);
}
.nav-desktop > a[aria-current="page"] {
  color: #fff;
  font-weight: 700;
}
.nav-desktop > a[aria-current="page"]::after {
  content: "";
  position: absolute;
  left: 13px;
  right: 13px;
  bottom: 1px;
  height: 3px;
  border-radius: var(--r-sm);
  background: var(--coral);
}
.nav-desktop > a.nav-cta {
  margin-left: 12px;
  padding: 9px 16px;
  color: var(--navy);
  background: var(--coral);
  font-size: var(--fs-small);
  font-weight: 700;
}
.nav-mobile {
  display: none;
}
.nav-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  background: transparent;
  border: 1.5px solid rgba(255, 255, 255, 0.34);
  color: #fff;
  border-radius: var(--r-sm);
  padding: 9px 14px;
  font: inherit;
  font-size: var(--t-body);
  font-weight: 700;
  cursor: pointer;
  min-height: 44px;
  line-height: 1.2;
}
.nav-toggle-icon {
  display: grid;
  gap: 3.5px;
  width: 17px;
}
.nav-toggle-icon i {
  display: block;
  height: 2px;
  background: currentColor;
  border-radius: var(--r-sm);
}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon i:nth-child(2) {
  opacity: 0.35;
}
.nav-panel {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  max-height: calc(100dvh - var(--header-height));
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--ink-deep);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 26px 44px -24px color-mix(in srgb, var(--navy-deep-50) 85%, transparent);
}
.nav-panel-inner {
  display: grid;
  gap: 2px;
  padding: 12px 0 22px;
}
.nav-panel-inner > a {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 15px 2px;
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  font-size: var(--t-lede);
  font-weight: 600;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.nav-panel-inner > a[aria-current="page"] {
  color: #fff;
  font-weight: 800;
}
.nav-panel-inner > a[aria-current="page"]::before {
  content: "";
  flex: 0 0 auto;
  width: 3px;
  height: 19px;
  border-radius: var(--r-sm);
  background: var(--coral);
}
.nav-panel-inner > a.btn {
  justify-content: center;
  margin-top: 16px;
  border-bottom: 0;
}
.nav-panel-inner > a.btn::before {
  display: none;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 24px;
  background: var(--coral);
  color: var(--navy);
  border: 1.5px solid var(--navy);
  border-radius: var(--r-sm);
  font-family: var(--nw-text);
  font-size: var(--fs-body);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.004em;
  text-decoration: none;
  cursor: pointer;
  transition:
    transform 0.14s ease,
    background 0.16s ease,
    box-shadow 0.16s ease;
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.btn:hover {
  background: var(--coral-light);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px -12px rgba(27, 42, 74, 0.5);
}
.btn:active {
  transform: none;
}
.cta .btn,
.site-header .btn,
.nav-panel .btn {
  border-color: var(--coral);
}
.cta .btn:hover,
.site-header .btn:hover,
.nav-panel .btn:hover {
  border-color: var(--coral-light);
}
.btn-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 24px;
}
.alink {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  overflow-wrap: anywhere;
  font-weight: 700;
  font-size: var(--t-body);
  text-decoration: none;
  color: var(--navy);
  border-bottom: 2px solid var(--coral);
  padding-bottom: 3px;
  transition: border-color 0.16s ease;
}
.alink:hover {
  border-bottom-color: var(--navy);
}
.alink > span[aria-hidden] {
  transition: transform 0.16s ease;
}
.alink:hover > span[aria-hidden] {
  transform: translateX(3px);
}
.alink--respite {
  border-bottom-color: var(--respite);
}
.alink--navigation {
  border-bottom-color: var(--navigation);
}
.inline-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1.5px;
  text-decoration-color: var(--coral);
}
.inline-link:hover {
  text-decoration-color: currentColor;
}
@media (max-width: 1120px) {
  :root {
    --header-height: 66px;
  }
  .nav-desktop {
    display: none;
  }
  .nav-mobile {
    display: block;
    flex: 0 0 auto;
  }
  .header-inner {
    gap: 12px;
  }
  .brand img {
    height: 34px;
  }
}
@container (max-width: 70rem) {
  .js .nav-desktop {
    display: none;
  }
  .js .nav-mobile {
    display: block;
    flex: 0 0 auto;
  }
}
.hero {
  position: relative;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.82);
  --rule: rgba(255, 255, 255, 0.15);
  --rule-strong: rgba(255, 255, 255, 0.3);
}
.hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.02fr);
  align-items: center;
  gap: 0 clamp(32px, 5vw, 72px);
  width: min(var(--shell), 100% - (var(--gutter) * 2));
  margin-inline: auto;
}
.hero-copy {
  position: relative;
  z-index: 3;
  padding: var(--pad-wide) 0;
  max-width: none;
}
.hero h1 {
  color: #fff;
}
.hero-lede {
  font-size: var(--t-lede);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.8);
  max-width: 30em;
  margin-bottom: 26px;
}
.hero .btn {
  border-color: var(--coral);
}
.hero--image {
  isolation: isolate;
  background: var(--navy);
  --hero-text-fade: linear-gradient(
    90deg,
    rgba(27, 42, 74, 1) 0%,
    rgba(27, 42, 74, 1) calc(var(--edge) + var(--hero-copy-width) - 240px),
    rgba(27, 42, 74, 0.98) calc(var(--edge) + var(--hero-copy-width) - 180px),
    rgba(27, 42, 74, 0.94) calc(var(--edge) + var(--hero-copy-width) - 100px),
    rgba(27, 42, 74, 0.86) calc(var(--edge) + var(--hero-copy-width)),
    rgba(27, 42, 74, 0.5) calc(var(--edge) + var(--hero-copy-width) + 100px),
    rgba(27, 42, 74, 0.14) calc(var(--edge) + var(--hero-copy-width) + 210px),
    rgba(27, 42, 74, 0) calc(var(--edge) + var(--hero-copy-width) + 300px)
  );
}
.hero--image.hero--full,
.hero--image.hero--interior {
  min-height: var(--hero-height);
}
.hero--image::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--hero-text-fade);
}
.hero--image .hero-grid {
  width: 100%;
  min-height: inherit;
  display: block;
}
.hero--interior .hero-grid {
  display: flex;
  align-items: center;
}
.hero--image .hero-copy {
  width: min(var(--hero-copy-width), calc(100% - (var(--gutter) * 2)));
  max-width: var(--hero-copy-width);
  margin-left: max(var(--gutter), calc((100vw - var(--shell)) / 2));
  padding: 56px 0;
}
.hero--home .hero-copy {
  width: min(var(--hero-copy-width), calc(100% - (var(--gutter) * 2)));
  max-width: var(--hero-copy-width);
  padding: 56px 0;
}
.hero--home h1 {
  max-width: none;
  margin-bottom: 16px;
  font-size: var(--t-h1);
  line-height: var(--lh-tight);
}
.hero--home .hero-line {
  display: block;
}
.hero--home .hero-lede {
  margin-bottom: 20px;
  line-height: 1.42;
}
.hero--image .hero-lede {
  max-width: none;
}
.hero--home {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
}
.hero--home .hero-grid {
  min-height: 0;
  min-width: 0;
  display: flex;
  align-items: center;
}
.hero-art {
  position: relative;
  align-self: center;
  padding: 40px 0;
}
.hero--image .hero-art {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 38%;
  z-index: 0;
  height: auto;
  min-height: 100%;
  padding: 0;
  overflow: hidden;
}
.hero-media {
  position: relative;
  display: block;
  width: calc(100% + var(--edge));
  max-width: none;
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: none;
  background: var(--panel);
}
.hero--image .hero-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 0;
  box-shadow: none;
}
.hero-media img {
  width: 100%;
  max-width: none;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: var(--pos, center 38%);
  filter: saturate(1.02);
}
.hero--image .hero-media img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
}
.note {
  font-size: var(--t-body);
  line-height: 1.6;
  color: var(--muted);
}
.split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px 56px;
  align-items: center;
}
.people {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.person {
  display: flex;
  flex-direction: column;
  background: var(--white);
  border: 1px solid var(--rule);
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: none;
}
.person-photo {
  position: relative;
  background: var(--paper-2);
}
.person-photo img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center 18%;
}
.person-body {
  padding: 24px 26px 26px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.bio {
  margin-top: auto;
  padding-top: 20px;
}
.bio summary {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid var(--rule);
  cursor: pointer;
  list-style: none;
  font-size: var(--t-body);
  font-weight: 700;
  color: var(--ink);
}
.bio summary::-webkit-details-marker {
  display: none;
}
.bio summary span {
  color: var(--coral-ink);
  font-size: var(--t-lede);
  line-height: 1;
}
.bio[open] summary .detail-toggle-icon {
  transform: rotate(45deg);
}
@media (min-width: 1121px) {
  .form-layout--contact .tally-panel {
    grid-column: 1;
    grid-row: 1 / span 3;
  }
}
.tally-panel {
  box-shadow: none;
  background: transparent;
  border: 0;
  padding: 0;
  border-radius: 0;
}
.policy-date {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--rule);
  font-size: var(--t-caption);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.role {
  display: flex;
  flex-direction: column;
  background: var(--white);
  border: 1px solid var(--rule);
  border-radius: var(--r-lg);
  box-shadow: none;
  position: relative;
  overflow: hidden;
  padding: var(--card-pad);
}
.role::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: var(--respite);
}
.role h3 {
  font-size: var(--t-card);
  margin-bottom: 14px;
}
.role > p {
  color: var(--slate);
}
.role h4 {
  margin: 22px 0 12px;
  font-size: var(--t-caption);
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--muted);
}
.role ul {
  display: grid;
  gap: 9px;
}
.role li {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  font-size: var(--t-body);
  color: var(--slate);
}
.role li svg {
  width: 11px;
  height: 11px;
  margin-top: 6px;
  color: var(--respite);
}
.job-jump {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}
.job-jump a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 10px 17px;
  border: 1px solid var(--rule-strong);
  border-radius: var(--r-pill);
  background: var(--white);
  color: var(--ink);
  font-weight: 700;
  text-decoration: none;
}
.job-jump a:hover {
  border-color: var(--coral-ink);
  color: var(--coral-ink);
}
.job-listing {
  position: relative;
  overflow: hidden;
  scroll-margin-top: 0;

  border: 1px solid var(--rule);
  border-radius: var(--r-lg);
  background: var(--white);
  box-shadow: none;
}
.job-listing::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: var(--respite);
}
.job-listing h4 {
  margin-bottom: 13px;
  color: var(--ink);
  font-size: var(--t-lede);
}
.cta {
  position: relative;
  overflow: hidden;
  background: var(--navy);
  color: #fff;
  padding: 48px 0;
}
.cta::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--respite) 0%,
    var(--respite) 45%,
    var(--navigation) 55%,
    var(--navigation) 100%
  );
}
.cta-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px 56px;
  align-items: center;
}
.cta h2 {
  color: #fff;
  margin-bottom: 16px;
  max-width: 15em;
}
.cta p {
  color: rgba(255, 255, 255, 0.76);
  max-width: 40em;
}
.site-footer {
  container-type: inline-size;
  position: relative;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.72);
}
.footer-star {
  position: absolute;
  left: -70px;
  bottom: -90px;
  width: 320px;
  color: #fff;
  opacity: 0.04;
}
.footer-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr));
  gap: 30px;
}
.footer-logo {
  height: 28px;
  width: auto;
  margin-bottom: 0;
}
.footer-brand p {
  font-size: var(--fs-small);
  line-height: 1.5;
  max-width: 34em;
}
.footer-col h2 {
  font-size: var(--t-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.52);
  margin-bottom: 11px;
  font-family: var(--nw-text);
}
.footer-col a {
  display: block;
  padding: 4px 0;
  font-size: var(--fs-small);
  line-height: 1.35;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.8);
}
.footer-col a:hover {
  color: #fff;
}
.footer-col p {
  margin-top: 10px;
  font-size: var(--t-caption);
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.6);
}
.footer-social {
  display: flex;
  gap: 9px;
  margin-top: 10px;
}
.footer-col .footer-social a {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.82);
}
.footer-col .footer-social a:hover {
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}
.footer-social svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.footer-legal {
  position: relative;
  z-index: 2;
  margin-top: 30px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.footer-legal p {
  width: 100%;
  max-width: none;
  font-size: var(--fs-label);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.52);
}
.footer-bottom {
  margin-top: 10px;
}
.panel-block .role {
  border: 0;
  box-shadow: none;
}
.job-details > summary {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-height: 48px;
  padding: 16px 0;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.job-details > summary::-webkit-details-marker {
  display: none;
}
.job-details .job-columns {
  padding-top: 8px;
}
.job-details:not([open]) + .job-apply {
  margin-top: 0;
  padding-top: 20px;
}
.job-details[open] + .job-apply {
  margin-top: 24px;
}
.person-heading {
  min-width: 0;
}
@media (max-width: 1120px) {
  .sec-head {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 14px;
    margin-bottom: var(--section-head-gap);
  }
  .sec-title h2,
  .sec-head--solo .sec-title h2 {
    max-width: 17em;
  }
  .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
  }
  .people {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .split {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .cta-inner {
    grid-template-columns: 1fr;
  }
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px;
  }
  .footer-brand {
    grid-column: 1 / -1;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .hero--image.hero--interior {
    min-height: var(--hero-height);
  }
  .hero--image::after {
    display: none;
  }
  .hero--image .hero-grid {
    display: flex;
    flex-direction: column;
  }
  .hero--image .hero-art {
    position: relative;
    inset: auto;
    order: 1;
    width: 100%;
    min-height: 0;
    flex: 0 0 auto;
    padding: 0;
  }
  .hero--image .hero-copy {
    order: 2;
    width: min(var(--hero-copy-width), calc(100% - var(--gutter) * 2));
    max-width: none;
    margin-inline: auto;
    padding: 32px 0 36px;
  }
  .hero--image h1 {
    font-size: var(--fs-display);
  }
  .hero--image .hero-media img {
    object-position: center 28%;
  }
}
@media (max-width: 720px) {
  .hero-grid {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .hero--image,
  .hero--image.hero--interior {
    min-height: var(--hero-height);
  }
  .hero--image.hero--full {
    min-height: var(--hero-height);
  }
  .hero--image::after {
    display: none;
  }
  .hero--image .hero-grid {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;

    padding-bottom: 0;
  }
  .hero--image.hero--full .hero-grid {
    min-height: inherit;
  }
  .hero--image .hero-art {
    position: relative;
    inset: auto;
    z-index: 0;
    order: 1;
    width: 100%;
    height: var(--hero-image-height);
    min-height: 0;
    flex: 0 0 auto;
    aspect-ratio: auto;
    padding: 0;
    overflow: hidden;
  }
  .hero--image .hero-art::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    height: 16px;
    pointer-events: none;
    background: linear-gradient(
      180deg,
      rgba(27, 42, 74, 0) 0%,
      rgba(27, 42, 74, 0.03) 18%,
      rgba(27, 42, 74, 0.12) 38%,
      rgba(27, 42, 74, 0.32) 58%,
      rgba(27, 42, 74, 0.68) 78%,
      rgba(27, 42, 74, 1) 100%
    );
  }
  .hero--image .hero-media,
  .hero--image .hero-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .hero--image .hero-media img {
    object-fit: cover;
    object-position: var(--pos-m, center top);
  }
  .hero--image .hero-copy {
    position: relative;
    z-index: 2;
    order: 2;
    width: min(var(--shell), 100% - (var(--gutter) * 2));
    margin-inline: auto;
    max-width: none;
    padding: 26px 0 30px;
  }
  .hero--image h1 {
    margin-bottom: 12px;
    font-size: var(--fs-display);
    line-height: 1.06;
  }
  .hero--image .hero-lede {
    max-width: 35em;
    margin-bottom: 16px;
    font-size: var(--t-body);
    line-height: 1.46;
  }
  .hero--image .btn-row {
    gap: 10px 18px;
  }
  .hero--image .hero-copy .btn,
  .hero--image .hero-copy .btn-row > .btn {
    width: auto;
    padding: 11px 18px;
    font-size: var(--fs-body);
  }
  .alink {
    min-height: 44px;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  .inline-link {
    position: relative;
  }
  .inline-link::after {
    content: "";
    position: absolute;
    inset: -12px -5px;
  }
  .hero--home h1 {
    max-width: none;

    line-height: 1.12;
  }
  .hero--home .hero-line {
    white-space: nowrap;
  }
  .hero--image.hero--full.hero--home .hero-grid {
    min-height: 0;
  }
  .hero-lede {
    max-width: none;
  }
  .hero-copy .btn,
  .hero-copy .btn-row > .btn {
    width: 100%;
  }
  .sec--spine {
    padding-left: 0;
  }
  .sec--spine::before,
  .sec--spine > .sec-star {
    display: none;
  }
  .sec-star {
    left: -6px;
    width: 14px;
    height: 14px;
  }
  :root {
    --section-head-gap: 20px;
  }
  .sec-body > * + * {
    margin-top: 16px;
  }
  .people {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .role {
    padding: var(--card-pad);
    border-radius: var(--r);
  }
  .cta .btn {
    width: 100%;
  }
  .person-body {
    padding: 22px 22px 24px;
  }
  .people--compact {
    gap: 16px;
    container-type: inline-size;
  }
  .people--compact .person {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 16px;
    padding: 20px;
  }
  .people--compact .person-photo {
    grid-column: 1;
    grid-row: 1;
    width: 112px;
    align-self: start;
    border-radius: var(--r-sm);
    overflow: hidden;
  }
  .people--compact .person-body {
    display: contents;
  }
  .people--compact .person-heading {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
  }
  .people--compact .person-heading .label {
    gap: 6px;
    font-size: var(--fs-label);
    letter-spacing: 0.06em;
  }
  .people--compact .person-heading .tick {
    display: none;
  }
  .people--compact .person-body > .bio {
    grid-column: 1 / -1;
    margin: 0;
  }
  .tally-panel {
    border-radius: var(--r);
    padding: 0;
  }
  .cta {
    padding: 36px 0;
  }
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .footer-contact {
    grid-column: 1 / -1;
  }
  .footer-legal {
    margin-top: 24px;
  }
}
.nav-desktop > a.nav-cta,
.nav-desktop > a.nav-cta:focus-visible {
  color: var(--navy);
  background: var(--coral);
  border-color: var(--coral);
}
.nav-desktop > a.nav-cta:hover {
  color: var(--navy);
  background: var(--coral-light);
  border-color: var(--coral-light);
}
@container (max-width: 17rem) {
  .people--compact .person {
    grid-template-columns: minmax(0, 1fr);
  }
  .people--compact .person-heading {
    grid-column: 1;
    grid-row: 2;
  }
}
@container (max-width: 20rem) {
  .footer-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media print {
  .site-header,
  .nav-mobile,
  .cta,
  .skip-link,
  .footer-star {
    display: none;
  }
  body {
    background: #fff;
    color: #000;
    font-size: 11pt;
  }
  .band {
    padding: 18pt 0;
    background: #fff;
    color: #000;
  }
  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 8pt;
    color: #555;
  }
}
.hero {
  background: var(--navy);
}
.band--care-specialists {
  padding: 56px 0;
}
.specialists-intro {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
  margin-bottom: 28px;
}
.people--compact {
  align-items: start;
}
.people--compact .person {
  align-self: start;
  border-radius: var(--r);
  box-shadow: none;
}
.people--compact .person-photo img {
  aspect-ratio: 1 / 1;
}
.people--compact .person-body {
  padding: 19px 20px 20px;
}
.people--compact .bio {
  margin-top: 14px;
  padding-top: 0;
}
.people--compact .bio summary {
  padding-top: 13px;
}
.band--team-feature {
  background: var(--white);
  padding: 52px 0;
}
.team-feature {
  display: grid;
  grid-template-columns: minmax(240px, 0.56fr) minmax(0, 1.44fr);
  gap: clamp(30px, 5vw, 72px);
  align-items: center;
}
.team-feature-photo {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: var(--r-lg);
  background: var(--paper-2);
  box-shadow: none;
}
.team-feature-photo picture {
  display: block;
}
.team-video-launch {
  position: relative;

  color: var(--navy);
}
.team-video-launch::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    color-mix(in srgb, var(--navy-deep-75) 48%, transparent),
    color-mix(in srgb, var(--navy-deep-75) 6%, transparent) 42%,
    color-mix(in srgb, var(--navy-deep-75) 2%, transparent)
  );
  transition: opacity 0.2s ease;
}
.team-video-launch:hover::after {
  opacity: 0.86;
}
.team-video-launch:focus-visible {
  outline: 4px solid var(--coral);
  outline-offset: 4px;
}
.team-video-callout {
  position: absolute;
  z-index: 1;
  left: clamp(16px, 2.5vw, 28px);
  bottom: clamp(16px, 2.5vw, 28px);
  display: flex;
  max-width: calc(100% - clamp(32px, 5vw, 56px));
  align-items: center;

  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: var(--r);
  background: color-mix(in srgb, var(--navy-deep-75) 92%, transparent);
  color: #fff;
  box-shadow: none;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  transition:
    background-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.team-video-play {
  flex: 0 0 auto;
  display: grid;
  width: clamp(48px, 5vw, 60px);
  aspect-ratio: 1;
  place-items: center;
  border: 2px solid rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  background: var(--coral);
  color: var(--navy);
  box-shadow: 0 8px 22px color-mix(in srgb, var(--navy-deep-75) 28%, transparent);
}
.team-video-play svg {
  width: 28%;
  margin-left: 5%;
}
.team-video-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.team-video-copy strong {
  font-family: var(--nw-display);

  line-height: 1.15;
}
.team-video-copy > span {
  color: rgba(255, 255, 255, 0.78);
  font-size: var(--t-caption);
  font-weight: 650;
  line-height: 1.25;
}
.team-video-launch:hover .team-video-callout {
  background: color-mix(in srgb, var(--navy-deep-75) 97%, transparent);
  box-shadow: none;
  transform: translateY(-2px);
}
.team-feature-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: contain;
}
@media (max-width: 720px) {
  .team-feature {
    grid-template-columns: 1fr;
  }
  .specialists-intro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .band--care-specialists {
    padding: 36px 0;
  }
  .specialists-intro {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 24px;
  }
  .band--team-feature {
    padding: 44px 0;
  }
  .team-feature {
    gap: 26px;
  }
  .team-feature-photo {
    border-radius: var(--r);
  }
  .team-feature-photo img {
    aspect-ratio: 3 / 2;
    object-fit: contain;
  }
  .team-video-callout {
    left: 12px;
    bottom: 12px;
    max-width: calc(100% - 24px);
    border-radius: var(--r);
  }
  .team-video-play {
    width: 46px;
  }
  .team-video-copy > span {
    font-size: var(--t-caption);
  }
}
html:not(.js) .nav-mobile {
  display: none;
}
html:not(.js) .nav-desktop {
  display: flex;
  flex-wrap: wrap;
}
html:not(.js) .header-inner {
  height: auto;
  min-height: var(--header-height);
  flex-wrap: wrap;
  padding-block: 16px;
}
@media (max-width: 720px) {
  .hero--home .hero-copy {
    padding-block: 20px;
  }
  h1 {
    overflow-wrap: break-word;
  }
}
@media (forced-colors: active) {
  .btn,
  .nav-toggle,
  input {
    border: 1px solid ButtonText;
  }
  .nav-desktop > a[aria-current] {
    text-decoration: underline;
  }
  :focus-visible {
    outline: 3px solid Highlight;
  }
}
.cta-inner > * {
  min-width: 0;
}
.btn {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media (max-width: 720px) {
  .cta-inner {
    grid-template-columns: minmax(0, 1fr);
  }
}
.policy-index {
  position: sticky;
  top: calc(var(--header-height) + 20px);
  align-self: start;
}
.policy-index > summary {
  cursor: pointer;
  min-height: 44px;
  padding: 10px 0;
  font-weight: 700;
}
.policy-index .policy-contents {
  position: static;
}
@media (max-width: 1120px) {
  .policy-index {
    position: static;
  }
}
@media print {
  @page {
    margin: 16mm;
  }
  html,
  body {
    overflow: visible;
  }
  .shell,
  .hero-grid {
    width: 100%;
    max-width: none;
  }
  .hero {
    min-height: 0;
    background: white;
    color: black;
  }
  .hero-grid,
  .hero-copy {
    display: block;
    min-height: 0;
    padding: 0;
  }
  .hero h1,
  .hero p,
  .hero a,
  .site-footer,
  .site-footer p,
  .site-footer h2,
  .site-footer a {
    color: black;
  }
  .hero-art,
  .hero .btn-row,
  .policy-index,
  .footer-logo,
  .footer-social,
  .job-jump,
  .team-video-play {
    display: none;
  }
  .hero h1 {
    font-size: 26pt;
    max-width: none;
  }
  .hero-lede {
    font-size: 11pt;
    max-width: none;
  }
  .band,
  .site-footer {
    padding: 16pt 0;
    background: white;
  }
  .footer-grid,
  .cta-inner {
    display: block;
  }
  h1,
  h2,
  h3,
  h4,
  summary {
    break-after: avoid;
  }
  p,
  li {
    orphans: 3;
    widows: 3;
  }
  .job-listing {
    break-inside: auto;
    overflow: visible;
  }
  .footer-col {
    display: none;
  }
  .footer-brand p,
  .footer-legal {
    font-size: 9pt;
  }
}
html:not(.js) iframe[data-tally-src] {
  display: none;
}
.hero {
  min-height: var(--hero-height);
}
@media (min-width: 721px) and (max-width: 1120px) {
  :root {
    --hero-height: 48rem;
    --hero-image-height: clamp(240px, 32vw, 300px);
  }
  .hero--image .hero-art {
    height: var(--hero-image-height);
  }
  .hero--image .hero-grid {
    min-height: var(--hero-height);
  }
  .hero--image.hero--home .hero-grid {
    min-height: 0;
  }
  .hero--image .hero-copy {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media (max-width: 720px) {
  :root {
    --hero-height: max(40rem, calc(61rem - 85vw), calc(46vw + 27rem));
    --hero-image-height: max(160px, 46vw);
  }
  .hero--image .hero-grid {
    min-height: var(--hero-height);
  }
  .hero--image.hero--home .hero-grid {
    min-height: 0;
  }
  .hero--image .hero-copy {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
#care-pricing {
  border-top: 0;
}
#navigation-pricing {
  border-top: 1px solid var(--rule);
}
:is(#care-pricing, #navigation-pricing) :is(h2, h3, .label, .plans-name, .plans-rate) {
  color: var(--navy);
}
main :where(section, article, div, aside, nav, figure, details) {
  min-width: 0;
}
main :where(h1, h2, h3, h4, p, li, a, summary) {
  overflow-wrap: anywhere;
}
.sec-head > *,
.specialists-intro > *,
.split > * {
  min-width: 0;
}
:root {
  --card-pad: 22px;
}
.job-listing {
  padding: 32px;
}
@media (max-width: 720px) {
  :root {
    --card-pad: 18px;
    --t-h2: 1.75rem;
  }
  .job-listing {
    padding: var(--card-pad);
  }
  .sec-head,
  .sec-head--solo,
  .specialists-intro {
    grid-template-columns: minmax(0, 1fr);
  }
  .hero--home .hero-copy {
    width: calc(100% - 32px);
  }
  .hero--home h1 {
    font-size: clamp(1.125rem, 6.55vw, 1.75rem);
  }
  body:has(.hero--home) main h2 {
    font-size: var(--fs-h2);
  }
}
:root {
  --opening-home: 85svh;
  --opening-interior: 60svh;
  --opening-compact: 40svh;
}
.hero.hero--image {
  --opening-height: var(--opening-interior);
  height: calc(var(--opening-height) - var(--header-height));
  min-height: 0;
}
.hero.hero--home {
  --opening-height: var(--opening-home);
  height: auto;
  min-height: calc(var(--opening-height) - var(--header-height));
  grid-template-rows: minmax(min-content, 1fr) auto;
}
.hero.hero--image .hero-grid {
  height: 100%;
  min-height: 0;
}
.hero.hero--home .hero-grid {
  height: auto;
}
.hero.hero--image .hero-copy {
  padding-block: 24px;
}
.hero h1 {
  margin-bottom: 12px;
}
.hero .hero-lede {
  margin-bottom: 16px;
}
.hero .hero-copy {
  min-height: 0;
  max-height: 100%;
  overflow-y: auto;
  justify-content: safe center;
}
@media (max-width: 1120px) {
  :root {
    --opening-interior: 80svh;
  }
  .hero.hero--image .hero-grid {
    display: flex;
    flex-direction: column;
  }
  .hero.hero--image .hero-copy {
    flex: 0 1 auto;
    padding-block: 20px;
  }
  .hero.hero--image .hero-art {
    height: auto;
    min-height: 0;
    flex: 1 1 0;
  }
  .hero.hero--image .hero-media,
  .hero.hero--image .hero-media img {
    position: absolute;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
  }
  .hero.hero--image .hero-media img {
    object-fit: cover;
  }
}
@media (min-width: 1121px) and (max-height: 800px) {
  .hero.hero--image .hero-copy {
    padding-block: 16px;
  }
}
@media (min-width: 1121px) {
  .hero.hero--image {
    --hero-copy-start: clamp(16px, calc(40svh - 18rem), 160px);
  }
  .hero.hero--image .hero-grid {
    align-items: flex-start;
  }
  .hero.hero--image .hero-copy {
    padding-top: var(--hero-copy-start);
    padding-bottom: 16px;
  }
}
.hero.hero--home > .hero-art {
  position: absolute;
  inset: 0;
  height: 100%;
  min-height: 0;
}
.hero.hero--home::after {
  display: none;
}
.hero.hero--home .hero-grid {
  position: relative;
  z-index: 1;
  background: var(--hero-text-fade);
}
.hero.hero--home .home-service-area {
  color: var(--coral-light);
  line-height: 1.3;
  margin: 0 0 8px;
  text-align: left;
}
#team,
#caregiver-standards,
#caregiver-insurance {
  scroll-margin-top: 100px;
}
@media (max-width: 720px) {
  .hero.hero--home .home-service-area {
    font-size: var(--fs-label);
    line-height: 1.2;
  }
}
.hero.hero--home .hero-copy {
  container-type: inline-size;
  max-height: none;
  overflow: visible;
}
.hero.hero--home h1 {
  font-size: min(var(--t-h1), 7.65cqi);
}
.hero.hero--home .hero-line {
  display: block;
}
@media (max-width: 1120px) {
  .hero.hero--home {
    --opening-home: 90svh;
  }
  .hero.hero--home .hero-grid {
    width: 100%;
    justify-content: flex-end;
    isolation: isolate;
    overflow: hidden;
    background: var(--navy);
  }
  .hero.hero--home .hero-copy {
    position: relative;
    z-index: 2;
    flex: 0 1 auto;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 20px max(16px, calc((100% - var(--hero-copy-width)) / 2));
    background: transparent;
    text-align: left;
    align-items: stretch;
  }
  .hero.hero--home .hero-copy .btn-row {
    justify-content: flex-start;
  }
  .hero.hero--home > .hero-art {
    display: none;
  }
}
@media (max-width: 720px) {
  .hero.hero--home {
    min-height: 0;
  }
  .hero.hero--home .hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: clamp(160px, 25svh, 230px) auto;
    align-items: stretch;
  }
  .hero.hero--home .hero-copy {
    grid-row: 2;
    order: 0;
    display: block;
    padding: 18px 16px 20px;
    max-height: none;
    overflow: visible;
    background: linear-gradient(
      180deg,
      rgba(27, 42, 74, 0.86),
      rgba(27, 42, 74, 0.88) 42%,
      rgba(27, 42, 74, 0.8)
    );
  }
  .hero.hero--home .hero-copy::before {
    content: "";
    position: absolute;
    inset: auto 0 100%;
    height: 72px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(27, 42, 74, 0), rgba(27, 42, 74, 0.86));
  }
  .hero.hero--home h1 {
    font-size: min(clamp(1.125rem, 6.55vw, 1.75rem), 7.65cqi);
  }
  .hero.hero--home .hero-lede {
    font-size: var(--fs-body);
  }
}
@media (max-width: 380px) {
  .hero.hero--image .hero-copy {
    padding-block: 16px;
  }
  .hero.hero--interior h1 {
    font-size: var(--fs-h2);
  }
  .hero.hero--image .hero-lede {
    font-size: var(--fs-body);
    line-height: 1.45;
  }
}
@media print {
  .hero.hero--image {
    height: auto;
  }
  .hero .hero-copy {
    max-height: none;
    overflow: visible;
  }
}
@media (max-width: 1120px) {
  .form-layout--contact .tally-panel {
    min-width: 0;
  }
}
.hero.hero--home .family-underline {
  position: relative;
  display: inline-block;
  padding-bottom: 0.12em;
}
.hero.hero--home .family-underline::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M3 9 Q200 0 397 9' fill='none' stroke='%23E8998D' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")
    center / 100% 100% no-repeat;
}
@media (max-width: 720px) {
  .hero.hero--home .family-underline::after {
    height: 5px;
  }
}
.hero.hero--home .home-intro {
  margin: 12px 0 0;
  font-size: var(--t-lede);
  line-height: 1.5;
  font-weight: 400;
}
@media (max-width: 720px) {
  .hero.hero--home .home-intro {
    font-size: var(--t-body);
    line-height: 1.46;
  }
}
.hero.hero--home h1 {
  margin-bottom: 0;
}
.hero.hero--home h1 {
  font-size: var(--t-h1);
  line-height: var(--lh-tight);
  letter-spacing: -0.035em;
}
.band--team-feature + .band--care-specialists {
  padding-top: 12px;
}
@media (min-width: 1121px) {
  .hero.hero--home {
    --opening-home: 90svh;
  }
  .hero.hero--home .hero-grid {
    align-items: center;
  }
  .hero.hero--home .hero-copy {
    padding-block: 36px;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .hero.hero--home h1 {
    font-size: var(--fs-display);
  }
}
@media (max-width: 720px) {
  .hero.hero--home h1 {
    font-size: var(--fs-display);
  }
}
@media (max-width: 380px) {
  .hero.hero--home .home-intro {
    font-size: var(--fs-body);
    line-height: 1.45;
  }
  .hero.hero--home .home-service-area {
    font-size: var(--fs-label);
  }
}
.hero.hero--home .hero-line {
  white-space: normal;
  overflow-wrap: normal;
}
.hero.hero--home .home-intro {
  max-width: 38rem;
}
@font-face {
  font-family: "Trust Serif";
  src: url("fonts/trust-serif-regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
#sms-terms {
  scroll-margin-top: 110px;
}
#sms-terms h3 {
  font-size: var(--fs-body);
  margin: 24px 0 8px;
}
#sms-terms a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
#sms-terms .policy-date {
  margin-bottom: 16px;
}
.detail-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-height: 44px;
  list-style: none;
  cursor: pointer;
}
.detail-toggle::-webkit-details-marker {
  display: none;
}
.detail-toggle::marker {
  content: "";
}
.detail-toggle .detail-toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: var(--fs-lede);
  line-height: 1;
  font-weight: 400;
  color: var(--navy);
}
details[open] > .detail-toggle .detail-toggle-icon {
  transform: rotate(45deg);
}
.detail-toggle:focus-visible {
  outline: 3px solid var(--respite-ink);
  outline-offset: 5px;
}
.site-header {
  background: var(--ink-deep);
}
.site-header::after,
.site-footer::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: color-mix(in srgb, var(--respite-deep-30) 42%, transparent);
  pointer-events: none;
  z-index: 3;
}
.site-header::after {
  bottom: 0;
}
.site-footer::before {
  top: 0;
}
.site-header .header-inner {
  height: 80px;
  gap: 24px;
}
.site-header .brand img {
  height: 34px;
  width: auto;
}
.site-header .nav-desktop {
  gap: 2px;
}
.site-header .nav-desktop > a {
  font-size: var(--fs-small);
  line-height: 1.4;
  padding: 12px 10px;
}
.site-header .nav-desktop > .nav-cta {
  font-size: var(--fs-small);
  line-height: 1.4;
  padding: 12px 18px;
  border-radius: var(--r-sm);
  margin-left: 12px;
}
.site-header .nav-desktop > a[href="/care-services/"][aria-current]:after {
  background: var(--periwinkle);
}
.site-header .nav-desktop > a[href="/navigation-services/"][aria-current]:after {
  background: var(--sage);
}
.site-header .nav-panel {
  background: var(--ink-deep);
  max-height: calc(100dvh - 80px);
}
.site-header .nav-panel-inner > a {
  font-size: var(--fs-body);
  line-height: 1.4;
  padding: 14px 0;
}
.site-header .nav-panel-inner > a.btn {
  padding: 14px 20px;
  border-radius: var(--r-sm);
  font-size: var(--fs-body);
}
.site-header .nav-panel-inner > a.nav-secondary {
  font-size: var(--fs-small);
}
.site-header a:focus-visible,
.site-header button:focus-visible {
  outline: 2px solid white;
  outline-offset: 4px;
}
.site-footer {
  background: var(--ink-deep);
  padding: 40px 0 24px;
}
.site-footer .footer-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.8fr) minmax(0, 0.8fr) minmax(0, 1fr);
  gap: 36px;
}
.site-footer .footer-home {
  display: inline-block;
}
.site-footer .footer-logo {
  height: 28px;
  width: auto;
  display: block;
}
.site-footer .footer-col h2 {
  font-family: var(--nw-text);
  font-size: var(--fs-small);
  line-height: 1.4;
  letter-spacing: 0.07em;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--slate-light-70);
  margin: 0 0 12px;
  text-wrap: normal;
}
.site-footer .footer-brand p {
  font-size: var(--fs-body);
  line-height: 1.5;
  color: var(--slate-light-50);
  margin: 16px 0 0;
  max-width: 35ch;
  text-wrap: pretty;
}
.site-footer .footer-brand .footer-region,
.site-footer .footer-brand .footer-pay {
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--slate-light-70);
  margin-top: 12px;
}
.site-footer .footer-col > a {
  font-size: var(--fs-body);
  line-height: 1.5;
  color: var(--slate-light-50);
  padding: 5px 0;
  text-decoration: none;
}
.site-footer .footer-col p {
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--slate-light-70);
  margin: 16px 0 0;
}
.site-footer a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  color: white;
}
.site-footer .footer-social {
  margin-top: 16px;
  gap: 12px;
}
.site-footer .footer-social a {
  width: 40px;
  height: 40px;
}
.site-footer .footer-legal {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-top: 32px;
  padding-top: 20px;
}
.site-footer .footer-policy-links {
  display: flex;
  gap: 12px 24px;
  flex-wrap: wrap;
}
.site-footer .footer-policy-links a {
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--slate-light-70);
  text-decoration: none;
}
.site-footer .footer-policy-links a:hover {
  text-decoration: underline;
}
.site-footer .footer-bottom {
  margin: 0;
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--slate-light-70);
  width: auto;
  max-width: none;
  text-wrap: normal;
}
.site-footer a:focus-visible {
  outline: 2px solid white;
  outline-offset: 4px;
  border-radius: var(--r-sm);
}
@media (max-width: 1120px) {
  .js .site-header .nav-desktop {
    display: none;
  }
  .js .site-header .nav-mobile {
    display: block;
  }
}
@media (max-width: 1120px) {
  .site-footer .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
  }
  .site-footer .footer-legal {
    align-items: start;
    flex-direction: column;
  }
}
@media (max-width: 720px) {
  .site-header .header-inner {
    height: 72px;
  }
  .site-header .brand img {
    height: 30px;
  }
  .site-header .nav-panel {
    max-height: calc(100dvh - 72px);
  }
  .site-footer .footer-brand {
    grid-column: 1 / -1;
  }
  .site-footer .footer-contact {
    grid-column: 1 / -1;
  }
}
@media print {
  .site-header {
    position: static;
  }
  .site-footer,
  .site-footer p,
  .site-footer h2,
  .site-footer a {
    background: white;
    color: black;
  }
  .site-footer .footer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .site-footer .footer-star {
    display: none;
  }
}
:root {
  --header-height: 80px;
}
@media (max-width: 720px) {
  :root {
    --header-height: 72px;
  }
}
:root {
  --nw-line: var(--slate-light-30);
  --nw-line-care: var(--respite-deep-30);
  --nw-line-nav: var(--sage-30);
  --nw-care-ink: var(--respite-deep-shade-40);
  --nw-nav-ink: var(--navigation-deep-shade-60);
  --nw-coral-ink: var(--coral-shade-40);
  --nw-coral-100: var(--coral-10);
  --nw-topo:
    linear-gradient(rgba(27, 42, 74, 0.3), rgba(27, 42, 74, 0.3)),
    url("images/home-2026/hero-topographic-no-star.webp") center / cover no-repeat #1b2a4a;
  --nw-navigation: var(--navigation-deep-10);
  --nw-body: var(--slate);
  --nw-shell: 1160px;
  --nw-gutter: 48px;
  --nw-space-1: 8px;
  --nw-space-2: 12px;
  --nw-space-3: 16px;
  --nw-space-4: 24px;
  --nw-space-5: 32px;
  --nw-space-6: 48px;
  --nw-space-7: 64px;
  --nw-radius-card: var(--r);
  --nw-radius-item: 16px;
  --nw-radius-control: 8px;
  --nw-display: "Wix Madefor Display", "Avenir Next", "Segoe UI", sans-serif;
  --nw-text: "Albert Sans", "Avenir Next", "Segoe UI", sans-serif;
}
.nw-shell {
  width: min(var(--nw-shell), calc(100% - 2 * var(--nw-gutter)));
  margin-inline: auto;
}
.nw-section {
  padding-block: var(--nw-space-6);
  background: var(--paper);
  color: var(--navy);
}
.nw-section--white {
  background: var(--white);
}
.nw-section--care {
  background: var(--panel-respite);
}
.nw-section--navigation {
  background: var(--nw-navigation);
}
.nw-section :is(h1, h2, h3, h4) {
  font-family: var(--nw-display);
  color: inherit;
}
.nw-section :is(p, li, dd) {
  font-family: var(--nw-text);
}
.nw-heading {
  margin: 0;
  font-size: var(--fs-h2);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.03em;
}
.nw-lede {
  margin: var(--nw-space-3) 0 0;
  font-size: var(--fs-body);
  line-height: 1.5;
  color: var(--nw-body);
}
.nw-art {
  display: block;
  margin: 0;
  pointer-events: none;
}
@media (max-width: 1120px) {
  .interior-page .interior-hero-primary,
  .interior-page .interior-hero-secondary {
    display: contents;
  }
}
.home-page .team-video-callout {
  padding: 18px;
}
.nw-supporting-note {
  margin: 20px 0 0;
  padding: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 1120px) {
  .nw-supporting-note {
    font-size: var(--fs-body);
  }
  .home-page .team-heading {
    margin-bottom: 24px;
  }
}
.nw-day-tabs {
  display: none;
}
@media (max-width: 1120px) {
  .js .site-header .header-inner {
    gap: 12px;
  }
}
@media (max-width: 1120px) {
  html:not(.js) .site-header .nav-book {
    display: inline-flex;
    margin-left: auto;
    padding: 10px 16px;
    border-radius: var(--r-sm);
  }
}
@media (max-width: 380px) {
  .site-header .nav-toggle {
    padding: 9px 12px;
  }
}
@media (max-width: 720px) {
  .care-page .nw-opening-art > .nw-moments {
    margin-top: 8px;
  }
}
.quote-treatment {
  --quote-accent: var(--respite-deep-70);
  --quote-wash: var(--periwinkle-10);
  --quote-rule: var(--respite-deep-20);
  position: relative;
  box-sizing: border-box;
  overflow: visible;
  padding: 24px 28px 23px 73px;
  border: 1px solid var(--quote-rule) !important;
  border-radius: var(--r);
  background: var(--quote-wash);
  box-shadow: none;
}
.quote-treatment::before {
  content: "“";
  position: absolute;
  top: 5px;
  left: 18px;
  color: var(--quote-accent);
  font:
    700 5.4rem/0.9 Georgia,
    serif;
  pointer-events: none;
}
.home-page .specialists-panel .specialist-voice.quote-treatment {
  display: block;
  margin: 18px 0 20px;
  padding: 20px 17px 20px 58px;
  min-height: 0;
  font: 650 var(--fs-body)/1.5 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
.home-page .specialists-panel .specialist-voice.quote-treatment::before {
  top: 6px;
  left: 14px;
  font-size: 4.3rem;
}
@media (max-width: 720px) {
  .home-page .specialists-panel .specialist-voice.quote-treatment {
    padding: 17px 15px 18px 52px;
    font-size: var(--fs-body);
  }
  .home-page .specialists-panel .specialist-voice.quote-treatment::before {
    left: 12px;
    font-size: 3.8rem;
  }
}
.home-page .day-state dd {
  font-size: var(--fs-body);
  line-height: 1.5;
}
.home-page .day-state dt {
  font-size: var(--fs-small);
}
@media (max-width: 720px) {
  .home-page .day-state dd {
    font-size: var(--fs-body);
    line-height: 1.5;
  }
  .interior-page .nw-hero-compact {
    text-align: center;
  }
  .interior-page .nw-hero-compact h1,
  .interior-page .nw-hero-compact .page-lede,
  .interior-page .nw-hero-compact .nw-note {
    margin-inline: auto;
  }
}
@media (min-width: 721px) {
  .pricing-page .nw-head .nw-lede {
    margin-top: 14px;
  }
  .pricing-page .pricing-intro {
    display: block;
    position: relative;
    min-height: 180px;
    padding-right: 330px;
  }
  .pricing-page .pricing-intro .pricing-painting {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 290px;
    height: 180px;
  }
  .home-page .cta-action > p {
    display: block;
    margin-top: 12px;
  }
  .about-page .nw-recog-item img {
    height: 70px;
    max-width: 100%;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .pricing-page .pricing-intro {
    padding-right: 230px;
  }
  .pricing-page .pricing-intro .pricing-painting {
    width: 200px;
  }
}
@media (max-width: 1120px) {
  .home-page .specialists-panel .people.people--compact {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    gap: 12px;
  }
  .home-page .specialists-panel .person:has(> .mobile-person) {
    display: block;
    min-height: 0;
    padding: 0;
    border: 1px solid var(--nw-line);
    border-radius: var(--r);
    grid-row: auto;
  }
  .home-page .specialists-panel .person:has(> .mobile-person)::before {
    display: none;
  }
  .home-page .specialists-panel .person > .specialist-voice.quote-treatment {
    margin: 18px 18px 20px;
  }
}
.home-service-body {
  grid-column: 1/-1;
  grid-row: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 36px;
  align-items: start;
  padding: 0;
}
.home-service-body--care {
  grid-template-areas: "life familiar" "support price" "action price";
}
.home-care-life {
  grid-area: life;
}
.home-care-support {
  grid-area: support;
}
.home-care-pricing {
  grid-area: price;
}
.home-care-actions {
  grid-area: action;
  align-self: end;
}
.home-service-body h4 {
  margin: 0 0 10px;
  font: 700 var(--fs-body)/1.35 var(--nw-display);
  color: var(--navy);
}
.home-service-body p {
  margin: 0;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--slate);
  text-wrap: pretty;
}
.home-service-body p + p {
  margin-top: 12px;
}
.home-care-pricing {
  padding-left: 28px;
  border-left: 1px solid var(--respite-deep-20);
}
.home-service-actions {
  display: flex;
  align-items: center;
  gap: 12px 18px;
  flex-wrap: wrap;
}
.home-service-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 12px 16px;
  background: var(--periwinkle);
  border-radius: var(--r-sm);
  color: var(--navy);
  font: 700 var(--fs-small)/1.35 var(--nw-text);
  text-decoration: none;
}
.home-service-button:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 4px;
}
.home-service-button:hover {
  filter: brightness(0.95);
}
.home-service-body--navigation {
  grid-template-areas: "scope prose" "price action";
}
.home-navigation-copy {
  grid-area: prose;
  padding-left: 28px;
  border-left: 1px solid var(--respite-deep-20);
}
.home-navigation-scope {
  grid-area: scope;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.home-navigation-scope h4 {
  font-size: var(--fs-body);
}
.home-navigation-scope ul {
  padding-left: 17px;
  margin: 0;
  font: 400 var(--fs-small)/1.6 var(--nw-text);
  color: var(--slate);
}
.home-navigation-scope li::marker {
  color: var(--navigation-deep);
}
.home-navigation-pricing {
  grid-area: price;
  background: var(--navigation-deep-10);
  padding: 18px 20px;
  border-radius: var(--r);
  align-self: stretch;
  display: flex;
  align-items: center;
}
.home-navigation-pricing strong {
  display: block;
  font: 800 var(--fs-h3)/1.25 var(--nw-display);
  color: var(--navy);
}
.home-navigation-pricing span {
  display: block;
  margin-top: 6px;
  font-size: var(--fs-small);
  line-height: 1.45;
}
.home-navigation-actions {
  grid-area: action;
  align-self: end;
  padding-left: 28px;
  border-left: 1px solid var(--respite-deep-20);
}
.home-navigation-actions .home-service-button {
  background: var(--navigation-deep-shade-80);
  color: #fff;
}
.home-service-body--care,
.home-service-body--navigation {
  grid-template-areas: none;
}
.home-care-price-card {
  padding: 18px 20px;
  background: var(--respite-deep-10);
  border: 1px solid var(--respite-deep-20);
  border-radius: var(--r);
}
.home-care-price-card h4 {
  font: 800 var(--fs-h3)/1.25 var(--nw-display);
  margin: 0 0 6px;
}
.home-care-price-card p {
  font-size: var(--fs-small);
  line-height: 1.45;
}
.home-page .possibilities-intro {
  display: block;
}
.home-page .possibilities-copy {
  display: block;
  padding: 0;
  margin-bottom: 28px;
}
.home-page .possibilities-copy h2 {
  margin: 0 0 14px;
}
.home-page .ordinary-thursday .service-chip {
  color: var(--respite-deep-shade-40);
  border-color: var(--respite-deep-50);
  background: #fff;
}
.home-page .ordinary-thursday .service-chip--navigation {
  color: var(--navigation-deep-shade-60);
  border-color: var(--sage-50);
  background: #fff;
}
.home-page .thursday-action .btn {
  background: var(--coral);
  border-color: var(--coral);
  color: var(--navy);
}
.person-identity .person-facts,
.mobile-person-label .person-facts {
  font-size: var(--fs-small);
  font-weight: 500;
  line-height: 1.45;
  color: var(--nw-body);
  margin: 8px 0 0;
  overflow-wrap: anywhere;
}
.mobile-person-label .person-facts {
  display: block;
}
.home-price-link {
  color: inherit;
  text-decoration: none;
}
.home-price-link:hover,
.home-price-link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.footer-contact a {
  overflow-wrap: anywhere;
}
#care-specialists .mobile-person > summary > img {
  align-self: start;
}
@media print {
  .mobile-person:not([open]) > *:not(summary) {
    display: block;
  }
}
.cta-inner {
  flex-wrap: wrap;
}
.site-footer .footer-region a {
  color: inherit;
  text-decoration: none;
}
.site-footer .footer-region a:hover {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
/* ── Grouped menu: desktop dropdowns and phone panel headings ── */
.site-header .nav-group {
  position: relative;
}
.site-header .nav-group-btn {
  all: unset;
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 10px;
  border-radius: var(--r-sm);
  color: rgba(255, 255, 255, 0.82);
  font-family: var(--nw-text);
  font-size: var(--fs-small);
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
  cursor: pointer;
  transition:
    color 0.16s ease,
    background 0.16s ease;
}
.site-header .nav-group-btn:hover,
.site-header .nav-group.is-open > .nav-group-btn {
  color: #fff;
  background: rgba(255, 255, 255, 0.09);
}
.site-header .nav-chevron {
  width: 12px;
  height: 12px;
  transition: transform 0.16s ease;
}
.site-header .nav-group.is-open .nav-chevron {
  transform: rotate(180deg);
}
.site-header .nav-group:has(a[aria-current="page"]) > .nav-group-btn {
  color: #fff;
  font-weight: 700;
}
.site-header .nav-group:has(a[aria-current="page"]) > .nav-group-btn::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 28px;
  bottom: 1px;
  height: 3px;
  border-radius: var(--r-sm);
  background: var(--coral);
}
.site-header .nav-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 30;
  min-width: 220px;
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--r);
  background: var(--ink-deep);
  box-shadow: 0 24px 40px -20px color-mix(in srgb, var(--navy-deep-50) 85%, transparent);
}
.site-header .nav-group.is-open > .nav-menu {
  display: grid;
}
@media (hover: hover) {
  .site-header .nav-group:hover > .nav-menu {
    display: grid;
  }
}
.site-header .nav-menu a {
  display: block;
  padding: 10px 12px;
  border-radius: var(--r-sm);
  color: rgba(255, 255, 255, 0.88);
  font-size: var(--fs-small);
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  white-space: nowrap;
}
.site-header .nav-menu a:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
}
.site-header .nav-menu a[aria-current="page"] {
  color: #fff;
  font-weight: 700;
  box-shadow: inset 3px 0 0 var(--coral);
}
.site-header .nav-panel-heading {
  margin: 14px 0 0;
  padding: 0 0 2px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--periwinkle);
}
.site-header .nav-panel-inner > a {
  padding: 12px 0;
}
.site-header .nav-panel-inner > a.btn {
  margin-top: 22px;
}
.site-header .nav-panel-inner {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 18px;
}
.site-header .nav-panel-inner > .nav-panel-heading,
.site-header .nav-panel-inner > a.btn {
  grid-column: 1 / -1;
}
/* Top-level Pricing link in the desktop header (matches .nav-group-btn) */
.site-header .nav-link {
  display: flex;
  align-items: center;
  padding: 12px 10px;
  border-radius: var(--r-sm);
  color: rgba(255, 255, 255, 0.82);
  font: 600 var(--fs-small)/1.4 var(--nw-text);
  white-space: nowrap;
  text-decoration: none;
  transition: color 0.16s ease, background 0.16s ease;
}
.site-header .nav-link:hover { color: #fff; background: rgba(255, 255, 255, 0.09); }
.site-header .nav-link[aria-current="page"] { color: #fff; font-weight: 700; }
.site-header .nav-link:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

/* ===== 2 Home page ===== */
.home-page {
  background: var(--paper);
}
.home-page main {
  background: var(--paper);
}
.home-page main > .band {
  background: transparent;
  border: 0;
  padding: 24px 0;
}
.home-page main > .band > .shell {
  width: min(var(--shell), calc(100% - var(--gutter) * 2));
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.home-page .team-feature--prepared {
  display: grid;
  gap: 48px;
  align-items: stretch;
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
:where(body.home-page) .team-feature--prepared > * {
  min-width: 0;
}
.home-page .team-feature--prepared .team-feature-photo {
  border: 0;
  border-radius: var(--r-lg);
  width: 100%;
  height: auto;
  overflow: hidden;
  background: var(--navy);
}
:where(body.home-page) .team-feature--prepared .team-video-launch,
:where(body.home-page) .team-feature--prepared picture {
  display: block;
  height: auto;
}
.home-page .team-feature--prepared .team-feature-photo img {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center;
}
:where(body.home-page) .team-prepared-copy {
  padding: 0;
}
:where(body.home-page) .preparation-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
:where(body.home-page) .preparation-point > svg {
  width: 32px;
  height: 32px;
  display: block;
  color: var(--navy);
  margin-bottom: 14px;
}
:where(body.home-page) .preparation-point h3 {
  margin: 0 0 10px;
}
:where(body.home-page) .preparation-point p {
  color: var(--slate);
}
.home-page .team-video-callout {
  left: 18px;
  bottom: 18px;
  max-width: calc(100% - 36px);
  gap: 10px;
}
.home-page .team-video-copy strong {
  font-size: var(--fs-body);
}
.home-page .team-video-copy > span {
  font-size: var(--fs-label);
}
.home-page .team-video-play {
  width: 48px;
}
@media (max-width: 1120px) {
  .home-page .team-feature--prepared .team-feature-photo img {
    min-height: 0;
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
  }
  :where(body.home-page) .team-prepared-copy {
    padding: 0;
  }
  :where(body.home-page) .preparation-points {
    gap: 26px;
  }
}
@media (max-width: 720px) {
  .home-page main > .band > .shell {
    width: calc(100% - 36px);
    padding: 0;
  }
  .home-page .band--team-feature > .shell {
    padding: 0;
  }
  :where(body.home-page) .team-prepared-copy {
    padding: 0;
  }
  :where(body.home-page) .preparation-points {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  :where(body.home-page) .preparation-point {
    display: grid;
    gap: 0 14px;
  }
  :where(body.home-page) .preparation-point > svg {
    grid-column: 1;
    grid-row: 1 / span 2;
    margin: 0;
  }
  :where(body.home-page) .preparation-point h3,
:where(body.home-page) .preparation-point p {
    grid-column: 2;
  }
  :where(body.home-page) .preparation-point h3 {
    margin-bottom: 6px;
  }
}
@media (min-width: 721px) {
  :where(body.home-page) .preparation-point h3 {
    min-height: 2.5em;
  }
}
.home-page .people .person {
  background: #fff;
}
.home-page .people--compact .person {
  display: grid;
}
.home-page .people--compact .person-photo {
  grid-column: 1;
  align-self: start;
  overflow: hidden;
}
.home-page .people--compact .person-photo img {
  aspect-ratio: 1;
}
.home-page .people--compact .person-heading {
  grid-column: 2;
  grid-row: 1;
}
.home-page .people--compact .person-heading .label {
  margin-bottom: 6px;
}
.home-page .people--compact .person-heading .tick {
  display: none;
}
.home-page .people--compact .person-heading h3 {
  margin: 0;
}
.home-page .people--compact .bio {
  grid-column: 1 / -1;
  margin: 2px 0 0;
}
:where(body.home-page) .possibilities-panel {
  background: #fff;
  border: 1px solid var(--rule);
  border-radius: var(--r-lg);
  overflow: hidden;
}
:where(body.home-page) .possibilities-intro {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
}
:where(body.home-page) .possibilities-copy {
  padding: 36px;
  align-self: center;
}
:where(body.home-page) .possibilities-copy h2 {
  letter-spacing: -0.035em;
  margin: 0 0 24px;
}
:where(body.home-page) .possibilities-copy .possibilities-payoff {
  color: var(--navy);
  font-weight: 650;
  margin-top: 22px;
}
@media (max-width: 720px) {
  :where(body.home-page) .possibilities-intro {
    grid-template-columns: 1fr;
  }
  :where(body.home-page) .possibilities-copy {
    padding: 28px;
  }
}
.home-page .home-intro > span {
  display: block;
  max-width: var(--home-intro-measure);
  text-wrap: balance;
}
.home-page .team-feature--prepared {
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
}
.home-page .team-prepared-copy {
  padding: 0;
}
.home-page .preparation-points {
  grid-template-columns: 1fr;
}
.home-page .preparation-point {
  display: grid;
  gap: 0 16px;
}
.home-page .preparation-point > svg {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 6px;
  border-radius: var(--r-sm);
  background: var(--panel-respite);
  box-sizing: border-box;
}
.home-page .preparation-point h3 {
  grid-column: 2;
  min-height: 0;
  margin: 0 0 5px;
}
.home-page .preparation-point p {
  grid-column: 2;
  margin: 0;
}
.home-page .specialists-intro {
  display: block;
  margin-bottom: 28px;
}
.home-page .people--compact {
  align-items: start;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.home-page .people--compact .person {
  grid-template-columns: 76px minmax(0, 1fr);
  grid-template-rows: 76px minmax(90px, auto) auto;
  padding: 24px;
  background: var(--panel-respite);
  gap: 20px 16px;
  border-radius: var(--r);
}
.home-page .people--compact .person-photo {
  grid-row: 1;
  width: 76px;
  border-radius: var(--r);
}
.home-page .people--compact .person-heading {
  align-self: center;
}
.home-page .people--compact .bio {
  grid-row: 3;
  border-top: 1px solid rgba(27, 42, 74, 0.15);
  padding-top: 16px;
}
.home-page .people--compact .bio summary {
  display: flex;
  justify-content: flex-start;
  gap: 12px;
}
.home-page .specialists-more {
  margin: 24px 0 0;
}
.home-page .cta {
  margin-top: 24px;
}
.home-page .cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 50px;
  align-items: center;
}
.home-page .cta h2 {
  max-width: 18em;
}
.home-page .cta-action {
  text-align: center;
}
.home-page .cta-action .btn {
  background: var(--coral);
  color: var(--navy);
  white-space: nowrap;
}
.home-page .cta-action > p {
  font-size: var(--fs-small);
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 1120px) {
  .home-page .team-feature--prepared {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .home-page .people--compact .person {
    padding: 20px;
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-rows: 64px minmax(120px, auto) auto;
    gap: 18px 12px;
  }
  .home-page .people--compact .person-photo {
    width: 64px;
  }
}
@media (max-width: 720px) {
  .home-page .people--compact {
    grid-template-columns: 1fr;
  }
  .home-page .people--compact .person {
    grid-template-columns: 76px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
  }
  .home-page .people--compact .person-photo {
    width: 76px;
  }
  .home-page .people--compact .person-photo {
    grid-row: 1 / span 2;
  }
  .home-page .cta-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .home-page .cta-action {
    text-align: left;
  }
}
@media (max-width: 720px) {
  .home-page .team-prepared-copy {
    padding: 0;
  }
  .home-page .preparation-point {
    gap: 0 14px;
  }
  .home-page .preparation-point > svg {
    width: 28px;
    height: 28px;
    padding: 3px;
  }
  .home-page .cta-action .btn {
    white-space: normal;
  }
}
.home-page .people--compact .bio summary {
  border-top: 0;
}
:where(body.home-page) .trust-strip {
  position: relative;
  z-index: 2;
  background: #fff;
  width: 100%;
  padding: 16px 0;
  box-sizing: border-box;
}
@media (max-width: 1120px) {
  :where(body.home-page) .trust-strip {
    padding: 18px 0;
  }
}
.home-page .specialists-panel {
  border-radius: var(--r-lg);
}
.home-page .specialists-panel .people--compact {
  gap: 24px;
  grid-template-rows: auto auto auto;
}
.home-page .specialists-panel .person {
  grid-template-rows: subgrid;
  border: 0;
  box-shadow: none;
  border-radius: var(--r);
  padding: 24px;
  row-gap: 16px;
}
.home-page .specialists-panel .bio {
  margin: 0;
}
.home-page .specialists-panel .bio summary {
  padding-top: 0;
  align-items: center;
}
.home-page .specialists-panel .specialists-more {
  margin: 24px 0 0;
}
.home-page .bio-content > p {
  margin: 16px 0 0;
  font-size: var(--home-body);
  line-height: 1.55;
  color: var(--slate);
}
.home-page .bio-content .bio-name {
  display: none;
}
@media (max-width: 1120px) {
  .home-page .specialists-panel .people--compact {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    gap: 16px;
  }
  .home-page .specialists-panel .person {
    grid-template-rows: auto auto auto;
    gap: 12px 18px;
  }
}
@media (max-width: 380px) {
  .home-page .specialists-panel {
    border-radius: var(--r-lg);
  }
}
.home-page {
  --home-heading: var(--fs-h2);
  --home-card: var(--fs-h3);
  --home-intro: var(--fs-lede);
  --home-body: var(--fs-body);
  --home-detail: var(--fs-small);
  --home-gap: 24px;
  --home-intro-measure: 56ch;
  --home-body-measure: 62ch;
}
.home-page main .sec h2,
.home-page main .possibilities-copy h2,
.home-page main .cta h2 {
  font-size: var(--home-heading);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.03em;
  margin-bottom: 16px;
}
.home-page .people--compact .person-heading h3 {
  font-size: var(--home-card);
  line-height: 1.25;
  font-weight: 700;
}
.home-page .hero.hero--home .home-intro,
.home-page .cta-inner > div:first-child > p {
  font-size: var(--home-intro);
  line-height: 1.5;
}
.home-page .preparation-point p {
  font-size: var(--home-body);
  line-height: 1.55;
}
.home-page .preparation-point h3 {
  line-height: 1.4;
  font-weight: 700;
}
.home-page main .label,
.home-page .people--compact .person-heading .label,
.home-page .team-video-copy > span,
.home-page .cta-action > p {
  font-size: var(--home-detail);
  line-height: 1.4;
}
.home-page .specialists-more .alink,
.home-page .bio summary {
  font-size: var(--home-body);
  line-height: 1.4;
}
.home-page .sec-head,
.home-page .specialists-intro {
  margin-bottom: var(--home-gap);
}
.home-page main :is(#services, #services-navigation) .sec-head h2 {
  margin: 0;
  max-width: none;
}
.home-page .preparation-points {
  gap: var(--home-gap);
}
.home-page .possibilities-payoff {
  margin-top: var(--home-gap);
}
.home-page .hero.hero--home .home-service-area {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 0;
  font-size: var(--home-detail);
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: #fff;
}
:where(body.home-page) .home-service-area > svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}
@media (max-width: 720px) {
  .home-page {
  }
  .home-page main > .band {
    padding: 16px 0;
  }
  .home-page .cta {
    margin-top: 16px;
  }
}
.home-page .possibilities-copy > :last-child {
  margin-bottom: 0;
}
.home-page .specialists-panel .person {
  align-self: stretch;
}
.home-page .hero.hero--home .hero-copy {
  margin-left: max(var(--gutter), calc((100% - var(--shell)) / 2));
}
@media (max-width: 720px) {
  .home-page .team-video-callout {
    position: static;
    max-width: none;
    margin: 0;
    border: 0;
    border-radius: 0;
  }
  .home-page .team-video-copy {
    min-width: 0;
  }
  .home-page .team-video-copy strong {
    line-height: 1.35;
  }
  .home-page .team-video-copy > span {
    white-space: normal;
  }
}
@media (max-width: 380px) {
  .home-page .specialists-panel .person {
    padding: 20px;
  }
  .home-page .specialists-panel .person-heading .label {
    font-size: var(--home-detail);
    letter-spacing: 0.025em;
  }
}
.home-page .specialists-panel .person {
  position: relative;
  overflow: hidden;
  padding-left: 30px;
}
.home-page .specialists-panel .person::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: var(--respite);
  pointer-events: none;
}
@media (max-width: 380px) {
  .home-page .specialists-panel .person {
    padding-left: 26px;
  }
}
.home-page .cta-inner > div:first-child > p {
  max-width: var(--home-intro-measure);
  text-wrap: balance;
}
.home-page .preparation-point p {
  max-width: none;
  text-wrap: wrap;
}
.home-page .bio p {
  text-wrap: pretty;
}
.home-page .cta h2 {
  text-wrap: balance;
}
.home-page .hero.hero--home .home-intro {
  margin-top: 16px;
  margin-bottom: 0;
}
@media (min-width: 1121px) {
  .home-page .team-feature--prepared .team-feature-photo {
    position: relative;
    margin: 0;
    min-height: 0;
  }
  .home-page .team-feature--prepared .team-video-launch {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .home-page .team-feature--prepared picture {
    height: 100%;
  }
  .home-page .team-feature--prepared .team-feature-photo img {
    height: 100%;
    aspect-ratio: auto;
  }
}
@media (min-width: 1121px) {
  .home-page .hero.hero--home > .hero-art {
    left: auto;
    width: min(100%, 1440px);
  }
  .home-page .hero.hero--home .hero-media img {
    object-position: center 85%;
  }
}
.home-page .specialists-panel .person {
  grid-template-columns: minmax(0, 1fr);
}
.home-page .specialists-panel .person-identity {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 20px;
  align-items: center;
  grid-column: 1 / -1;
  grid-row: 1;
  min-width: 0;
}
.home-page .specialists-panel .person-identity .person-photo {
  flex: none;
  max-width: 100%;
}
.home-page .specialists-panel .person-identity .person-heading {
  flex: 1 1 7rem;
  min-width: 0;
}
.home-page .specialists-panel .person-photo {
  width: 7rem;
  grid-row: 1;
  align-self: center;
  border-radius: var(--r);
}
.home-page .specialists-panel .person-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.home-page .preparation-link {
  color: inherit;
  text-decoration-line: underline;
  text-decoration-color: var(--respite);
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
}
.home-page .preparation-link span {
  display: inline-block;
  font-size: 0.875em;
  margin-left: 4px;
}
.home-page .preparation-link:focus-visible {
  outline: 3px solid var(--navy);
  outline-offset: 5px;
  border-radius: var(--r-sm);
}
@media (max-width: 1120px) {
  .home-page .specialists-panel .person-photo {
    width: 6.5rem;
  }
}
@media (max-width: 380px) {
  .home-page .specialists-panel .person-identity {
    column-gap: 16px;
  }
  .home-page .specialists-panel .person-photo {
    width: 6rem;
  }
}
.home-page :is(#services, #services-navigation) .service-stack {
  align-items: stretch;
}
.home-page :is(#services, #services-navigation) .service-overview {
  flex-direction: column;

  box-shadow: none;
}
@media (min-width: 1121px) {
  .home-page .day-state:not(.day-state--help) dd {
    max-width: 28ch;
    min-height: calc(1.52em * 4);
    text-wrap: balance;
  }
}
.home-page .possibilities-panel {
  overflow: hidden;
}
:where(body.home-page) .ordinary-thursday {
  background: var(--panel-respite);
}
:where(body.home-page) .ordinary-thursday-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin: 0;
  padding: 24px 36px;
  background: var(--navy);
}
:where(body.home-page) .ordinary-thursday-head h3 {
  font-size: var(--fs-h2);
  line-height: 1.15;
  margin: 0;
  color: #fff;
}
:where(body.home-page) .ordinary-thursday-head p {
  max-width: 47ch;
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: var(--fs-small);
  line-height: 1.5;
  text-align: right;
}
:where(body.home-page) .day-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  position: relative;
}
:where(body.home-page) .day-strip::before {
  content: none;
}
:where(body.home-page) .day-moment {
  position: relative;
  padding: 8px 24px 0;
  border-left: 1px solid var(--rule);
}
:where(body.home-page) .day-moment:first-child {
  border-left: 0;
  padding-left: 0;
}
:where(body.home-page) .day-moment:last-child {
  padding-right: 0;
}
:where(body.home-page) .day-moment::before {
  content: none;
}
:where(body.home-page) .day-moment h4 {
  font-size: var(--fs-body);
  line-height: 1.3;
  margin: 0 0 10px;
  color: var(--navy);
}
:where(body.home-page) .service-chip {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  margin: 0 0 18px;
  padding: 4px 9px;
  border: 1px solid var(--periwinkle);
  border-radius: var(--r-pill);
  background: #fff;
  color: var(--respite-ink);
  font-size: var(--fs-label);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
:where(body.home-page) .service-chip--navigation {
  background: var(--panel-navigation);
  color: var(--navigation-ink);
}
:where(body.home-page) .day-state {
  margin: 0;
  padding: 0;
}
:where(body.home-page) .day-state + .day-state {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--rule);
}
:where(body.home-page) .day-state dt {
  font-size: var(--fs-label);
  line-height: 1.3;
  font-weight: 700;
  color: var(--slate);
  text-transform: uppercase;
  letter-spacing: 0.055em;
}
:where(body.home-page) .day-state dd {
  margin: 6px 0 0;
  font-size: var(--fs-body);
  line-height: 1.52;
  color: var(--slate);
}
:where(body.home-page) .day-state--help dd {
  color: var(--navy);
}
:where(body.home-page) .ordinary-thursday .day-strip {
  margin: 28px 36px 0;
}
@media (max-width: 1120px) {
  :where(body.home-page) .day-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body.home-page) .day-strip::before {
    display: none;
  }
  :where(body.home-page) .day-moment,
:where(body.home-page) .day-moment:first-child,
:where(body.home-page) .day-moment:last-child {
    padding: 8px 24px 0;
    border: 0;
    border-radius: 0;
  }
  :where(body.home-page) .day-moment:nth-child(odd) {
    padding-left: 0;
  }
  :where(body.home-page) .day-moment:nth-child(even) {
    border-left: 1px solid var(--rule);
  }
  :where(body.home-page) .day-moment:last-child {
    padding-right: 0;
  }
  :where(body.home-page) .day-moment::before {
    display: none;
  }
}
@media (max-width: 720px) {
  :where(body.home-page) .ordinary-thursday {
    padding: 0;
  }
  :where(body.home-page) .ordinary-thursday-head {
    padding: 22px;
  }
  :where(body.home-page) .ordinary-thursday-head {
    display: block;
  }
  :where(body.home-page) .ordinary-thursday-head h3 {
    font-size: var(--fs-h2);
  }
  :where(body.home-page) .ordinary-thursday-head p {
    margin-top: 10px;
    text-align: left;
  }
  :where(body.home-page) .ordinary-thursday .day-strip {
    margin: 24px 22px 0;
  }
  :where(body.home-page) .day-moment,
:where(body.home-page) .day-moment:first-child,
:where(body.home-page) .day-moment:last-child {
    padding: 8px 0 0;
    border-left: 0;
  }
  :where(body.home-page) .day-moment:nth-child(even) {
    border-left: 0;
  }
}
.home-page main > :is(#services, #services-navigation) {
  padding: 64px 0 0;
}
.home-page :is(#services, #services-navigation) .sec-head {
  margin-bottom: 40px;
}
.home-page :is(#services, #services-navigation) .service-stack {
  display: block;
}
.home-page :is(#services, #services-navigation) .service-overview {
  align-items: start;
  column-gap: 48px;
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.home-page :is(#services, #services-navigation) .service-overview--care {
  padding: 0 0 64px;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation {
  position: relative;
  isolation: isolate;
  padding: 64px 0;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation::before {
  position: absolute;
  z-index: -1;
  inset: 0 auto 0 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: var(--panel-navigation);
}
.home-page main > .band--team-feature {
  background: #fff;
  padding: 64px 0;
}
.home-page main > .band--care-specialists {
  background: var(--panel-respite);
  padding: 64px 0;
}
.home-page .specialists-panel {
  background: transparent;
  border: 0;
  padding: 0;
}
.home-page .specialists-panel .person {
  background: #fff;
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .service-overview {
    gap: 24px;
  }
}
@media (max-width: 720px) {
  .home-page main > :is(#services, #services-navigation) {
    padding: 40px 0 0;
  }
  .home-page :is(#services, #services-navigation) .sec-head {
    margin-bottom: 32px;
  }
  .home-page :is(#services, #services-navigation) .service-overview--care {
    padding-bottom: 40px;
  }
  .home-page :is(#services, #services-navigation) .service-overview--navigation {
    padding: 40px 0;
  }
  .home-page main > .band--team-feature,
.home-page main > .band--care-specialists {
    padding: 40px 0;
  }
}
.home-page .hero-audience {
  margin: 0;
  color: #fff;
  font-size: var(--fs-small);
  font-weight: 650;
  line-height: 1.4;
}
.home-page .ordinary-thursday .day-moment h4 {
  display: flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}
.home-page .ordinary-thursday .day-moment .moment-dot {
  color: var(--sage);
  font-size: 1.15em;
  line-height: 1;
}
.home-page .ordinary-thursday .day-moment .service-chip {
  display: inline;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: var(--fs-label);
  line-height: 1.2;
}
:where(body.home-page) .thursday-action {
  text-align: center;
}
:where(body.home-page) .thursday-action .btn {
  display: inline-flex;
  background: var(--periwinkle);
  border-color: var(--periwinkle);
  color: var(--navy);
}
.home-page .btn:hover,
.home-page .btn:focus-visible {
  transform: none;
  box-shadow:
    0 0 0 4px color-mix(in srgb, var(--coral) 28%, transparent),
    0 0 20px color-mix(in srgb, var(--coral) 55%, transparent);
}
.home-page .alink:hover > span[aria-hidden] {
  transform: none;
}
:where(body.home-page) .home-service-region {
  background: var(--periwinkle-10);
}
:where(body.home-page) .region-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
  gap: 70px;
  align-items: start;
}
:where(body.home-page) .region-intro h2 {
  margin: 0 0 12px;
  color: var(--navy);
}
:where(body.home-page) .region-intro p,
:where(body.home-page) .region-detail p {
  color: var(--slate);
}
:where(body.home-page) .region-detail {
  padding-top: 4px;
}
:where(body.home-page) .region-row {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 16px;
  border-top: 1px solid var(--respite-deep-30);
  padding: 20px 0;
}
:where(body.home-page) .region-row:last-of-type {
  border-bottom: 1px solid var(--respite-deep-30);
}
:where(body.home-page) .region-row h3,
:where(body.home-page) .region-row p {
  margin: 0;
  font-size: var(--fs-body);
  line-height: 1.5;
}
:where(body.home-page) .region-row h3 {
  font-weight: 700;
  color: var(--navy);
}
:where(body.home-page) .region-row h3 {
  white-space: nowrap;
}
:where(body.home-page) .region-detail > p {
  margin: 18px 0 8px;
  font-size: var(--fs-small);
}
:where(body.home-page) .region-detail > a {
  font-size: var(--fs-small);
  font-weight: 700;
  color: var(--navy);
  text-decoration: underline;
  text-decoration-color: var(--periwinkle);
  text-underline-offset: 4px;
}
@media (min-width: 1121px) {
  .home-page {
    --shell: 1160px;
  }
  .home-page .site-header {
    background: var(--ink-deep);
  }
  .home-page .hero.hero--home {
    min-height: 0;
    display: block;
    background: var(--navy);
  }
  .home-page .hero.hero--home > .hero-art {
    display: block;
    width: 100%;
    min-height: 0;
    padding: 0;
  }
  .home-page .hero.hero--home .hero-media,
.home-page .hero.hero--home .hero-media img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 49%;
  }
  .home-page .hero.hero--home .hero-art::after {
    display: block;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(27, 42, 74, 0.18);
  }
  .home-page .hero.hero--home .hero-grid::after {
    display: none;
  }
  .home-page .hero.hero--home .hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    place-items: center;
    width: 100%;
    background: transparent;
  }
  .home-page .hero.hero--home .hero-copy {
    flex-direction: column;
    justify-content: center;
    width: min(1100px, calc(100% - 80px));
    margin: 0 auto;
    container-type: normal;
  }
  .home-page .hero.hero--home .hero-audience {
    width: 100%;
  }
  .home-page .hero.hero--home h1 {
    width: 100%;
    font-weight: 800;
  }
  .home-page .hero.hero--home .hero-line {
    display: inline;
    white-space: nowrap;
  }
  .home-page .hero.hero--home .hero-line:nth-child(3) {
    display: block;
    margin-top: 2px;
  }
  .home-page .hero.hero--home .hero-lede {
    color: #fff;
  }
  .home-page .hero.hero--home .home-service-area {
    margin: 15px 0 0;
    color: #fff;
    font-size: var(--fs-small);
  }
  .home-page .trust-strip {
    min-height: 0;
  }
  .home-page main > :is(#services, #services-navigation) {
    background: var(--paper);
    padding: 48px 0;
  }
  .home-page :is(#services, #services-navigation) .sec {
    background: transparent;
    border: 0;
    padding: 0;
  }
  .home-page :is(#services, #services-navigation) .sec-star {
    display: none;
  }
  .home-page :is(#services, #services-navigation) .service-stack > .sec-head {
    position: relative;
    z-index: 2;
    margin: 0 0 8px;
    padding: 0;
  }
  .home-page :is(#services, #services-navigation) .sec-head h2 {
    font-size: var(--fs-h2);
    letter-spacing: -0.03em;
  }
  .home-page :is(#services, #services-navigation) .service-stack {
    display: block;
    border-radius: var(--r-lg);
    padding: 24px 44px;
    overflow: hidden;
  }
  .home-page :is(#services, #services-navigation) .service-overview {
    gap: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
    padding: 0;
  }
  .home-page :is(#services, #services-navigation) .service-overview--care {
    grid-template-rows: 280px auto;
  }
  .home-page :is(#services, #services-navigation) .service-overview--navigation {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 175px auto;
    padding: 30px 0 0;
    isolation: auto;
  }
  .home-page :is(#services, #services-navigation) .service-overview--navigation::before {
    position: absolute;
    top: 15px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--nw-line);
    pointer-events: none;
  }
  .home-page main > .home-possibilities {
    background: #fff;
    padding: 62px 0 48px;
  }
  .home-page .possibilities-panel {
    background: transparent;
    border: 0;
    border-radius: 0;
    overflow: visible;
  }
  .home-page .possibilities-copy {
    grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
    gap: 0 40px;
  }
  .home-page .possibilities-copy h2 {
    grid-column: 1;
    grid-row: 1 / span 3;
    font-size: var(--fs-h2);
  }
  .home-page .ordinary-thursday {
    background: var(--panel-respite);
    border-radius: var(--r-lg);
    padding: 34px 40px 26px;
    overflow: hidden;
  }
  .home-page .ordinary-thursday-head {
    display: block;
    background: transparent;
    padding: 0;
    margin: 0 0 22px;
  }
  .home-page .ordinary-thursday-head h3 {
    color: var(--navy);
    font-size: var(--fs-h2);
  }
  .home-page .ordinary-thursday-head p {
    margin: 5px 0 0;
    text-align: left;
    color: var(--slate);
    font-size: var(--fs-small);
  }
  .home-page .ordinary-thursday .day-strip {
    margin: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .home-page .day-moment {
    padding: 0 18px;
    border-left: 1px solid var(--respite-deep-30);
  }
  .home-page .day-moment:first-child {
    padding-left: 0;
    border: 0;
  }
  .home-page .day-moment:last-child {
    padding-right: 0;
  }
  .home-page .day-moment h4 {
    font-size: var(--fs-body);
    margin: 0 0 17px;
  }
  .home-page .ordinary-thursday .service-chip {
    font-size: var(--fs-label);
  }
  .home-page .day-state + .day-state {
    margin-top: 13px;
    padding-top: 13px;
  }
  .home-page .thursday-action {
    margin-top: 22px;
  }
  .home-page main > .band--team-feature {
    background: var(--paper);
    padding: 52px 0 24px;
  }
  .home-page .team-heading {
    margin: 0 0 30px;
  }
  .home-page .team-heading h2 {
    font-size: var(--fs-h2);
    margin: 0 0 8px;
    letter-spacing: -0.03em;
  }
  .home-page .team-heading p {
    margin: 0;
    color: var(--slate);
    font-size: var(--fs-body);
  }
  .home-page .team-feature--prepared {
    grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
    gap: 48px;
  }
  .home-page .team-feature--prepared .team-feature-photo {
    border-radius: var(--r);
  }
  .home-page .preparation-points {
    gap: 16px;
  }
  .home-page .preparation-point {
    gap: 0 14px;
  }
  .home-page .preparation-point > svg {
    width: 32px;
    height: 32px;
    padding: 4px;
    background: transparent;
  }
  .home-page .preparation-point h3 {
    margin: 0 0 4px;
  }
  .home-page .preparation-point p {
    font-size: var(--fs-small);
    line-height: 1.45;
  }
  .home-page main > .band--care-specialists {
    background: var(--paper);
    padding: 24px 0 48px;
  }
  .home-page .specialists-panel {
    border: 0;
    border-top: 1px solid var(--sage-30);
    border-radius: 0;
    padding: 28px 0 0;
    background: transparent;
  }
  .home-page .people--compact {
    gap: 24px;
  }
  .home-page .specialists-panel .person {
    padding: 18px;
    background: #fff;
    border: 1px solid var(--respite-deep-20);
    border-radius: var(--r);
    overflow: hidden;
  }
  .home-page .specialists-panel .person::before {
    display: none;
  }
  .home-page .specialists-panel .person-identity {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    margin: -18px -18px 0;
    padding: 18px;
    background: var(--periwinkle-20);
  }
  .home-page .specialists-panel .person:nth-child(2) .person-identity {
    background: var(--navigation-deep-10);
  }
  .home-page .specialists-panel .person:nth-child(3) .person-identity {
    background: var(--coral-10);
  }
  .home-page .specialists-panel .person-photo {
    width: 150px;
    height: 150px;
    align-self: center;
  }
  .home-page .specialists-panel .person-heading {
    min-width: 0;
  }
  .home-page .specialists-panel .bio {
    display: block;
  }
  .home-page .specialists-panel .bio summary {
    color: var(--navy);
  }
  .home-page .specialists-panel .bio summary:hover {
    text-decoration: underline;
    text-decoration-color: var(--coral);
    text-underline-offset: 4px;
  }
  .home-page .specialists-more {
    display: none;
  }
  .home-page main > .home-service-region {
    padding: 54px 0 28px;
    background: var(--periwinkle-10);
  }
  .home-page .region-intro h2 {
    font-size: var(--fs-h2);
  }
  .home-page .region-intro p {
    font-size: var(--fs-body);
    line-height: 1.5;
  }
  .home-page .cta {
    margin: 0;
  }
  .home-page .cta-inner {
    grid-template-columns: 1fr auto;
  }
  .home-page .cta h2 {
    font-size: var(--fs-h3);
    margin: 0 0 8px;
  }
  .home-page .cta-inner > div:first-child > p {
    font-size: var(--fs-body);
  }
  .home-page .site-footer {
    background: var(--ink-deep);
  }
}
@media (min-width: 1121px) {
  .home-page .hero.hero--home .hero-copy {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: center;
    gap: 40px;
    width: min(var(--shell), calc(100% - var(--gutter) * 2));
    max-width: none;
    padding: 24px 0;
    text-align: left;
  }
  .home-page .hero.hero--home .home-hero-primary,
.home-page .hero.hero--home .home-hero-secondary {
    min-width: 0;
  }
  .home-page .hero.hero--home .home-hero-secondary {
    position: relative;
  }
  .home-page .hero.hero--home .home-hero-secondary::before {
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: -70px;
    width: 2px;
    background: color-mix(in srgb, var(--periwinkle-70) 48%, transparent);
    pointer-events: none;
  }
  .home-page .hero.hero--home h1 {
    margin: 0;
    font-size: clamp(2.65rem, 3.7vw, 3.15rem);
    line-height: 1.04;
    letter-spacing: -0.04em;
    white-space: normal;
  }
  .home-page .hero.hero--home .hero-line,
.home-page .hero.hero--home .hero-line:nth-child(3) {
    display: block;
    margin: 0;
    white-space: nowrap;
  }
  .home-page .hero.hero--home .family-underline::after {
    bottom: -0.14em;
    height: 10px;
  }
  .home-page .hero.hero--home .hero-lede {
    max-width: 58ch;
    margin: 18px 0 0;
    font-size: var(--fs-body);
    line-height: 1.45;
    text-wrap: pretty;
    text-align: left;
  }
  .home-page .hero.hero--home .home-intro > span {
    max-width: none;
    text-wrap: pretty;
  }
  .home-page .hero.hero--home .home-hero-secondary > .btn-row {
    justify-content: flex-start;
    margin-top: 20px;
  }
  .home-page .hero.hero--home .home-service-area {
    justify-content: flex-start;
    margin-top: 16px;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .home-hero-primary,
.home-page .hero.hero--home .home-hero-secondary {
    display: contents;
  }
  .home-page .hero.hero--home .hero-audience {
    order: -1;
  }
}
.home-page .hero.hero--home .hero-audience {
  margin: 0 0 16px;
  max-width: 34rem;
  color: var(--coral);
  font: 700 var(--fs-body)/1.4 var(--nw-text);
  letter-spacing: 0;
  text-align: left;
}
@media (min-width: 1121px) {
  .home-page .hero.hero--home .home-hero-secondary .hero-lede {
    margin-top: 0;
  }
}
.home-page .cta {
  background:
    linear-gradient(rgba(27, 42, 74, 0.67), rgba(27, 42, 74, 0.67)),
    url("images/home-2026/divider-topographic-no-star.webp") center / cover no-repeat var(--navy);
}
@media (max-width: 1120px) {
  :root:where(:has(> body.home-page)) {
    --nw-gutter: var(--gutter);
  }
  :where(body.home-page) .nw-chapters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  :where(body.home-page) .nw-chapters {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home {
    min-height: 0;
    background: var(--nw-topo);
  }
  .home-page .hero.hero--home .hero-art {
    display: none;
  }
  .home-page .hero.hero--home .hero-grid {
    position: relative;
    min-height: 0;
    display: block;
    width: min(var(--nw-shell), calc(100% - 2 * var(--nw-gutter)));
    margin-inline: auto;
  }
  .home-page .hero.hero--home .hero-copy {
    position: relative;
    width: 100%;
    max-width: 44rem;
    margin: 0;
    padding: 44px 0 40px;
  }
  .home-page .hero.hero--home h1 {
    font-size: var(--fs-display);
    line-height: 1.08;
    color: #fff;
  }
  .home-page .hero.hero--home .hero-line {
    white-space: normal;
  }
  .home-page .hero.hero--home .hero-copy {
    display: flex;
    flex-direction: column;
  }
  .home-page .hero.hero--home .home-hero-primary {
    display: block;
    order: 0;
  }
  .home-page .hero.hero--home .home-hero-secondary {
    display: block;
    order: 1;
    margin-top: 22px;
  }
  .home-page .hero.hero--home .home-hero-secondary > * {
    order: 0;
  }
  .home-page .hero.hero--home h1 {
    margin-bottom: 0;
  }
  .home-page :is(#services, #services-navigation) .service-overview {
    width: auto;
    max-width: 100%;
  }
  .home-page :is(#services, #services-navigation) .service-overview > * {
    min-width: 0;
    max-width: 100%;
  }
  .home-page .people.people--compact {
    display: grid;
  }
  .home-page .people.people--compact > .person {
    min-width: 0;
  }
  .home-page .people.people--compact .person-identity {
    flex-direction: column;
    align-items: flex-start;
  }
  .home-page .region-intro {
    width: auto;
    max-width: 40rem;
  }
  .home-page .region-detail {
    width: auto;
    margin-top: 24px;
  }
  .home-page .region-row {
    display: block;
    padding: 14px 0;
    border-top: 1px solid var(--nw-line);
  }
  .home-page .region-row h3 {
    margin: 0 0 4px;
  }
  .home-page .region-row p {
    margin: 0;
  }
}
@media (max-width: 720px) {
  .home-page .hero.hero--home .hero-copy {
    padding: 30px 0 30px;
  }
  .home-page .hero.hero--home h1 {
    font-size: clamp(1.875rem, 8.6vw, 2.25rem);
    margin-bottom: 0;
  }
  .home-page .hero.hero--home .home-hero-secondary {
    margin-top: 18px;
  }
  .home-page .people.people--compact .person-identity {
    flex-direction: row;
    align-items: center;
  }
  :where(body.home-page) .nw-day-tabs {
    margin: 0 0 14px;
    border-radius: var(--r-pill);
    background: rgba(27, 42, 74, 0.07);
  }
  :where(body.home-page) .nw-day-tab {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 44px;
    padding: 8px 6px;
    border: 0;
    border-radius: var(--r-pill);
    background: transparent;
    color: var(--navy);
    font: 700 var(--fs-label)/1.2 var(--nw-text);
    cursor: pointer;
  }
  :where(body.home-page) .nw-day-tab[aria-selected="true"] {
    background: var(--navy);
    color: #fff;
  }
  :where(body.home-page) .nw-day-tab:focus-visible {
    outline: 2px solid var(--navy);
    outline-offset: 2px;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .hero-grid,
.home-page .hero.hero--home .hero-copy {
    background: transparent;
  }
  .home-page .hero.hero--home::after,
.home-page .hero.hero--home .hero-copy::before,
.home-page .hero.hero--home .hero-copy::after {
    display: none;
    content: none;
  }
}
@media (max-width: 1120px) {
  :where(body.home-page) .mobile-person {
    width: 100%;
    min-width: 0;
  }
  :where(body.home-page) .mobile-person > summary {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr) 28px;
    align-items: center;
    gap: 14px;
    padding: 18px;
    cursor: pointer;
    list-style: none;
    color: var(--navy);
    background: var(--panel-respite);
  }
  :where(body.home-page) .mobile-person > summary::-webkit-details-marker {
    display: none;
  }
  :where(body.home-page) .person:nth-child(2) .mobile-person > summary {
    background: var(--nw-navigation);
  }
  :where(body.home-page) .person:nth-child(3) .mobile-person > summary {
    background: var(--nw-coral-100);
  }
  :where(body.home-page) .mobile-person > summary > img {
    width: 60px;
    height: 68px;
    object-fit: cover;
    object-position: center top;
    border-radius: var(--r-sm);
  }
  :where(body.home-page) .mobile-person-label {
    display: grid;
    gap: 5px;
    min-width: 0;
  }
  :where(body.home-page) .mobile-person-label strong {
    font: 700 var(--fs-lede)/1.2 var(--nw-display);
    letter-spacing: -0.015em;
  }
  :where(body.home-page) .mobile-person-label > span {
    font: 400 var(--fs-small)/1.35 var(--nw-text);
    color: var(--nw-body);
  }
  :where(body.home-page) .mobile-person-label > .mobile-person-action-label {
    font-weight: 700;
    color: var(--navy);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  :where(body.home-page) .mobile-person-toggle {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font: 500 var(--fs-lede)/1 var(--nw-text);
  }
  :where(body.home-page) .mobile-person-toggle::before {
    content: "+";
  }
  :where(body.home-page) .mobile-person[open] .mobile-person-toggle::before {
    content: "−";
  }
  :where(body.home-page) .mobile-person > summary:focus-visible {
    outline: 3px solid var(--nw-care-ink);
    outline-offset: -3px;
  }
  .home-page .people .person .mobile-person > .person-body {
    display: block;
    padding: 18px;
    border-top: 1px solid var(--nw-line);
    background: #fff;
  }
  :where(body.home-page) .mobile-person .bio > summary {
    display: none !important;
  }
  .home-page .people .person .mobile-person .bio {
    margin: 16px 0 0;
    padding: 0;
    border: 0;
  }
  .home-page .people .person .mobile-person p {
    font-size: var(--fs-body);
    line-height: 1.55;
  }
}
@media (max-width: 720px) {
  .home-page .cta .cta-inner {
    text-align: center;
    justify-items: center;
  }
  .home-page .cta h2,
.home-page .cta p {
    margin-inline: auto;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .hero-copy {
    background: transparent;
  }
  .home-page .people.people--compact {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    padding: 0;
    margin: 0;
    gap: 24px;
    scroll-snap-type: none;
  }
}
@media (max-width: 720px) {
  .home-page .people.people--compact {
    grid-template-columns: 1fr;
  }
  .home-page .day-strip.is-tabbed .day-moment[hidden] {
    display: none;
  }
}
@media print {
  .home-page .day-strip .day-moment[hidden] {
    display: block;
  }
  :where(body.home-page) .nw-day-tabs {
    display: none;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .hero-audience {
    margin: 0 0 16px;
    color: var(--coral);
    font: 700 var(--fs-body)/1.4 var(--nw-text);
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .home-hero-secondary > .btn-row {
    margin-top: 20px;
  }
}
@media (max-width: 720px) {
  .home-page .band {
    padding-block: 32px;
  }
}
@media (max-width: 1120px) {
  .home-page .possibilities-intro {
    flex-direction: column;
  }
  .home-page .possibilities-panel {
    padding-bottom: 0;
  }
  .home-page .ordinary-thursday {
    padding-bottom: 24px;
  }
}
@media (max-width: 720px) {
  .home-page .hero.hero--home .hero-copy {
    align-items: center;
    text-align: center;
  }
  .home-page .hero.hero--home .home-hero-secondary {
    width: 100%;
  }
  .home-page .hero.hero--home .hero-audience,
.home-page .hero.hero--home .hero-lede {
    margin-inline: auto;
  }
  .home-page .hero.hero--home .btn-row {
    justify-content: center;
  }
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .service-overview--care,
.home-page :is(#services, #services-navigation) .service-overview--navigation {
    padding-top: 24px;
  }
}
@media (max-width: 720px) {
  .home-page .hero.hero--home .hero-audience {
    text-align: center;
    text-wrap: balance;
  }
  .home-page .hero.hero--home .home-service-area {
    text-align: center;
    justify-content: center;
  }
}
@media (max-width: 1120px) {
  .home-page .hero.hero--home .home-hero-secondary {
    border-top: 0;
    padding-top: 0;
  }
  .home-page .hero.hero--home .home-hero-secondary .hero-lede {
    margin-top: 0;
  }
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .home-service-body {
    gap: 22px 24px;
  }
  .home-page :is(#services, #services-navigation) .home-care-pricing,
.home-page :is(#services, #services-navigation) .home-navigation-copy,
.home-page :is(#services, #services-navigation) .home-navigation-actions {
    padding-left: 0;
    border-left: 0;
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel {
    border-radius: var(--r);
  }
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-copy,
.home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--navigation
    .service-panel-copy {
    justify-self: start;
    width: 64%;
    padding: 16px 18px;
  }
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-copy h3 {
    font-size: var(--fs-h3);
  }
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-copy p {
    font-size: var(--fs-body);
    line-height: 1.35;
  }
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-art,
.home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--navigation
    .service-panel-art {
    inset: auto 0 0 auto;
    width: 36%;
    object-position: center bottom;
  }
  .home-page :is(#services, #services-navigation) .service-overview > .home-service-body {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    padding: 0;
  }
  .home-page :is(#services, #services-navigation) .home-service-body--care {
    grid-template-areas: "life" "familiar" "support" "price" "action";
  }
  .home-page :is(#services, #services-navigation) .home-service-body--navigation {
    grid-template-areas: "prose" "scope" "price" "action";
  }
  .home-page :is(#services, #services-navigation) .home-service-body h4 {
    font-size: var(--fs-lede);
  }
  .home-page :is(#services, #services-navigation) .home-service-body p {
    font-size: var(--fs-body);
    line-height: 1.5;
  }
  .home-page :is(#services, #services-navigation) .home-navigation-pricing span {
    font-size: var(--fs-body);
  }
  .home-page :is(#services, #services-navigation) .home-navigation-scope {
    gap: 16px;
  }
  .home-page :is(#services, #services-navigation) .home-navigation-scope h4 {
    font-size: var(--fs-body);
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel {
    height: 140px;
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-panel-container .service-panel--slim {
    --service-heading-size: clamp(1.125rem, 4.9vw, 1.375rem);
    --service-title-edge: 54%;
    grid-template-columns: minmax(0, 0.54fr) minmax(0, 0.46fr);
    height: 156px;
    border-radius: 0;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim::before {
    height: 124px;
    border-radius: var(--r);
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim
    .service-panel-copy {
    width: 100%;
    min-height: 124px;
    margin: 0;
    padding: 0 14px;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim
    .service-panel-copy
    h3 {
    font-size: var(--service-heading-size);
    line-height: 1.2;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim
    .service-panel-copy
    p {
    font-size: var(--fs-body);
    line-height: 1.35;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim
    .service-panel-visual {
    left: var(--service-title-edge);
    right: 0;
    bottom: auto;
    width: auto;
    padding: 0 8px;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel--slim
    .service-panel-art {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
  }
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .service-overview > .home-service-body--refined {
    gap: 22px 24px;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-overview
    .home-service-body--refined
    > .home-care-support,
.home-page
    :is(#services, #services-navigation)
    .service-overview
    .home-service-body--refined
    > .home-navigation-scope {
    padding-left: 0;
    border-left: 0;
  }
  .home-page
    :is(#services, #services-navigation)
    .home-service-body--refined
    > .home-service-footer {
    column-gap: 24px;
  }
}
@media (max-width: 720px) {
  .home-page
    :is(#services, #services-navigation)
    .service-overview
    > .home-service-body--navigation.home-service-body--refined {
    grid-template-areas: "prose" "scope" "footer";
  }
  .home-page
    :is(#services, #services-navigation)
    .home-service-body--refined
    > .home-service-footer {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "price" "action";
    gap: 16px;
  }
  .home-page
    :is(#services, #services-navigation)
    .home-service-body--refined
    > .home-service-footer
    .home-service-actions {
    justify-content: flex-start;
  }
}
@media (max-width: 720px) {
  .home-page
    :is(#services, #services-navigation)
    .service-overview
    > .home-service-body--care.home-service-body--refined {
    grid-template-areas: "life" "support" "specialty" "footer";
  }
  .home-page :is(#services, #services-navigation) .service-overview .home-care-specialty {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-top: 20px;
  }
  .home-page
    :is(#services, #services-navigation)
    .service-overview
    .home-care-specialty
    > section
    + section {
    border-left: 0;
    padding-left: 0;
  }
}
.home-page .trust-strip {
  background: #fff;
}
:where(body.home-page) .preparation-point {
  grid-template-columns: 44px minmax(0, 1fr) !important;
  column-gap: 16px !important;
}
:where(body.home-page) .possibilities-panel {
  display: block;
}
:where(body.home-page) .possibilities-copy {
  max-width: none;
  width: 100%;
  margin-bottom: 24px;
}
:where(body.home-page) .day-strip {
  align-items: start;
  gap: 24px;
}
:where(body.home-page) .day-vignette {
  height: 164px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}
:where(body.home-page) .day-vignette img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
:where(body.home-page) .day-moment {
  padding-top: 0 !important;
}
:where(body.home-page) .specialist-voice {
  margin: 20px 0;
  padding: 0 0 0 18px;
  border-left: 3px solid var(--respite-deep-70);
  font-size: var(--fs-body);
  line-height: 1.6;
  color: var(--navy);
}
:where(body.home-page) .person-body .specialist-voice {
  display: block;
}
:where(body.home-page) .team-feature--video-led {
  grid-template-columns: 1.18fr 1fr !important;
  align-items: start;
}
:where(body.home-page) .team-video-launch {
  display: block;
}
:where(body.home-page) .team-video-callout {
  padding: 22px !important;
  gap: 16px !important;
}
:where(body.home-page) .team-video-copy strong {
  font-size: var(--fs-body) !important;
}
:where(body.home-page) .team-video-copy > span {
  font-size: var(--fs-small) !important;
}
@media (max-width: 720px) {
  :where(body.home-page) .day-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body.home-page) .team-feature--video-led {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 720px) {
  :where(body.home-page) .day-strip {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  :where(body.home-page) .day-moment {
    display: grid;
    grid-template-columns: 112px 1fr;
    gap: 0 18px;
    align-items: center;
  }
  :where(body.home-page) .day-vignette {
    grid-column: 1;
    grid-row: 1;
    height: 100px;
    margin: 0;
  }
  :where(body.home-page) .day-moment > h4 {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    display: block;
  }
  :where(body.home-page) .day-moment > .day-state {
    grid-column: 1/-1;
    margin-top: 18px;
  }
  :where(body.home-page) .day-moment .moment-dot {
    display: none;
  }
  :where(body.home-page) .day-moment .service-chip {
    display: block;
    width: fit-content;
    margin-top: 6px;
  }
  :where(body.home-page) .preparation-point {
    grid-template-columns: 52px 1fr !important;
    column-gap: 14px !important;
  }
  :where(body.home-page) .team-video-callout {
    padding: 16px !important;
  }
  :where(body.home-page) .team-video-copy strong {
    font-size: var(--fs-body) !important;
  }
  :where(body.home-page) .team-video-copy > span {
    font-size: var(--fs-small) !important;
  }
  :where(body.home-page) .specialist-voice {
    font-size: var(--fs-body);
    margin: 18px 0;
  }
}
:where(body.home-page) .day-moment[hidden] {
  display: none;
}
@media (max-width: 720px) {
  :where(body.home-page) .person > .specialist-voice {
    margin: 0 20px 22px;
    padding-left: 16px;
  }
}
.home-page .people--compact .person-body {
  display: block;
  grid-column: 1/-1;
  grid-row: 2;
}
.home-page .people--compact .person-body .bio {
  margin-top: 18px;
  position: static;
}
.home-page .people--compact .person-body > .specialist-voice {
  margin: 18px 0;
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-overview--care {
    margin-top: 0;
  }
}
:where(body.home-page) .cta .cta-action > p {
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
}
:where(body.home-page) .cta .cta-action {
  min-width: 0;
  max-width: 100%;
}
:where(body.home-page) .cta .cta-action .btn {
  white-space: normal;
  max-width: 100%;
  text-align: center;
}
.home-page .trust-strip {
  padding: 10px 0 0;
  border-bottom: 0;
}
.home-page .trust-strip::after {
  content: "";
  display: block;
  height: 4px;
  margin-top: 10px;
  background: linear-gradient(
    90deg,
    var(--respite) 0%,
    var(--respite) 45%,
    var(--navigation) 55%,
    var(--navigation) 100%
  );
}
@media (max-width: 720px) {
  .home-page .trust-strip {
    padding: 9px 0 0;
  }
}
.home-page :is(#services, #services-navigation) .service-stack {
  grid-template-columns: 1fr;
}
.home-page :is(#services, #services-navigation) .service-stack > .sec-head {
  grid-column: 1/-1;
}
.home-page :is(#services, #services-navigation) .service-overview {
  position: relative;
  display: grid;
  min-width: 0;
}
.home-page .specialists-panel .people--compact {
  align-items: stretch;
}
.home-page .specialists-panel .person {
  display: block;
  grid-row: auto;
}
.home-page .specialists-panel .person-body {
  display: block;
}
.home-page .specialists-panel .person-body > .specialist-voice {
  margin: 18px 0 20px;
}
.home-page .specialists-panel .bio {
  border-top: 1px solid var(--nw-line);
  padding-top: 8px;
  margin-top: 0;
}
.home-page .specialists-panel .bio summary {
  min-height: 44px;
  font-weight: 700;
  cursor: pointer;
}
.home-page .specialists-panel .bio summary {
  justify-content: space-between;
  gap: 12px;
}
.home-page .specialists-panel .bio-toggle-label {
  font: 700 var(--fs-body)/1.35 var(--nw-display);
  color: var(--navy);
  transform: none;
}
.home-page .specialists-panel .bio-content {
  position: static;
  display: block;
  padding: 0 0 8px;
}
.home-page .specialists-panel .bio-content > p {
  margin: 10px 0 0;
}
.home-page .specialists-panel .bio-content .bio-name {
  display: none;
}
.home-page .specialists-panel .bio:not([open]) .bio-content {
  display: none;
}
@media (min-width: 1121px) {
  .home-page .specialists-panel .people--compact {
    grid-template-rows: none;
    grid-auto-rows: auto;
  }
  .home-page .specialists-panel .person {
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
    align-self: stretch;
  }
  .home-page .specialists-panel .person-identity {
    grid-row: 1;
    grid-column: 1;
  }
  .home-page .specialists-panel .person-body {
    display: grid;
    grid-row: 2 / span 2;
    grid-column: 1;
    grid-template-rows: subgrid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }
  .home-page .specialists-panel .person-body > .specialist-voice {
    grid-row: 1;
    align-self: stretch;
  }
  .home-page .specialists-panel .person-body > .bio {
    grid-row: 2;
    margin-top: 0;
  }
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .service-stack {
    grid-template-columns: 1fr;
  }
}
.home-page :is(#services, #services-navigation) .service-stack {
  gap: 4px;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation::before {
  content: none;
}
.home-page .preparation-point {
  grid-template-columns: 44px minmax(0, 1fr) !important;
}
@media (max-width: 720px) {
  .home-page .preparation-point {
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-stack {
    gap: 2px;
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .sec-head {
    margin-bottom: 18px;
  }
  .home-page :is(#services, #services-navigation) .service-stack {
    display: block;
  }
  .home-page :is(#services, #services-navigation) .service-overview {
    display: grid;
  }
  .home-page :is(#services, #services-navigation) .service-overview--care {
    padding: 0 0 18px;
  }
  .home-page :is(#services, #services-navigation) .service-overview--navigation {
    padding: 0;
    margin: 0;
    border: 0;
    box-shadow: none;
  }
  .home-page .trust-strip::after {
    margin-top: 8px;
  }
}
.home-page main > .home-service-region {
  padding: 64px 0;
}
.home-page .home-service-region .region-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 28px 48px;
  align-items: center;
}
.home-page .home-service-region .region-intro {
  grid-column: 1 / -1;
  width: auto;
  max-width: none;
}
.home-page .home-service-region .region-intro h2 {
  margin: 0 0 12px;
  font-size: var(--fs-h2);
}
.home-page .home-service-region .region-intro p {
  margin: 0;
  max-width: 65ch;
  font-size: var(--fs-body);
  line-height: 1.55;
}
.home-page .home-service-region .region-map {
  min-width: 0;
}
.home-page .home-service-region .region-map img {
  display: block;
  width: 100%;
  height: auto;
}
.home-page .home-service-region .region-detail {
  min-width: 0;
  margin: 0;
  padding: 0;
}
.home-page .home-service-region .region-row {
  display: block;
  padding: 21px 0;
  border: 0;
  border-bottom: 1px solid var(--navy-15);
}
.home-page .home-service-region .region-row:first-child {
  padding-top: 0;
}
.home-page .home-service-region .region-row:last-of-type {
  border-bottom: 0;
}
.home-page .home-service-region .region-row h3 {
  margin: 0 0 6px;
  font-size: var(--fs-h3);
  line-height: 1.25;
  white-space: normal;
}
.home-page .home-service-region .region-row p {
  margin: 0;
  font-size: var(--fs-body);
  line-height: 1.55;
}
.home-page .home-service-region .region-detail > p {
  margin: 16px 0 10px;
  font-size: var(--fs-small);
  line-height: 1.5;
}
.home-page .home-service-region .region-detail > a {
  font-size: var(--fs-body);
  line-height: 1.5;
}
@media (max-width: 1120px) {
  .home-page main > .home-service-region {
    padding: 44px 0;
  }
  .home-page .home-service-region .region-grid {
    gap: 24px 30px;
  }
  .home-page .home-service-region .region-intro h2 {
    font-size: var(--fs-h2);
  }
  .home-page .home-service-region .region-row h3 {
    font-size: var(--fs-lede);
  }
}
@media (max-width: 720px) {
  .home-page .home-service-region .region-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .home-page .home-service-region .region-map {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
  }
}
@media (max-width: 720px) {
  .home-page main > .home-service-region {
    padding: 36px 0;
  }
  .home-page .home-service-region .region-intro h2 {
    font-size: var(--fs-display);
  }
  .home-page .home-service-region .region-intro p {
    font-size: var(--fs-body);
  }
  .home-page .home-service-region .region-row {
    padding: 18px 0;
  }
}
.home-page :is(#services, #services-navigation) .service-overview {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto;
}
.home-page :is(#services, #services-navigation) .service-panel-container {
  container-type: inline-size;
  grid-column: 1/-1;
  grid-row: 1;
  width: 100%;
  min-width: 0;
}
:where(body.home-page) .service-panel {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  position: relative;
  isolation: isolate;
  aspect-ratio: 3/1;
  min-height: 12rem;
  overflow: hidden;
  border-radius: var(--r-lg);
  background: var(--respite-deep-20);
  color: var(--navy);
}
:where(body.home-page) .service-panel--navigation {
  background: var(--navigation-deep-20);
}
:where(body.home-page) .service-panel-copy {
  grid-area: 1/1;
  align-self: center;
  position: relative;
  z-index: 1;
  width: 48%;
  box-sizing: border-box;
  padding: 2rem 3cqi 2rem 6cqi;
  text-align: left;
}
:where(body.home-page) .service-panel--navigation .service-panel-copy {
  justify-self: end;
  width: 46%;
  padding-inline: 0 6cqi;
}
.home-page :is(#services, #services-navigation) .service-panel-copy h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.5rem, 3.25cqi, 2.5rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.035em;
  text-wrap: pretty;
}
.home-page :is(#services, #services-navigation) .service-panel-copy p {
  margin: 0.6em 0 0;
  color: var(--navy);
  font-size: clamp(1rem, 1.95cqi, 1.375rem);
  font-weight: 500;
  line-height: 1.4;
  text-wrap: pretty;
}
:where(body.home-page) .service-panel-art {
  grid-area: 1/1;
  align-self: end;
  justify-self: end;
  position: absolute;
  inset: auto 0 0 auto;
  width: 58%;
  height: 100%;
  max-width: none;
  margin: 0;
  object-fit: contain;
  object-position: right bottom;
  pointer-events: none;
}
:where(body.home-page) .service-panel--navigation .service-panel-art {
  justify-self: start;
  inset: auto auto 0 0;
  width: 64%;
  object-position: left bottom;
}
@container (max-width:679px) {
  :where(body.home-page) .service-panel {
    aspect-ratio: 1.75/1;
    min-height: 12.5rem;
    border-radius: var(--r);
  }
  :where(body.home-page) .service-panel-copy,
:where(body.home-page) .service-panel--navigation .service-panel-copy {
    justify-self: start;
    width: 48%;
    padding: 1.5rem 0 1.5rem 6cqi;
    align-self: center;
  }
  .home-page :is(#services, #services-navigation) .service-panel-copy h3 {
    font-size: clamp(1.25rem, 5.8cqi, 1.875rem);
    line-height: 1.15;
    letter-spacing: -0.035em;
  }
  .home-page :is(#services, #services-navigation) .service-panel-copy p {
    font-size: clamp(1rem, 3.9cqi, 1.125rem);
    line-height: 1.35;
    margin-top: 0.55em;
  }
  :where(body.home-page) .service-panel-art,
:where(body.home-page) .service-panel--navigation .service-panel-art {
    justify-self: end;
    inset: auto 0 0 auto;
    width: 66%;
    height: 100%;
    object-position: right bottom;
  }
  :where(body.home-page) .service-panel--navigation .service-panel-art {
    transform: scaleX(-1);
  }
}
.home-page :is(#services, #services-navigation) .service-panel--slim {
  --service-heading-size: clamp(1.5rem, 2.8cqi, 1.875rem);
  --service-title-edge: calc(28px + 9.32 * var(--service-heading-size));
  display: grid;
  grid-template-columns: clamp(300px, 34cqi, 360px) minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  aspect-ratio: auto;
  min-height: 0;
  height: 150px;
  overflow: visible;
  background: transparent;
  border-radius: 0;
}
.home-page :is(#services, #services-navigation) .service-panel--slim::before {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  height: 92px;
  transform: none;
  background: var(--respite-deep-20);
  border-radius: var(--r);
  z-index: -1;
}
.home-page
  :is(#services, #services-navigation)
  .service-panel--navigation.service-panel--slim::before {
  background: var(--navigation-deep-20);
}
.home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-copy {
  grid-area: 1/1;
  justify-self: start;
  align-self: end;
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 28px;
  text-align: left;
  background: transparent;
}
.home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-copy h3 {
  font-size: var(--service-heading-size);
  line-height: 1.15;
  letter-spacing: -0.035em;
}
.home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-copy p {
  margin: 7px 0 0;
  font-size: var(--fs-body);
  line-height: 1.4;
}
.home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-visual {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--service-title-edge);
  right: 0;
  width: auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-width: 0;
  min-height: 0;
  pointer-events: none;
}
.home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-art {
  position: static;
  display: block;
  align-self: flex-end;
  width: min(100%, 247.5px);
  height: auto;
  max-width: none;
  max-height: none;
  object-fit: contain;
  object-position: center;
  margin: 0;
  transform: none;
}
.home-page
  :is(#services, #services-navigation)
  .service-panel--navigation.service-panel--slim
  .service-panel-art {
  transform: translateX(4.363636%);
}
@media (min-width: 721px) {
  .home-page :is(#services, #services-navigation) .service-panel--slim .service-panel-visual {
    justify-content: flex-end;
    padding-right: clamp(24px, 4vw, 64px);
  }
}
.home-page main > :is(#services, #services-navigation) {
  background: var(--paper);
}
.home-page :is(#services, #services-navigation) .service-stack {
  background: #fff;
}
.home-page main > .home-possibilities {
  background: #fff;
}
.home-page main > .band--team-feature,
.home-page main > .band--care-specialists {
  background: var(--paper);
}
.home-page main > .home-service-region {
  background: #fff;
}
@media (min-width: 1121px) {
  :where(body.home-page) .service-panel {
    aspect-ratio: 3.7/1;
    min-height: 14rem;
  }
}
@media (max-width: 720px) {
  :where(body.home-page) .site-footer {
    padding: 26px 0 20px;
  }
  :where(body.home-page) .site-footer .footer-grid {
    gap: 20px 18px;
  }
  :where(body.home-page) .site-footer .footer-logo {
    height: 24px;
  }
  :where(body.home-page) .site-footer .footer-brand p {
    font-size: var(--fs-small);
    margin-top: 12px;
    max-width: none;
  }
  :where(body.home-page) .site-footer .footer-brand .footer-region,
:where(body.home-page) .site-footer .footer-brand .footer-pay {
    margin-top: 8px;
  }
  :where(body.home-page) .site-footer .footer-col h2 {
    margin-bottom: 6px;
    font-size: var(--fs-label);
  }
  :where(body.home-page) .site-footer .footer-col > a {
    font-size: var(--fs-body);
    min-height: 40px;
    padding: 8px 0;
  }
  :where(body.home-page) .site-footer .footer-contact {
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px;
    align-items: center;
  }
  :where(body.home-page) .site-footer .footer-contact h2,
:where(body.home-page) .site-footer .footer-contact > a:first-of-type {
    flex-basis: 100%;
  }
  :where(body.home-page) .site-footer .footer-contact p {
    margin: 8px 0 0;
    flex-basis: 100%;
  }
  :where(body.home-page) .site-footer .footer-social {
    margin-top: 10px;
  }
  :where(body.home-page) .site-footer .footer-legal {
    margin-top: 20px;
    padding-top: 16px;
    gap: 12px;
  }
  .home-page .possibilities-panel {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
  }
  .home-page .ordinary-thursday {
    padding: 20px;
    border-radius: var(--r);
  }
  .home-page .ordinary-thursday .ordinary-thursday-head {
    background: transparent;
    color: var(--ink);
    padding: 0;
    margin: 0 0 18px;
    border: 0;
  }
  .home-page .ordinary-thursday .ordinary-thursday-head h3,
.home-page .ordinary-thursday .ordinary-thursday-head p {
    color: var(--ink);
  }
}
@media (max-width: 720px) {
  .home-page .ordinary-thursday .day-strip {
    margin: 18px 0 0;
  }
}
.home-page :is(#services, #services-navigation) .service-overview {
  row-gap: 24px;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation {
  margin-top: 36px;
  padding-top: 0;
}
.home-page :is(#services, #services-navigation) .service-overview--navigation::before {
  display: none;
}
.home-page :is(#services, #services-navigation) .home-service-body .home-pricing-label {
  display: block;
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--navy);
}
.home-page :is(#services, #services-navigation) .home-service-body--refined {
  grid-template-areas: "life support" "footer footer";
  gap: 24px 36px;
}
.home-page
  :is(#services, #services-navigation)
  .home-service-body--navigation.home-service-body--refined {
  grid-template-areas: "prose scope" "footer footer";
}
.home-page :is(#services, #services-navigation) .home-service-body--refined .home-navigation-copy {
  padding-left: 0;
  border-left: 0;
}
.home-page :is(#services, #services-navigation) .home-service-body--refined .home-care-support,
.home-page :is(#services, #services-navigation) .home-service-body--refined .home-navigation-scope {
  padding-left: 28px;
  border-left: 1px solid var(--respite-deep-20);
}
.home-page :is(#services, #services-navigation) .home-service-footer {
  grid-area: footer;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: "price action";
  align-items: center;
  gap: 24px 36px;
}
.home-page :is(#services, #services-navigation) .home-service-footer .home-care-pricing {
  border: 0;
  padding: 0;
}
.home-page :is(#services, #services-navigation) .home-service-footer .home-service-actions {
  align-self: center;
  justify-content: flex-end;
  border: 0;
  padding: 0;
}
.home-page :is(#services, #services-navigation) .home-care-price-card {
  background: #fff;
  border-color: var(--respite-deep-30);
}
.home-page :is(#services, #services-navigation) .home-navigation-pricing {
  background: #fff;
  border: 1px solid var(--navigation-deep-30);
}
.home-page :is(#services, #services-navigation) .home-service-button {
  background: var(--respite-deep-20);
  border: 1px solid var(--respite-deep-50);
  color: var(--navy);
  width: 260px;
  max-width: 100%;
  justify-content: center;
}
.home-page :is(#services, #services-navigation) .home-navigation-actions .home-service-button {
  background: var(--navigation-deep-20);
  border-color: var(--sage-50);
}
.home-page :is(#services, #services-navigation) .home-service-button:hover {
  background: var(--respite-deep-30);
  filter: none;
}
.home-page :is(#services, #services-navigation) .home-navigation-actions .home-service-button:hover {
  background: var(--sage-30);
}
@media (min-width: 1121px) {
  .home-page :is(#services, #services-navigation) .home-service-footer .home-care-price-card,
.home-page :is(#services, #services-navigation) .home-service-footer .home-navigation-pricing > p {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 2px 18px;
    align-items: center;
  }
  .home-page :is(#services, #services-navigation) .home-service-footer .home-care-price-card,
.home-page :is(#services, #services-navigation) .home-service-footer .home-navigation-pricing {
    padding: 14px 18px;
  }
  .home-page :is(#services, #services-navigation) .home-service-footer .home-pricing-label {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
  }
  .home-page :is(#services, #services-navigation) .home-service-footer .home-care-price-card h4,
.home-page
    :is(#services, #services-navigation)
    .home-service-footer
    .home-navigation-pricing
    strong {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    font-size: var(--fs-lede);
  }
  .home-page
    :is(#services, #services-navigation)
    .home-service-footer
    .home-care-price-card
    > p:not(.home-pricing-label),
.home-page
    :is(#services, #services-navigation)
    .home-service-footer
    .home-navigation-pricing
    span:not(.home-pricing-label) {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin: 0;
    font-size: var(--fs-small);
    line-height: 1.45;
  }
}
.home-page .trust-strip--three {
  padding: 10px 0 0;
}
.home-page .trust-strip--three .trust-badges {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: min(1120px, calc(100% - 32px));
  margin-inline: auto;
  align-items: center;
}
.home-page .trust-strip--three .trust-badge {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 78px;
  padding: 0 22px;
  box-sizing: border-box;
  min-width: 0;
}
.home-page .trust-strip--three .trust-badge + .trust-badge::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16%;
  bottom: 16%;
  width: 1px;
  background: var(--respite-deep-30);
}
.home-page .trust-strip--three .trust-badge img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 78px;
  object-fit: contain;
}
.home-page .trust-strip--three .trust-badge--partner img {
  max-width: 245px;
}
.home-page .trust-strip--three .trust-badge:focus-visible {
  outline: 3px solid var(--respite-deep-shade-60);
  outline-offset: -3px;
  border-radius: var(--r-sm);
}
.home-page .trust-strip--three::after {
  margin-top: 10px;
}
@media (max-width: 720px) {
  .home-page .trust-strip--three {
    padding-top: 6px;
  }
  .home-page .trust-strip--three .trust-badges {
    width: calc(100% - 16px);
  }
  .home-page .trust-strip--three .trust-badge {
    height: 48px;
    padding: 0 7px;
  }
  .home-page .trust-strip--three .trust-badge img {
    max-height: 48px;
  }
  .home-page .trust-strip--three::after {
    margin-top: 6px;
  }
}
.home-page :is(#services, #services-navigation) .home-service-body--care.home-service-body--refined {
  grid-template-areas: "life support" "specialty specialty" "footer footer";
}
.home-page :is(#services, #services-navigation) .home-care-specialty {
  grid-area: specialty;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 36px;
  border-top: 1px solid var(--respite-deep-20);
  padding-top: 24px;
  min-width: 0;
}
.home-page :is(#services, #services-navigation) .home-care-specialty > section + section {
  border-left: 1px solid var(--respite-deep-20);
  padding-left: 28px;
}
/* Company introduction before the existing service chapters. */
.home-page :is(#services, #services-navigation) .home-company-intro {
  line-height: 1.6;
}
.home-page :is(#services, #services-navigation) .home-company-intro p {
  font-size: inherit;
  line-height: inherit;
  margin: 0 0 18px;
}
.home-page :is(#services, #services-navigation) .home-company-intro p:last-child {
  margin-bottom: 0;
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .home-company-intro {
    line-height: 1.55;
  }
}
/* Company introduction: titled two-column opening, aligned to the service card edges */
.home-page :is(#services, #services-navigation) .home-company-intro {
  max-width: none;
  margin: 0 0 40px;
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  column-gap: 56px;
  align-items: start;
  font-size: inherit;
  color: inherit;
}
.home-page :is(#services, #services-navigation) .home-company-intro-title {
  margin: 0;
  font-family: var(--nw-display);
  font-size: clamp(1.75rem, 2.3vw, 2.15rem);
  line-height: 1.12;
  letter-spacing: -0.035em;
  color: var(--navy);
}
.home-page :is(#services, #services-navigation) .home-company-intro-title span {
  display: block;
}
.home-page :is(#services, #services-navigation) .home-company-intro-copy p {
  margin: 0 0 16px;
  font-size: var(--fs-body);
  line-height: 1.6;
  color: var(--ink, var(--slate));
}
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .home-company-intro {
    grid-template-columns: 1fr;
    row-gap: 16px;
    margin-bottom: 32px;
  }
}
/* Service chapters: body copy starts at the same edge as the panel title */
.home-page :is(#services, #services-navigation) .service-overview > .home-service-body--refined {
  padding-inline: 28px;
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-overview > .home-service-body--refined {
    padding-inline: 14px;
  }
}
/* Home restructure */
:where(body.home-page) .home-people .team-heading p {
  max-width: 60ch;
}
:where(body.home-page) .home-people-profiles {
  padding-top: 0;
}
:where(body.home-page) .home-people-profiles .specialists-intro--label {
  display: block;
  margin: 0 0 20px;
}
:where(body.home-page) .home-people-profiles .specialists-label {
  margin: 0;
  font-family: var(--nw-display);
  font-size: var(--fs-lede);
  line-height: 1.3;
  color: var(--navy);
}
body:where(.home-page) .band.home-support {
  background: #fff;
}
body:where(.home-page) .band.home-service-region {
  background: var(--cream, var(--paper));
}
:where(body.home-page) .home-support .team-heading {
  margin-bottom: 32px;
}
:where(body.home-page) .home-support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 40px;
}
:where(body.home-page) .home-support-item {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  column-gap: 14px;
  row-gap: 6px;
  align-content: start;
  padding-top: 20px;
  border-top: 1px solid rgba(27, 42, 74, 0.12);
}
:where(body.home-page) .home-support-item svg {
  grid-row: 1;
  width: 22px;
  height: 22px;
  margin-top: 2px;
  color: var(--navy);
}
:where(body.home-page) .home-support-item h3 {
  grid-column: 2;
  margin: 0;
  font-family: var(--nw-display);
  font-size: var(--fs-body);
  line-height: 1.3;
  color: var(--navy);
}
:where(body.home-page) .home-support-item p {
  grid-column: 2;
  margin: 0;
  font-size: var(--fs-body);
  line-height: 1.55;
}
:where(body.home-page) .home-support-more {
  margin: 28px 0 0;
}
@media (max-width: 1120px) {
  :where(body.home-page) .home-support-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  :where(body.home-page) .home-support-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
@media (max-width: 720px) {
  body:where(.home-page) .band#services-navigation {
    padding-bottom: 40px;
  }
}
/* spacing rhythm: one band padding for every content section on Home */
body:where(.home-page).home-page main > .band.home-people {
  padding-top: 64px;
  padding-bottom: 28px;
}
body:where(.home-page).home-page main > .band.home-people-profiles {
  padding-top: 28px;
  padding-bottom: 64px;
}
body:where(.home-page).home-page main > .band.home-support {
  padding-top: 64px;
  padding-bottom: 64px;
}
body:where(.home-page).home-page main > .band.home-possibilities {
  padding-top: 64px;
  padding-bottom: 64px;
}
body:where(.home-page).home-page main > .band.home-service-region {
  padding-top: 64px;
  padding-bottom: 64px;
}
body:where(.home-page).home-page main > .band .team-heading h2 + p {
  margin-top: 12px;
}
@media (max-width: 720px) {
  body:where(.home-page).home-page main > .band.home-people {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  body:where(.home-page).home-page main > .band.home-people-profiles {
    padding-top: 20px;
    padding-bottom: 40px;
  }
  body:where(.home-page).home-page main > .band.home-support,
body:where(.home-page).home-page main > .band.home-possibilities,
body:where(.home-page).home-page main > .band.home-service-region {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media (min-width: 721px) {
  body:where(.home-page).home-page main > .band#services,
body:where(.home-page).home-page main > .band#services-navigation {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
.home-page #services .intro-v {
  align-items: start;
}
.home-page #services .intro-v-lead {
  margin: 22px 0 0;
  max-width: 30ch;
  font-family: var(--nw-display);
  font-size: clamp(1.15rem, 1.5vw, 1.35rem);
  line-height: 1.45;
  font-weight: 600;
  color: var(--navy);
  padding-left: 18px;
  border-left: 3px solid var(--coral, var(--coral));
}
.home-page #services .intro-v .home-company-intro-copy strong {
  color: var(--navy);
  font-weight: 700;
}
@media (max-width: 1120px) {
  .home-page #services .intro-v-lead {
    margin-top: 16px;
    max-width: none;
  }
}
.home-page #services .intro-v .intro-v-left .intro-v-lead {
  margin: 24px 0 0;
}
@media (max-width: 1120px) {
  .home-page #services .intro-v .intro-v-left .intro-v-lead {
    margin-top: 18px;
  }
}
.home-page #services .intro-v-lead .intro-v-lead-2 {
  display: block;
  margin-top: 12px;
}
@media (max-width: 1120px) {
  .home-page #services .intro-v .intro-v-left {
    margin-bottom: 12px;
  }
}
/* intro: right column bottom-aligns with the left lead */
.home-page #services .intro-v .home-company-intro-copy {
  align-self: end;
}
@media (max-width: 1120px) {
  .home-page #services .intro-v .home-company-intro-copy {
    align-self: auto;
  }
}
/* ── Split head (sitewide component; same block in interior.css) ──
   Heading on its own line; under it, a two-column row whose columns match the grid below.
   Left: the intro. Right: the section's key line (.pull-line) or the intro's second paragraph.
   Bottoms align. Stacks at 900px. Use it when an intro would run four or more lines with
   nothing beside it. */
.home-page .split-head .split-head-row {
  display: grid;
  grid-template-columns: var(--split-cols, minmax(0, 1fr) minmax(0, 1fr));
  column-gap: var(--split-gap, 40px);
  margin-top: 12px;
}
.home-page .split-head .split-head-row p {
  max-width: none;
  margin: 0;
}
.home-page .split-head .pull-line {
  font-family: var(--nw-display);
  font-size: clamp(1.05rem, 1.35vw, 1.2rem);
  line-height: 1.45;
  font-weight: 600;
  color: var(--navy);
  padding-left: 18px;
  border-left: 3px solid var(--coral, var(--coral));
}
.home-page .split-head--home {
  --split-cols: minmax(0, 1.18fr) minmax(0, 1fr);
  --split-gap: 48px;
}
.home-page .possibilities-copy.split-head h2 {
  margin: 0;
}
@media (max-width: 1120px) {
  .home-page .split-head--home {
    --split-gap: 24px;
  }
}
@media (max-width: 720px) {
  .home-page .split-head .split-head-row {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }
}
/* Help beyond childcare: the panel art sits above the green bar; pull the panel up so the bar,
   not the art box, sits the standard heading-to-content distance (32px) below the heading. */
.home-page #services-navigation .service-stack > .sec-head--solo {
  margin-bottom: 0;
}
.home-page #services-navigation .sec-head--solo + .service-overview--navigation {
  margin-top: -26px;
}
@media (max-width: 720px) {
  .home-page #services-navigation .sec-head--solo + .service-overview--navigation {
    margin-top: -8px;
  }
}
/* Split head: paragraphs top-align; a key line (pull-line) bottom-aligns with the intro. */
.home-page .split-head .split-head-row {
  align-items: start;
}
.home-page .split-head .split-head-row:has(> .pull-line) {
  align-items: end;
}
/* Closing CTA uses the same padding as the interior pages. */
@media (min-width: 721px) {
  .home-page .cta {
    padding: 48px 0;
  }
}
/* Care card: the panel art reserved 58px of empty card above the Care Services bar, so the bar sat
   82px below the card's top edge against a 44px side inset. Let the art rise past the card edge so
   the bar sits at the same inset as the sides. */
@media (min-width: 721px) {
  .home-page #services .service-stack {
    overflow: visible;
  }
  .home-page #services .service-stack > .service-overview--care {
    margin-top: -38px;
  }
}
/* Profile cards: names line up across the three cards (top-aligned instead of centred on the photo). */
.home-page .people--compact .person-identity .person-heading {
  align-self: start;
}
/* Trust strip: the new award mark is cropped to its edges, so size it to the same visible height as the others. */
.home-page .trust-strip .trust-badge--award img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 56px;
}
@media (max-width: 1120px) {
  .home-page .trust-strip .trust-badge--award img {
    max-height: 52px;
  }
}
@media (max-width: 720px) {
  .home-page .trust-strip .trust-badge--award img {
    max-height: none;
    width: 100%;
  }
}
/* ── Home sitter comparison ──
   Heading across; lede over the first two columns, the key claim over the Novinway column.
   Each cell leads with a short verdict so rows read across at a glance; detail sits under it. */
.home-page #services .home-compare {
  margin: 8px 0 48px;
  padding: 32px 32px 8px;
  border-radius: var(--r-lg);
  background: #fff;
  box-shadow: 0 0 0 1px rgba(27, 42, 74, 0.07);
}
.home-page #services .home-compare-title {
  margin: 0 0 14px;
  font: 800 clamp(1.375rem, 2vw, 1.75rem)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
@media (max-width: 1120px) {
  .home-page #services .home-compare {
    padding: 24px 20px 6px;
  }
}
@media (max-width: 720px) {
  .home-page #services .home-compare {
    margin: 4px 0 32px;
    padding: 20px 14px 6px;
    border-radius: var(--r);
  }
  .home-page #services .home-compare-title {
    font-size: var(--fs-h3);
    margin-bottom: 10px;
  }
}
/* mockup shared */
:where(body.home-page) .m-ic {
  width: 20px;
  height: 20px;
  flex: none;
  vertical-align: middle;
}
:where(body.home-page) .m-ic--yes {
  fill: var(--navy);
  stroke: #fff;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
:where(body.home-page) .m-ic--no {
  fill: none;
  stroke: var(--slate-light);
  stroke-width: 1.6;
  stroke-linecap: round;
}
:where(body.home-page) .m-ic--some {
  fill: var(--slate-light);
  stroke: var(--slate-light);
  stroke-width: 1.4;
}
:where(body.home-page) .m-ic--some circle {
  fill: none;
}
:where(body.home-page) .m-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 24px;
  flex-wrap: wrap;
  margin: 10px 0 20px;
  padding-top: 16px;
}
:where(body.home-page) .m-foot p {
  margin: 0;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--navy);
}
@media (max-width: 720px) {
  :where(body.home-page) .m-foot p {
    font-size: var(--fs-body);
  }
}
:where(body.home-page) .mC {
  margin: 8px 0 48px;
  padding: 28px 28px 8px;
  border-radius: var(--r-lg);
  background: #fff;
  box-shadow: 0 0 0 1px rgba(27, 42, 74, 0.07);
}
:where(body.home-page) .mC-head {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 32px;
  align-items: end;
  margin-bottom: 22px;
}
:where(body.home-page) .mC .home-compare-title {
  margin: 0 0 6px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
:where(body.home-page) .mC-lede {
  margin: 0;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--slate);
}
:where(body.home-page) .mC-claim {
  margin: 0;
  padding-left: 16px;
  border-left: 3px solid var(--coral);
  font: 700 var(--fs-body)/1.4 var(--nw-display);
  color: var(--navy);
}
:where(body.home-page) .mC-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}
:where(body.home-page) .mC-table thead td {
  width: 34%;
}
:where(body.home-page) .mC-table thead th {
  padding: 10px 8px;
  text-align: center;
  vertical-align: bottom;
  font: 700 var(--fs-label)/1.25 var(--nw-text);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--slate-light-shade-60);
}
:where(body.home-page) .mC-table thead .us {
  background: var(--navy);
  color: #fff;
  border-radius: var(--r) var(--r) 0 0;
  font-size: var(--fs-small);
}
:where(body.home-page) .mC-table tbody th {
  padding: 12px 12px 12px 0;
  text-align: left;
  font: 600 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
  border-top: 1px solid rgba(27, 42, 74, 0.08);
}
:where(body.home-page) .mC-table td {
  padding: 10px 8px;
  text-align: center;
  border-top: 1px solid rgba(27, 42, 74, 0.08);
}
:where(body.home-page) .mC-table td span {
  display: block;
  margin-top: 2px;
  font: 600 var(--fs-label)/1.2 var(--nw-text);
  color: var(--slate-light-shade-80);
}
:where(body.home-page) .mC-table td:last-child {
  background: var(--periwinkle-20);
  border-top-color: rgba(27, 42, 74, 0.05);
}
:where(body.home-page) .mC-table td:last-child span {
  color: var(--navy);
}
:where(body.home-page) .mC-table tr:last-child td:last-child {
  border-radius: 0 0 var(--r) var(--r);
}
:where(body.home-page) .mC-table .m-ic {
  width: 22px;
  height: 22px;
}
:where(body.home-page) .mC-key th {
  font-weight: 800;
}
:where(body.home-page) .mC-key td:last-child {
  background: var(--respite-deep-20);
}
@media (max-width: 720px) {
  :where(body.home-page) .mC {
    padding: 18px 12px 6px;
  }
  :where(body.home-page) .mC-head {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  :where(body.home-page) .mC-table thead td {
    width: 34%;
  }
  :where(body.home-page) .mC-table thead th {
    font-size: var(--fs-label);
    padding: 8px 4px;
  }
  :where(body.home-page) .mC-table tbody th {
    font-size: var(--fs-label);
    padding: 10px 6px 10px 0;
  }
  :where(body.home-page) .mC-table td {
    padding: 8px 2px;
  }
  :where(body.home-page) .mC-table td span {
    font-size: var(--fs-label);
  }
  :where(body.home-page) .mC-table .m-ic {
    width: 18px;
    height: 18px;
  }
}
:where(body.home-page) .mC-table td > .m-ic {
  display: block;
  margin: 0 auto;
}
@media (max-width: 720px) {
  :where(body.home-page) .mC-table thead .us {
    font-size: var(--fs-label);
    letter-spacing: 0.02em;
    padding: 8px 2px;
  }
}
/* Trust strip: the clinician badge is the icon plus live text, so the words are real page text. */
@media (min-width: 1121px) {
  :where(body.home-page) .mC-head {
    grid-template-columns: 1fr 400px;
  }
}
/* ── Hero DC skyline ── */
.home-page .hero--home {
  background: var(--navy, var(--navy));
}
.home-page .hero.hero--home > .hero-art {
  inset: 0;
  height: auto;
  align-self: stretch;
  justify-self: stretch;
}
.home-page .hero.hero--home > .hero-art picture {
  display: block;
  position: absolute;
  inset: 0;
}
.home-page .hero.hero--home > .hero-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-page .hero--home .hero-grid {
  z-index: 2;
}
:where(body.home-page) .hero-skyline {
  position: relative;
  z-index: 1;
  margin-top: -70px;
  pointer-events: none;
  line-height: 0;
}
:where(body.home-page) .hero-skyline img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 1120px) {
  :where(body.home-page) .hero-skyline {
    margin-top: -78px;
  }
}
:where(body.home-page) .hero-skyline picture {
  display: block;
}
@media (max-width: 720px) {
  :where(body.home-page) .hero-skyline {
    margin-top: 4px;
  }
}
/* Short laptop screens: trim the space above the hero text so the trust strip reaches the fold. Text-to-skyline gap is unchanged. */
@media (min-width: 1121px) and (max-height: 880px) {
  .home-page .hero.hero--home .hero-grid {
    height: calc(clamp(420px, 50vh, 520px) - 56px);
  }
  .home-page .hero.hero--home .hero-copy {
    padding-bottom: 80px;
  }
}
/* ── Trust strip as a translucent warm-white band over the bottom of the water ── */
.home-page .hero--home .trust-strip--overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  margin: 0;
}
.home-page .hero--home .trust-strip--overlay .trust-badges {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.home-page .hero--home .trust-strip--overlay .trust-badge {
  padding: 0 28px;
}
.home-page .hero--home .trust-strip--overlay::after {
  margin-top: 4px;
}
@media (max-width: 720px) {
  .home-page .hero--home .trust-strip--overlay .trust-badge {
    padding: 0 12px;
  }
  .home-page .hero--home .trust-strip--overlay::after {
    margin-top: 2px;
  }
}
/* ── Comparison inside the Care Services card: explain Care, then compare, then price ── */
.home-page #services .service-overview > .home-service-body--care.home-service-body--refined {
  grid-template-areas: "life support" "specialty specialty" "compare compare" "footer footer";
}
.home-page #services .home-service-body--care > .home-compare {
  grid-area: compare;
  margin: 8px 0 0;
  padding: 32px 0 0;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  border-top: 1px solid rgba(27, 42, 74, 0.12);
}
.home-page #services .home-service-body--care > .home-compare .m-foot {
  justify-content: flex-start;
}
@media (max-width: 720px) {
  .home-page #services .service-overview > .home-service-body--care.home-service-body--refined {
    grid-template-areas: "life" "support" "specialty" "compare" "footer";
  }
  .home-page #services .home-service-body--care > .home-compare {
    padding-top: 24px;
    margin-top: 24px;
  }
  .home-page #services .service-overview > .home-service-body--care.home-service-body--refined {
    row-gap: 0;
  }
  .home-page #services .service-overview > .home-service-body--care .home-care-specialty {
    border-top: 0;
    padding-top: 0;
    gap: 0;
  }
  .home-page #services .service-overview > .home-service-body--care .home-service-footer {
    margin-top: 24px;
  }
}
.home-page #services .home-service-body--care .mC-claim {
  font: 700 var(--fs-body)/1.4 var(--nw-display);
  color: var(--navy);
}
@media (min-width: 1121px) {
  .home-page #services .home-service-body--care .mC-head {
    grid-template-columns: 1fr 340px;
  }
  .home-page #services .home-service-body--care .home-compare-title {
    font-size: var(--fs-h3);
  }
}
@media (min-width: 1121px) {
  .home-page #services .home-service-body--care .mC-head {
    grid-template-columns: 1fr 400px;
  }
  .home-page #services .home-service-body--care .home-compare-title {
    white-space: nowrap;
  }
}
/* ── Tighter Home hero: location under the H1, Monument rises beside the CTA ── */
@media (min-width: 1121px) {
  .home-page .hero.hero--home .hero-grid {
    height: auto;
    min-height: 0;
  }
  .home-page .hero.hero--home .hero-copy {
    padding-top: 56px;
    padding-bottom: 0;
  }
  .home-page .hero.hero--home .home-hero-primary .home-service-area {
    margin: 18px 0 0;
  }
  :where(body.home-page) .hero-skyline {
    margin-top: var(--sky-lift, -92px);
    overflow: hidden;
  }
  :where(body.home-page) .hero-skyline img {
    width: 108%;
    max-width: none;
    margin-left: -1%;
  }
}
@media (min-width: 1600px) {
  :where(body.home-page) .hero-skyline img {
    width: 100%;
    margin-left: 0;
  }
}
/* Care card footer lines up with the comparison table: pricing spans the first three columns, the button sits under the Novinway column */
@media (min-width: 721px) {
  .home-page #services .service-overview > .home-service-body--care > .home-compare {
    margin-top: 20px;
    padding-top: 44px;
  }
  .home-page #services .service-overview > .home-service-body--care .home-service-footer {
    grid-template-columns: minmax(0, 1fr) 22.05%;
    column-gap: 16px;
    align-items: stretch;
    margin-top: 0;
  }
  .home-page #services .home-service-body--care .home-care-pricing {
    display: flex;
  }
  .home-page #services .home-service-body--care .home-care-price-card {
    flex: 1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas: "label desc" "price desc";
    column-gap: 24px;
    align-items: center;
    padding: 12px 20px;
  }
  .home-page #services .home-service-body--care .home-care-price-card .home-pricing-label {
    grid-area: label;
    margin: 0;
  }
  .home-page #services .home-service-body--care .home-care-price-card h4 {
    grid-area: price;
    margin: 0;
  }
  .home-page #services .home-service-body--care .home-care-price-card p:last-child {
    grid-area: desc;
    margin: 0;
    padding-left: 24px;
    border-left: 1px solid rgba(27, 42, 74, 0.14);
    text-wrap: pretty;
  }
  .home-page #services .home-service-body--care .home-care-actions {
    display: flex;
    margin: 0;
    align-self: stretch;
    align-items: stretch;
    justify-content: stretch;
  }
  .home-page #services .home-service-body--care .home-service-button {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: auto;
    min-height: 0;
    width: 100%;
    box-sizing: border-box;
    white-space: nowrap;
  }
  .home-page #services .service-overview > .home-service-body--care > .home-compare {
    padding-bottom: 0;
  }
  .home-page #services .service-overview > .home-service-body--care > .home-compare .m-foot {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .home-page #services .home-service-body--care .home-service-button {
    font-size: var(--fs-label);
    padding-inline: 10px;
  }
}
/* Care and Navigation cards keep their card shape on tablets and phones */
@media (max-width: 1120px) {
  .home-page :is(#services, #services-navigation) .service-stack {
    padding: 24px 28px 28px;
    border-radius: var(--r-lg);
    overflow: visible;
  }
  .home-page :is(#services, #services-navigation) .service-overview {
    padding: 0;
  }
  .home-page #services .service-stack {
    margin-top: 40px;
  }
}
@media (max-width: 720px) {
  .home-page :is(#services, #services-navigation) .service-stack {
    padding: 18px 14px 22px;
    border-radius: var(--r);
  }
  .home-page :is(#services, #services-navigation) .home-service-body {
    padding-inline: 14px;
  }
  .home-page #services .service-stack {
    margin-top: 28px;
  }
}
/* Tablet: the Care topic rows share one column grid */
@media (min-width: 721px) and (max-width: 1120px) {
  .home-page #services .service-overview > .home-service-body--care.home-service-body--refined {
    column-gap: 36px;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .home-page #services .service-overview > .home-service-body--care > .home-care-support {
    padding-left: 28px;
    border-left: 1px solid var(--respite-deep-20);
  }
}
@media (max-width: 720px) {
  .home-page #services .home-service-body--care .home-care-actions {
    display: flex;
  }
  .home-page #services .home-service-body--care .home-service-button {
    flex: 1;
    justify-content: center;
  }
}
.home-page .hero--home .home-service-area svg {
  color: var(--coral, var(--coral));
  stroke: currentColor;
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .home-page .hero--home .trust-strip--overlay {
    background: color-mix(in srgb, var(--coral-10) 82%, transparent);
  }
}
/* Trust strip: plain white at ~50% over the water, no blur; white halo keeps logos readable */
.home-page .hero--home .trust-strip--overlay {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-top: 0;
}
/* Trust logos sit directly on the water, no band: white halo carries legibility */
.home-page .hero--home .trust-strip--overlay {
  background: transparent;
  padding: 0 0 10px;
}
.home-page .hero--home .trust-strip--overlay::after {
  display: none;
}
.home-page .hero--home .trust-strip--overlay .trust-badge {
  height: 56px;
}
.home-page .hero--home .trust-strip--overlay .trust-badge img {
  max-height: 50px;
  filter: drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff)
    drop-shadow(0 0 12px rgba(255, 255, 255, 0.9));
}
.home-page .hero--home .trust-strip--overlay .trust-badge + .trust-badge::before {
  background: rgba(255, 255, 255, 0.75);
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.8);
}
@media (max-width: 720px) {
  .home-page .hero--home .trust-strip--overlay {
    padding-bottom: 6px;
  }
  .home-page .hero--home .trust-strip--overlay .trust-badge {
    height: 40px;
  }
  .home-page .hero--home .trust-strip--overlay .trust-badge img {
    max-height: 34px;
  }
}
/* No divider between the logos on the water; spacing alone separates them */
.home-page .hero--home .trust-strip--overlay .trust-badge + .trust-badge::before {
  content: none;
  display: none;
}
.home-page .hero--home .trust-strip--overlay .trust-badges {
  width: min(680px, calc(100% - 32px));
  column-gap: 40px;
}
@media (max-width: 720px) {
  .home-page .hero--home .trust-strip--overlay .trust-badges {
    column-gap: 12px;
  }
}
/* Trust logos live inside the skyline and center in the water band at every width */
.home-page .hero--home .hero-skyline {
  position: relative;
}
.home-page .hero--home .hero-skyline .trust-strip--overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: auto;
  bottom: 0;
  height: var(--water, 27.8%);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  line-height: normal;
  z-index: 3;
}
.home-page .hero--home .hero-skyline .trust-strip--overlay .trust-badges {
  margin-block: 0;
}
.home-page .hero--home .hero-skyline {
  --water: 27.8%;
}
@media (min-width: 721px) and (max-width: 1120px) {
  .home-page .hero--home .hero-skyline {
    --water: 35.3%;
  }
}
@media (max-width: 720px) {
  .home-page .hero--home .hero-skyline {
    --water: 29.9%;
  }
}
/* Tablet hero centers like the phone */
@media (min-width: 721px) and (max-width: 1120px) {
  .home-page .hero.hero--home .hero-copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-inline: auto;
    max-width: 704px;
  }
  .home-page .hero.hero--home :is(.home-hero-primary, .home-hero-secondary, h1, .hero-audience) {
    text-align: center;
    margin-inline: auto;
  }
  .home-page .hero.hero--home .hero-lede {
    text-align: center;
    margin-inline: auto;
    max-width: 608px;
  }
  .home-page .hero.hero--home :is(.btn-row, .home-service-area) {
    justify-content: center;
  }
}
/* Same-background neighbors: the Care card section and the people section share cream,
   so the joint gets tighter spacing and a hairline instead of 165px of empty cream */
.home-page main > #services.band {
  padding-bottom: 56px !important;
}
.home-page main > .band.band--team-feature {
  padding-top: 0 !important;
}
.home-page main > .band--team-feature::before {
  content: "";
  display: block;
  width: min(var(--shell, 1160px), calc(100% - 2 * var(--gutter, 48px)));
  height: 1px;
  margin: 0 auto 56px;
  background: rgba(27, 42, 74, 0.14);
}
@media (max-width: 720px) {
  .home-page main > #services.band {
    padding-bottom: 36px !important;
  }
  .home-page main > .band--team-feature::before {
    width: calc(100% - 36px);
    margin-bottom: 36px;
  }
}
/* Phone: the comparison fits one screen, title through the last row */
@media (max-width: 720px) {
  .home-page #services .home-compare .mC-head {
    gap: 8px;
    margin-bottom: 10px;
  }
  .home-page #services .home-compare .home-compare-title {
    font-size: var(--fs-h3);
    line-height: 1.2;
    margin: 0 0 4px;
  }
  .home-page #services .home-compare .mC-lede {
    display: none;
  }
  .home-page #services .home-compare .mC-claim {
    font-size: var(--fs-label);
    line-height: 1.35;
    padding-left: 10px;
  }
  .home-page #services .home-compare .mC-table thead .us {
    padding: 8px 2px;
    border-radius: var(--r-sm) var(--r-sm) 0 0;
  }
  .home-page #services .home-compare .mC-table tbody th {
    padding: 5px 6px 5px 0;
    line-height: 1.22;
    font-weight: 600;
  }
  .home-page #services .home-compare .mC-table td {
    padding: 4px 2px;
  }
  .home-page #services .home-compare .mC-table .m-ic {
    width: 16px;
    height: 16px;
  }
  .home-page #services .home-compare .mC-table td span {
    margin-top: 1px;
  }
  .home-page #services .home-compare .mC-table tr:last-child td:last-child {
    border-radius: 0 0 var(--r-sm) var(--r-sm);
  }
}
/* Type scale: small-card headings 17px, card body 16px */
.home-page .preparation-point h3 {
  font-size: var(--fs-body);
}
.home-page .preparation-point p,
.home-page .home-support-item p {
  font-size: var(--fs-body);
  line-height: 1.55;
}
.home-page #services .home-compare .mC-lede {
  font-size: var(--fs-body);
}
@media (max-width: 720px) {
  .home-page .preparation-point p,
.home-page .home-support-item p {
    font-size: var(--fs-body);
  }
}
:where(body.home-page) .service-panel-visual > picture {
  display: contents;
}
.home-page .home-service-region .region-row h3 a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, var(--coral) 70%, transparent);
  text-decoration-thickness: 1.5px;
  text-underline-offset: 4px;
}
.home-page .home-service-region .region-row h3 a:hover {
  text-decoration-color: currentColor;
}

/* ===== 3 Interior pages ===== */
:where(body:not(.home-page)) .nw-art img {
  display: block;
  width: 100%;
}
@media (min-width: 1121px) {
  .interior-page .hero.hero--interior {
    position: relative;
    height: auto;
    min-height: 315px;
    padding: 0;
    overflow: hidden;
    border: 0;
    background:
      linear-gradient(rgba(27, 42, 74, 0.3), rgba(27, 42, 74, 0.3)),
      url("images/home-2026/hero-topographic-no-star.webp") center / cover no-repeat var(--navy);
    color: #fff;
  }
  .interior-page .hero.hero--interior::after {
    background: linear-gradient(90deg, transparent 76%, rgba(27, 42, 74, 0.18));
  }
  .interior-page .hero.hero--interior .hero-grid {
    display: flex;
    align-items: center;
    width: min(var(--nw-shell), calc(100% - 2 * var(--nw-gutter)));
    height: auto;
    min-height: 315px;
    margin-inline: auto;
    position: relative;
    z-index: 2;
  }
  .interior-page .hero.hero--interior .hero-copy {
    display: grid;

    gap: 52px;
    align-items: center;
    width: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 44px 0;
    overflow: visible;
  }
  .interior-page .hero.hero--interior .interior-hero-primary,
.interior-page .hero.hero--interior .interior-hero-secondary {
    min-width: 0;
  }
  .interior-page .hero.hero--interior h1 {
    max-width: 13ch;
    margin: 0;
    color: #fff;
    font-family: var(--nw-display);
    font-size: clamp(2.6rem, 3.25vw, 3.2rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.035em;
    text-wrap: balance;
  }
  .interior-page .hero.hero--interior .page-lede {
    margin: 0;
    color: #fff;
    font: 400 var(--fs-body)/1.5 var(--nw-text);
    text-wrap: pretty;
  }
  .interior-page .hero.hero--interior .opening-actions {
    margin-top: 20px;
  }
}
.interior-page .cta {
  background:
    linear-gradient(rgba(27, 42, 74, 0.67), rgba(27, 42, 74, 0.67)),
    url("images/home-2026/divider-topographic-no-star.webp") center / cover no-repeat var(--navy);
}
:where(body:not(.home-page)) .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.interior-page .nw-section {
  padding-block: 64px;
}
:where(body:not(.home-page)) .nw-section :is(ul, ol) {
  font-family: var(--nw-text);
}
:where(body:not(.home-page)) .nw-section .btn {
  border-color: transparent;
}
:where(body:not(.home-page)) .nw-hero-label {
  margin: 0 0 14px;
  font: 700 var(--fs-body)/1.3 var(--nw-text);
  color: var(--periwinkle);
}
:where(body:not(.home-page)) .nw-hero-label--navigation {
  color: var(--sage-light);
}
:where(body:not(.home-page)) .nw-underline {
  position: relative;
  display: inline-block;
  padding-bottom: 0.08em;
}
:where(body:not(.home-page)) .nw-underline::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.12em;
  height: 10px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M3 9 Q200 0 397 9' fill='none' stroke='%23A7BDFF' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")
    center / 100% 100% no-repeat;
}
:where(body:not(.home-page)) .nw-underline--navigation::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M3 9 Q200 0 397 9' fill='none' stroke='%237A9E8A' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
}
:where(body:not(.home-page)) .nw-underline--coral::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M3 9 Q200 0 397 9' fill='none' stroke='%23E8998D' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
}
:where(body:not(.home-page)) .nw-service-area {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 0;
  font: 400 var(--fs-small)/1.3 var(--nw-text);
  color: #fff;
}
:where(body:not(.home-page)) .nw-service-area svg {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  color: var(--coral);
}
.interior-page .hero.hero--interior .interior-hero-secondary {
  border-left: 1px solid rgba(255, 255, 255, 0.28);
  padding-left: 40px;
}
:where(body:not(.home-page)) .nw-hero-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-top: 20px;
}
:where(body:not(.home-page)) .nw-h1-line {
  display: block;
}
.navigation-page .hero.hero--interior h1 {
  max-width: none;
}
:where(body:not(.home-page)) .nw-hero-compact {
  background: var(--nw-topo);
  color: #fff;
  padding-block: 52px 48px;
}
:where(body:not(.home-page)) .nw-hero-compact h1 {
  margin: 0;
  max-width: 22ch;
  font: 800 clamp(2.4rem, 3vw, 3rem)/1.08 var(--nw-display);
  letter-spacing: -0.035em;
  color: #fff;
  text-wrap: balance;
}
:where(body:not(.home-page)) .nw-hero-compact .page-lede {
  margin: 14px 0 0;
  max-width: 46rem;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: #fff;
}
:where(body:not(.home-page)) .nw-hero-compact .nw-note {
  margin: 10px 0 0;
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: rgba(255, 255, 255, 0.82);
}
:where(body:not(.home-page)) .nw-hero-compact .nw-hero-links .alink {
  color: #fff;
}
:where(body:not(.home-page)) .nw-hero-compact-grid {
  display: grid;
  gap: 28px;
  align-items: end;
}
:where(body:not(.home-page)) .nw-head {
  max-width: 46rem;
  margin-bottom: 32px;
}
:where(body:not(.home-page)) .nw-head .nw-lede {
  max-width: 40rem;
}
:where(body:not(.home-page)) .nw-subhead {
  margin: 0 0 12px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-art--painting img {
  max-width: 100%;
}
:where(body:not(.home-page)) .nw-art--panorama {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto -28px;
}
:where(body:not(.home-page)) .nw-item h3 {
  margin: 0 0 6px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-item p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-icon {
  display: block;
  width: 28px;
  height: 28px;
  margin-bottom: 12px;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-moments {
  display: grid;
  gap: 24px 32px;
}
:where(body:not(.home-page)) .nw-moments .nw-item {
  padding-top: 18px;
  border-top: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-fine {
  margin: 24px 0 0;
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-kicker {
  margin: 24px 0 0;
  font: 700 var(--fs-body)/1.5 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-cols-2 {
  display: grid;
  gap: 32px;
}
:where(body:not(.home-page)) .nw-col-title {
  margin: 0 0 4px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--sage);
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .nw-list > li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 4px 14px;
  padding: 16px 0;
  border-bottom: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-list > li .nw-icon {
  margin: 2px 0 0;
  width: 24px;
  height: 24px;
  grid-row: span 2;
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-list h3 {
  margin: 0;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-list p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-list--links {
  max-width: 46rem;
}
:where(body:not(.home-page)) .nw-list--links > li {
  grid-template-columns: 1fr;
}
:where(body:not(.home-page)) .nw-list--links h3 a {
  color: var(--navy);
  text-decoration: underline;
  text-decoration-color: var(--coral);
  text-underline-offset: 4px;
}
:where(body:not(.home-page)) .nw-media {
  margin: 0;
}
:where(body:not(.home-page)) .nw-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--r-lg);
}
:where(body:not(.home-page)) .nw-media figcaption,
:where(body:not(.home-page)) .nw-photo figcaption {
  margin-top: 10px;
  font: 400 var(--fs-label)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-points {
  display: grid;
  gap: 22px;
  margin-top: 28px;
}
:where(body:not(.home-page)) .nw-point {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 4px 16px;
  align-items: start;
}
:where(body:not(.home-page)) .nw-point .nw-icon {
  margin: 0;
  grid-row: span 2;
  width: 26px;
  height: 26px;
}
:where(body:not(.home-page)) .nw-point h3 {
  margin: 0;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-point p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-photos {
  display: grid;
  gap: 24px;
  margin-bottom: 36px;
}
:where(body:not(.home-page)) .nw-photo {
  margin: 0;
}
:where(body:not(.home-page)) .nw-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
  border-radius: var(--r-lg);
}
:where(body:not(.home-page)) .nw-steps {
  display: grid;
  gap: 28px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: step;
}
:where(body:not(.home-page)) .nw-step {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 8px 12px;
  align-items: center;
  align-content: start;
  padding-top: 16px;
  border-top: 2px solid var(--periwinkle);
  counter-increment: step;
}
:where(body:not(.home-page)) .nw-step::before {
  content: counter(step);
  grid-column: 1;
  grid-row: 1;
  font: 800 var(--fs-h3)/1 var(--nw-display);
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-steps--navigation .nw-step {
  border-top-color: var(--sage);
}
:where(body:not(.home-page)) .nw-steps--navigation .nw-step::before {
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-steps--coral .nw-step {
  border-top-color: var(--coral);
}
:where(body:not(.home-page)) .nw-steps--coral .nw-step::before {
  color: var(--nw-coral-ink);
}
:where(body:not(.home-page)) .nw-step h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-step p {
  grid-column: 1/-1;
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) p.nw-price-rate,
:where(body:not(.home-page)) .nw-price-rate {
  margin: 0;
  font: 800 var(--fs-h2)/1 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-price-meta {
  margin: 10px 0 0;
  font: 400 var(--fs-label)/1.5 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-intake {
  margin: 0 0 24px;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-intake strong {
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-after {
  margin-top: 18px;
}
:where(body:not(.home-page)) .nw-plan-detail {
  display: grid;
  gap: 24px 48px;
}
:where(body:not(.home-page)) .nw-plan-detail .nw-subhead {
  margin-bottom: 4px;
}
:where(body:not(.home-page)) .nw-plan-sheet .nw-plan-label {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-plan-sheet h3 {
  margin: 0 0 10px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-plan-sheet ul {
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .nw-plan-sheet li {
  position: relative;
  padding: 10px 0 10px 26px;
  border-top: 1px solid var(--nw-line);
  font: 400 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-plan-sheet li::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 15px;
  width: 11px;
  height: 6px;
  border-left: 2px solid var(--nw-care-ink);
  border-bottom: 2px solid var(--nw-care-ink);
  transform: rotate(-45deg);
}
:where(body:not(.home-page)) .nw-pricebox {
  padding: 28px;
  border-radius: var(--r-lg);
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .nw-pricebox .nw-pricebox-label {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-pricebox .nw-price-rate {
  margin: 0;
  font: 800 var(--fs-h2)/1 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-pricebox p:not([class]) {
  margin: 8px 0 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-plan-cards {
  display: none;
}
:where(body:not(.home-page)) .nw-plan-card {
  padding: 20px;
  border-radius: var(--r);
  background: #fff;
  border: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-plan-card h3 {
  margin: 0 0 4px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-calc {
  display: grid;
  margin-top: 36px;
  padding: 28px;
  border-radius: var(--r-lg);
  background: #fff;
  border: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-calc h3 {
  margin: 0 0 6px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-calc p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-calc .nw-fine {
  margin-top: 14px;
  font-size: var(--fs-small);
}
:where(body:not(.home-page)) .nw-calc label {
  display: block;
  margin: 18px 0 8px;
  font: 700 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-stepper {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--respite-deep-50);
  border-radius: var(--r-sm);
  overflow: hidden;
}
:where(body:not(.home-page)) .nw-stepper button {
  width: 48px;
  height: 48px;
  border: 0;
  background: var(--panel-respite);
  color: var(--navy);
  font: 700 1.25rem var(--nw-text);
  cursor: pointer;
}
:where(body:not(.home-page)) .nw-stepper button:focus-visible,
:where(body:not(.home-page)) .nw-stepper input:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: -2px;
}
:where(body:not(.home-page)) .nw-stepper input {
  width: 76px;
  height: 48px;
  border: 0;
  text-align: center;
  font: 700 1.25rem var(--nw-text);
  color: var(--navy);
  background: #fff;
  -moz-appearance: textfield;
}
:where(body:not(.home-page)) .nw-stepper input::-webkit-outer-spin-button,
:where(body:not(.home-page)) .nw-stepper input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
:where(body:not(.home-page)) .nw-calc-results {
  display: grid;
}
:where(body:not(.home-page)) .nw-calc-plan h4 {
  margin: 0 0 10px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-calc-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 4px 0;
  font: 400 var(--fs-small)/1.4 var(--nw-text);
  color: var(--nw-body);
  font-variant-numeric: tabular-nums;
}
:where(body:not(.home-page)) .nw-calc-total {
  justify-content: space-between;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--nw-line-care);
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  color: var(--navy);
  font-variant-numeric: tabular-nums;
}
:where(body:not(.home-page)) .nw-calc-flag {
  display: inline-block;
  margin-top: 8px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-good {
  display: grid;
  gap: 12px 32px;
  margin-top: 24px;
}
:where(body:not(.home-page)) .nw-good p {
  margin: 0;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-panel-tint {
  border-radius: var(--r-lg);
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .nw-panel-tint .nw-head {
  margin-bottom: 24px;
}
:where(body:not(.home-page)) .nw-tablist {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 24px;
}
:where(body:not(.home-page)) .nw-tab {
  appearance: none;
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid var(--nw-nav-ink);
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--navy);
  font: 700 var(--fs-small)/1.2 var(--nw-text);
  cursor: pointer;
}
:where(body:not(.home-page)) .nw-tab[aria-selected="true"] {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}
:where(body:not(.home-page)) .nw-tab:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 3px;
}
:where(body:not(.home-page)) .nw-tabpanel {
  display: grid;
  gap: 24px 36px;
  padding: 28px;
  border-radius: var(--r);
  background: #fff;
}
:where(body:not(.home-page)) .nw-tabpanel-main {
  display: grid;
  gap: 22px;
  align-content: start;
}
:where(body:not(.home-page)) .nw-tabpanel h3 {
  margin: 0 0 8px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-tabpanel p,
:where(body:not(.home-page)) .nw-tabpanel li {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-tabpanel ul {
  margin: 0;
  padding-left: 1.1em;
  display: grid;
  gap: 8px;
}
:where(body:not(.home-page)) .nw-tabpanel .nw-have {
  font-weight: 700;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample {
  margin-top: 16px;
  border-radius: var(--r);
  background: var(--nw-navigation);
  border: 1px solid var(--nw-line-nav);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-label {
  margin: 0 0 2px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-title {
  margin: 0 0 6px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-rows {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-rows li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 1px 10px;
  padding: 10px 0;
  border-top: 1px solid var(--nw-line-nav);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-mark {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1.5px solid var(--nw-nav-ink);
  border-radius: 50%;
  background: #fff;
  font: 700 var(--fs-label)/1 var(--nw-text);
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-rows strong {
  font: 700 var(--fs-small)/1.35 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-rows li > span:last-child {
  font: 400 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-example-mobile {
  border-top: 1px solid var(--nw-line-nav);
}
:where(body:not(.home-page)) .nw-example-mobile:last-of-type {
  border-bottom: 1px solid var(--nw-line-nav);
}
:where(body:not(.home-page)) .nw-example-mobile > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 12px 0;
  cursor: pointer;
  list-style: none;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-example-mobile > summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .nw-example-mobile > summary::after {
  content: "+";
  flex: 0 0 26px;
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border: 1.5px solid var(--navy);
  border-radius: 50%;
  font-weight: 700;
  line-height: 1;
}
:where(body:not(.home-page)) .nw-example-mobile[open] > summary::after {
  content: "\2212";
}
:where(body:not(.home-page)) .nw-example-mobile > summary:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 3px;
}
:where(body:not(.home-page)) .nw-example-mobile > .nw-tabpanel {
  margin-bottom: 14px;
}
html:where(:has(> body:not(.home-page))):not(.js) [data-nw-tabs] .nw-tablist {
  display: none;
}
html:where(:has(> body:not(.home-page))):not(.js) [data-nw-tabs] .nw-tabpanel {
  display: grid;
  margin-bottom: 16px;
}
:where(body:not(.home-page)) .nw-people {
  display: grid;
  gap: 24px;
}
:where(body:not(.home-page)) .nw-person {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid var(--respite-deep-20);
  border-radius: var(--r);
  overflow: hidden;
  background: #fff;
}
:where(body:not(.home-page)) .nw-person-top {
  display: flex;
  gap: 18px;
  padding: 18px;
  background: var(--panel-respite);
}
:where(body:not(.home-page)) .nw-person:nth-child(2) .nw-person-top {
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .nw-person:nth-child(3) .nw-person-top {
  background: var(--nw-coral-100);
}
:where(body:not(.home-page)) .nw-person-top img {
  flex: 0 0 104px;
  width: 104px;
  height: 116px;
  object-fit: cover;
  object-position: center top;
  border-radius: var(--r);
}
:where(body:not(.home-page)) .nw-person-role {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.35 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-person h3 {
  margin: 0;
  font: 700 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-person-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 18px;
}
:where(body:not(.home-page)) .nw-person-body > p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-bio summary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-top: 14px;
  width: 100%;
  border-top: 1px solid var(--nw-line);
  cursor: pointer;
  list-style: none;
  font: 700 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-bio summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .nw-bio summary::after {
  content: "+";
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1.5px solid var(--navy);
  border-radius: 50%;
  font-weight: 700;
  line-height: 1;
}
:where(body:not(.home-page)) .nw-bio[open] summary::after {
  content: "\2212";
}
:where(body:not(.home-page)) .nw-bio summary:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 4px;
}
:where(body:not(.home-page)) .nw-bio p,
:where(body:not(.home-page)) .nw-bio blockquote {
  margin: 12px 0 0;
  font: 400 var(--fs-small)/1.6 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-bio blockquote {
  padding-left: 14px;
  border-left: 3px solid var(--coral);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .nw-tags li {
  padding: 4px 10px;
  border: 1px solid var(--nw-line-care);
  border-radius: var(--r-pill);
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-mv {
  display: grid;
  gap: 28px 48px;
  margin-bottom: 40px;
  padding-block: 28px;
  border-block: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-mv h3 {
  margin: 0 0 10px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-coral-ink);
}
:where(body:not(.home-page)) .nw-mv p {
  margin: 0;
  font: 700 var(--fs-h3)/1.35 var(--nw-display);
  letter-spacing: -0.015em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-values {
  display: grid;
  gap: 28px 36px;
}
:where(body:not(.home-page)) .nw-value {
  padding-top: 14px;
  border-top: 2px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-value .nw-value-label {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-value h3 {
  margin: 0 0 6px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-value p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-recog {
  display: grid;
  gap: 32px 48px;
  align-items: center;
}
:where(body:not(.home-page)) .nw-recog-photo {
  margin: 0;
}
:where(body:not(.home-page)) .nw-recog-photo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--r-lg);
}
:where(body:not(.home-page)) .nw-recog-photo figcaption {
  margin-top: 10px;
  font: 400 var(--fs-label)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-recog-item + .nw-recog-item {
  margin-top: 28px;
  padding-top: 28px;
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-recog-item h3 {
  margin: 0 0 8px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-recog-item p {
  margin: 0 0 12px;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-recog-item img {
  display: block;
  height: 44px;
  width: auto;
  margin-bottom: 12px;
}
:where(body:not(.home-page)) .nw-chapters {
  display: grid;
  gap: 24px;
}
:where(body:not(.home-page)) .nw-role-top .nw-chapter-label {
  margin: 0 0 10px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-role--navigation .nw-role-top .nw-chapter-label {
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .nw-roles {
  display: grid;
  gap: 24px;
}
:where(body:not(.home-page)) .nw-role {
  border-radius: var(--r-lg);
  background: var(--panel-respite);
  padding: 32px;
}
:where(body:not(.home-page)) .nw-role--navigation {
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .nw-role-top {
  display: grid;
}
:where(body:not(.home-page)) .nw-role h3 {
  margin: 0 0 12px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.015em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-role-top p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-ruled {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0;
}
:where(body:not(.home-page)) .nw-ruled dt,
:where(body:not(.home-page)) .nw-ruled dd {
  margin: 0;
  padding: 12px 0;
  border-bottom: 1px solid rgba(27, 42, 74, 0.12);
  font: 400 var(--fs-body)/1.5 var(--nw-text);
}
:where(body:not(.home-page)) .nw-ruled dt {
  padding-right: 24px;
  font-weight: 700;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-ruled dd {
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-role-more {
  margin-top: 24px;
  border-top: 1px solid rgba(27, 42, 74, 0.14);
}
:where(body:not(.home-page)) .nw-role-more summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  cursor: pointer;
  list-style: none;
  font: 700 var(--fs-body)/1.3 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-role-more summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .nw-role-more summary::after {
  content: "+";
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border: 1.5px solid var(--navy);
  border-radius: 50%;
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-role-more[open] summary::after {
  content: "\2212";
}
:where(body:not(.home-page)) .nw-role-more summary:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 4px;
}
:where(body:not(.home-page)) .nw-role-detail {
  display: grid;
  gap: 8px 40px;
  padding-bottom: 12px;
}
:where(body:not(.home-page)) .nw-role-detail h4 {
  margin: 12px 0 8px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-role-detail p,
:where(body:not(.home-page)) .nw-role-detail li {
  margin: 0 0 8px;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-role-detail ul {
  margin: 0;
  padding-left: 1.1em;
}
:where(body:not(.home-page)) .nw-role-detail aside {
  grid-column: 1/-1;
  margin-top: 8px;
  border-radius: var(--r);
  background: rgba(255, 255, 255, 0.7);
}
:where(body:not(.home-page)) .nw-role-detail aside h4 {
  margin-top: 0;
}
:where(body:not(.home-page)) .nw-role-apply {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px 24px;
  margin-top: 8px;
  padding-top: 20px;
  border-top: 1px solid rgba(27, 42, 74, 0.14);
}
:where(body:not(.home-page)) .nw-role-apply p {
  margin: 0;
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-role-apply strong {
  display: block;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-eeo {
  max-width: 48rem;
}
:where(body:not(.home-page)) .nw-eeo h2 {
  margin: 0 0 10px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-eeo p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-faq {
  border-bottom: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-faq details {
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-faq summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 18px 0;
  cursor: pointer;
  list-style: none;
  font: 700 var(--fs-body)/1.35 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-faq summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .nw-faq summary::after {
  content: "";
  flex: 0 0 14px;
  height: 14px;
  background:
    linear-gradient(var(--nw-care-ink), var(--nw-care-ink)) center/14px 2px no-repeat,
    linear-gradient(var(--nw-care-ink), var(--nw-care-ink)) center/2px 14px no-repeat;
}
:where(body:not(.home-page)) .nw-faq details[open] summary::after {
  background: linear-gradient(var(--nw-care-ink), var(--nw-care-ink)) center/14px 2px no-repeat;
}
:where(body:not(.home-page)) .nw-faq--navigation summary::after {
  background:
    linear-gradient(var(--nw-nav-ink), var(--nw-nav-ink)) center/14px 2px no-repeat,
    linear-gradient(var(--nw-nav-ink), var(--nw-nav-ink)) center/2px 14px no-repeat;
}
:where(body:not(.home-page)) .nw-faq--navigation details[open] summary::after {
  background: linear-gradient(var(--nw-nav-ink), var(--nw-nav-ink)) center/14px 2px no-repeat;
}
:where(body:not(.home-page)) .nw-faq summary:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 4px;
}
:where(body:not(.home-page)) .nw-faq-answer {
  padding: 0 40px 20px 0;
}
:where(body:not(.home-page)) .nw-faq-answer p,
:where(body:not(.home-page)) .nw-faq-answer li {
  margin: 0 0 10px;
  font: 400 var(--fs-body)/1.6 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-faq-answer ul {
  margin: 0 0 10px;
  padding-left: 1.2em;
}
:where(body:not(.home-page)) .nw-faq-answer a {
  color: var(--navy);
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-faq-more {
  margin-top: 22px;
}
:where(body:not(.home-page)) .nw-faqpage {
  display: grid;
  gap: 32px 56px;
  align-items: start;
}
:where(body:not(.home-page)) .nw-faq-rail {
  display: grid;
  gap: 4px;
}
:where(body:not(.home-page)) .nw-faq-rail a {
  display: block;
  padding: 10px 12px;
  border-radius: var(--r-sm);
  font: 700 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
  text-decoration: none;
}
:where(body:not(.home-page)) .nw-faq-rail a:hover,
:where(body:not(.home-page)) .nw-faq-rail a:focus-visible {
  background: var(--panel-respite);
}
:where(body:not(.home-page)) .nw-faq-group {
  scroll-margin-top: 100px;
}
:where(body:not(.home-page)) .nw-faq-group + .nw-faq-group {
  margin-top: 44px;
}
:where(body:not(.home-page)) .nw-faq-group h2 {
  margin: 0 0 8px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-search {
  display: flex;
  gap: 8px;
  max-width: 34rem;
  margin-top: 22px;
}
:where(body:not(.home-page)) .nw-search input {
  flex: 1;
  min-width: 0;
  height: 50px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: var(--r-sm);
  font: 400 1rem var(--nw-text);
  color: var(--navy);
  background: #fff;
}
:where(body:not(.home-page)) .nw-search input:focus-visible {
  outline: 3px solid var(--coral);
  outline-offset: 2px;
}
:where(body:not(.home-page)) .nw-search-clear {
  flex: 0 0 auto;
  height: 50px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: var(--r-sm);
  background: transparent;
  color: #fff;
  font: 700 var(--fs-small)/1 var(--nw-text);
  cursor: pointer;
}
:where(body:not(.home-page)) .nw-search-clear:focus-visible {
  outline: 3px solid var(--coral);
  outline-offset: 2px;
}
:where(body:not(.home-page)) .nw-search-status {
  margin: 10px 0 0;
  font: 400 var(--fs-small)/1.4 var(--nw-text);
  color: rgba(255, 255, 255, 0.85);
}
:where(body:not(.home-page)) .nw-noresults {
  margin: 0 0 20px;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-contact {
  display: grid;
  align-items: start;
}
:where(body:not(.home-page)) .nw-formcard {
  padding: 32px;
  border-radius: var(--r-lg);
  background: #fff;
  border: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-formcard h2 {
  margin: 0 0 8px;
}
:where(body:not(.home-page)) .nw-formcard iframe {
  display: block;
  width: 100%;
  border: 0;
  margin-top: 12px;
}
:where(body:not(.home-page)) .nw-aside h2 {
  margin: 0 0 16px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-aside .nw-steps {
  grid-template-columns: 1fr;
  gap: 18px;
}
:where(body:not(.home-page)) .nw-direct {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-direct p {
  margin: 0 0 8px;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-direct a {
  color: var(--navy);
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-doc {
  display: grid;
  gap: 32px 56px;
  align-items: start;
}
:where(body:not(.home-page)) .nw-doc-rail {
  display: grid;
  gap: 2px;
  font-family: var(--nw-text);
}
:where(body:not(.home-page)) .nw-doc-rail a {
  display: flex;
  gap: 10px;
  padding: 8px 10px;
  border-radius: var(--r-sm);
  font: 500 var(--fs-small)/1.35 var(--nw-text);
  color: var(--navy);
  text-decoration: none;
}
:where(body:not(.home-page)) .nw-doc-rail a span {
  flex: 0 0 22px;
  font-weight: 700;
  color: var(--nw-care-ink);
  font-variant-numeric: tabular-nums;
}
:where(body:not(.home-page)) .nw-doc-rail a:hover,
:where(body:not(.home-page)) .nw-doc-rail a:focus-visible {
  background: var(--panel-respite);
}
:where(body:not(.home-page)) .nw-doc-rail .policy-terms-link {
  margin-top: 8px;
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-doc-body {
  max-width: 68ch;
}
:where(body:not(.home-page)) .nw-doc-body section {
  scroll-margin-top: 100px;
}
:where(body:not(.home-page)) .nw-doc-body section + section {
  margin-top: 40px;
  padding-top: 32px;
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-doc-body h2 {
  display: flex;
  gap: 12px;
  margin: 0 0 14px;
  font: 800 var(--fs-h3)/1.25 var(--nw-display);
  letter-spacing: -0.015em;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-doc-body h2 span {
  flex: 0 0 auto;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .nw-doc-body h3 {
  margin: 22px 0 8px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-doc-body p,
:where(body:not(.home-page)) .nw-doc-body li {
  margin: 0 0 12px;
  font: 400 var(--fs-body)/1.65 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-doc-body ul {
  margin: 0 0 12px;
  padding-left: 1.2em;
}
:where(body:not(.home-page)) .nw-doc-body a {
  color: var(--navy);
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-doc-body strong {
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-body-text {
  margin: 16px 0 0;
  font: 400 var(--fs-body)/1.6 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-intake--gap {
  margin-top: 16px;
}
:where(body:not(.home-page)) .nw-recog-item--first {
  margin-top: 24px;
}
:where(body:not(.home-page)) .nw-steps--stack {
  margin-top: 28px;
}
:where(body:not(.home-page)) .nw-areas-head {
  margin-bottom: 40px;
}
:where(body:not(.home-page)) .nw-areas-head .nw-head {
  margin-bottom: 0;
}
:where(body:not(.home-page)) .nw-doc-index > summary {
  list-style: none;
}
:where(body:not(.home-page)) .nw-doc-index > summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .cta.cta--care::before {
  background: var(--periwinkle);
}
:where(body:not(.home-page)) .cta.cta--navigation::before {
  background: var(--sage);
}
:where(body:not(.home-page)) .cta-action {
  text-align: center;
}
:where(body:not(.home-page)) .cta-action .btn {
  background: var(--coral);
  color: var(--navy);
  white-space: nowrap;
}
:where(body:not(.home-page)) .cta-action > p {
  margin: 12px 0 0;
  font-size: var(--fs-small);
  color: rgba(255, 255, 255, 0.8);
}
@media (min-width: 1121px) {
  .interior-page {
    --shell: 1160px;
  }
  .interior-page .hero.hero--interior .opening-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
  }
  :where(body:not(.home-page)) .nw-split--art {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: 56px;
    align-items: center;
  }
  :where(body:not(.home-page)) .nw-split--art-right {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }
  :where(body:not(.home-page)) .nw-split--media {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 56px;
    align-items: center;
  }
  :where(body:not(.home-page)) .nw-split--faq {
    display: grid;
    grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
    gap: 56px;
    align-items: start;
  }
  :where(body:not(.home-page)) .nw-moments {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-photos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 48px;
  }
  :where(body:not(.home-page)) .nw-calc {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  }
  :where(body:not(.home-page)) .nw-calc-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-good {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-tabpanel {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 24px 48px;
  }
  :where(body:not(.home-page)) .nw-people {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-mv {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-values {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-recog {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  :where(body:not(.home-page)) .nw-chapters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-role-top {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  }
  :where(body:not(.home-page)) .nw-role-detail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-faqpage {
    grid-template-columns: 240px minmax(0, 1fr);
  }
  :where(body:not(.home-page)) .nw-faq-rail {
    position: sticky;
  }
  :where(body:not(.home-page)) .nw-contact {
    grid-template-columns: minmax(0, 7fr) minmax(0, 4fr);
  }
  :where(body:not(.home-page)) .nw-doc {
    grid-template-columns: 260px minmax(0, 1fr);
  }
  :where(body:not(.home-page)) .nw-doc-rail {
    position: sticky;
    top: 24px;
  }
  :where(body:not(.home-page)) .nw-hero-compact-grid {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  :where(body:not(.home-page)) .nw-steps--stack {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  :where(body:not(.home-page)) .nw-doc-index > summary {
    display: none;
  }
  :where(body:not(.home-page)) .nw-plan-detail {
    align-items: start;
  }
}
@media (prefers-reduced-motion: reduce) {
  :where(body:not(.home-page)) * {
    scroll-behavior: auto;
  }
}
@media (max-width: 1120px) {
  :root:where(:has(> body:not(.home-page))) {
    --nw-gutter: var(--gutter);
  }
  .interior-page .nw-section {
    padding-block: 52px;
  }
  :where(body:not(.home-page)) .nw-heading {
    font-size: var(--fs-h2);
  }
  :where(body:not(.home-page)) .nw-head {
    margin-bottom: 28px;
  }
  .interior-page .hero.hero--interior {
    min-height: 0;
    height: auto;
    padding: 0;
    background: var(--nw-topo);
    color: #fff;
  }
  .interior-page .hero.hero--interior::after {
    display: none;
  }
  .interior-page .hero.hero--interior .hero-grid {
    display: block;
    width: min(var(--nw-shell), calc(100% - 2 * var(--nw-gutter)));
    min-height: 0;
    margin-inline: auto;
  }
  .interior-page .hero.hero--interior .hero-copy {
    width: 100%;
    max-width: 44rem;
    margin: 0;
    padding: 44px 0 48px;
  }
  .interior-page .hero.hero--interior h1 {
    max-width: 18ch;
    margin: 0;
    font: 800 var(--fs-display)/1.1 var(--nw-display);
    letter-spacing: -0.035em;
    color: #fff;
    text-wrap: balance;
  }
  .navigation-page .hero.hero--interior h1 {
    max-width: none;
  }
  .interior-page .hero.hero--interior .page-lede {
    max-width: 38rem;
    margin: 16px 0 0;
    font: 400 var(--fs-body)/1.5 var(--nw-text);
    color: #fff;
  }
  .interior-page .hero.hero--interior .opening-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 22px;
    margin-top: 22px;
  }
  .interior-page .hero.hero--interior .opening-actions .btn {
    padding: 12px 20px;
    font-size: var(--fs-body);
  }
  .interior-page .hero.hero--interior .interior-hero-primary,
.interior-page .hero.hero--interior .interior-hero-secondary {
    display: block;
  }
  .interior-page .hero.hero--interior .interior-hero-secondary {
    max-width: 40rem;
    margin-top: 22px;
    padding: 0;
    border: 0;
  }
  .interior-page .hero.hero--interior .interior-hero-secondary .page-lede {
    margin-top: 0;
  }
  :where(body:not(.home-page)) .nw-hero-compact {
    padding-block: 40px 38px;
  }
  :where(body:not(.home-page)) .nw-hero-compact h1 {
    font-size: var(--fs-display);
  }
  :where(body:not(.home-page)) .nw-split--art > * + *,
:where(body:not(.home-page)) .nw-split--media > * + *,
:where(body:not(.home-page)) .nw-split--faq > * + * {
    margin-top: 28px;
  }
  :where(body:not(.home-page)) .nw-split--art-right {
    display: flex;
    flex-direction: column;
  }
  :where(body:not(.home-page)) .nw-art--painting {
    max-width: 560px;
  }
  :where(body:not(.home-page)) .nw-moments,
:where(body:not(.home-page)) .nw-cols-2,
:where(body:not(.home-page)) .nw-chapters,
:where(body:not(.home-page)) .nw-mv,
:where(body:not(.home-page)) .nw-good {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-steps--stack,
:where(body:not(.home-page)) .nw-aside .nw-steps {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .nw-values {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-photos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-calc-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-tabpanel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-recog {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  :where(body:not(.home-page)) .nw-role-detail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-contact {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .nw-aside {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 40px;
  }
  :where(body:not(.home-page)) .nw-aside > h2 {
    grid-column: 1;
  }
  :where(body:not(.home-page)) .nw-aside > .nw-steps {
    grid-column: 1;
  }
  :where(body:not(.home-page)) .nw-person-top {
    flex-direction: column;
    gap: 14px;
  }
  :where(body:not(.home-page)) .nw-faqpage {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .nw-faq-rail {
    position: sticky;
    top: var(--header-height, 66px);
    z-index: 5;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid var(--nw-line);
  }
  :where(body:not(.home-page)) .nw-faq-rail a {
    flex: 0 0 auto;
    padding: 9px 14px;
    border: 1px solid var(--nw-line-care);
    border-radius: var(--r-pill);
    background: #fff;
    white-space: nowrap;
  }
  :where(body:not(.home-page)) .nw-faq-group {
    scroll-margin-top: calc(var(--header-height, 66px) + 72px);
  }
  :where(body:not(.home-page)) .nw-doc {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .nw-doc-index {
    border: 1px solid var(--nw-line);
    border-radius: var(--r);
    background: #fff;
  }
  :where(body:not(.home-page)) .nw-doc-index > summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font: 700 var(--fs-body)/1.3 var(--nw-text);
    color: var(--navy);
  }
  :where(body:not(.home-page)) .nw-doc-index > summary::after {
    content: "+";
    display: inline-grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border: 1.5px solid var(--navy);
    border-radius: 50%;
    font-weight: 700;
  }
  :where(body:not(.home-page)) .nw-doc-index[open] > summary::after {
    content: "\2212";
  }
  :where(body:not(.home-page)) .nw-doc-index > .nw-doc-rail {
    padding: 0 8px 12px;
  }
  :where(body:not(.home-page)) .nw-doc-body section {
    scroll-margin-top: calc(var(--header-height, 66px) + 16px);
  }
  .interior-page .cta .cta-inner {
    gap: 22px;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-split--media {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: 40px;
    align-items: center;
  }
  :where(body:not(.home-page)) .nw-split--media > * + * {
    margin-top: 0;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-heading {
    font-size: var(--fs-display);
    line-height: 1.15;
  }
  :where(body:not(.home-page)) .nw-lede {
    font-size: var(--fs-lede);
  }
  .interior-page .hero.hero--interior .hero-copy {
    padding: 32px 0 36px;
  }
  .interior-page .hero.hero--interior h1 {
    font-size: var(--fs-display);
    line-height: 1.08;
  }
  .interior-page .hero.hero--interior .page-lede {
    font-size: var(--fs-body);
  }
  .interior-page .hero.hero--interior .interior-hero-secondary {
    margin-top: 18px;
    padding-top: 0;
  }
  .interior-page .hero.hero--interior .opening-actions {
    gap: 6px 20px;
    margin-top: 20px;
  }
  :where(body:not(.home-page)) .nw-service-area {
    margin-top: 14px;
  }
  :where(body:not(.home-page)) .nw-hero-label {
    margin-bottom: 10px;
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .nw-hero-compact {
    padding-block: 32px 30px;
  }
  :where(body:not(.home-page)) .nw-hero-compact h1 {
    font-size: var(--fs-display);
    line-height: 1.08;
  }
  :where(body:not(.home-page)) .nw-hero-compact .page-lede {
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .nw-hero-links {
    gap: 4px 20px;
    margin-top: 14px;
  }
  :where(body:not(.home-page)) .nw-search {
    margin-top: 18px;
    max-width: none;
  }
  :where(body:not(.home-page)) .nw-art--panorama {
    margin-bottom: -10px;
  }
  :where(body:not(.home-page)) .nw-moments,
:where(body:not(.home-page)) .nw-cols-2,
:where(body:not(.home-page)) .nw-chapters,
:where(body:not(.home-page)) .nw-mv,
:where(body:not(.home-page)) .nw-good,
:where(body:not(.home-page)) .nw-steps,
:where(body:not(.home-page)) .nw-values,
:where(body:not(.home-page)) .nw-calc-results,
:where(body:not(.home-page)) .nw-tabpanel,
:where(body:not(.home-page)) .nw-recog,
:where(body:not(.home-page)) .nw-role-detail {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .nw-moments {
    gap: 0;
  }
  :where(body:not(.home-page)) .nw-steps {
    gap: 22px;
  }
  :where(body:not(.home-page)) .nw-cols-2 {
    gap: 28px;
  }
  :where(body:not(.home-page)) .nw-photos {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  :where(body:not(.home-page)) .nw-photo img {
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .nw-media img {
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .nw-price-rate {
    font-size: var(--fs-display);
  }
  :where(body:not(.home-page)) .nw-plan-cards {
    display: grid;
    gap: 16px;
  }
  :where(body:not(.home-page)) .nw-plan-card .nw-rate {
    font: 800 var(--fs-h2)/1.2 var(--nw-display);
    color: var(--navy);
  }
  :where(body:not(.home-page)) .nw-calc {
    margin-top: 28px;
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .nw-calc h3 {
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-stepper button {
    width: 52px;
    height: 52px;
  }
  :where(body:not(.home-page)) .nw-stepper input {
    height: 52px;
  }
  :where(body:not(.home-page)) .nw-list > li {
    padding: 14px 0;
  }
  :where(body:not(.home-page)) .nw-panel-tint {
    border-radius: var(--r-lg);
  }
  :where(body:not(.home-page)) .nw-tabpanel {
    gap: 18px;
    padding: 20px 18px;
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .nw-pricebox {
    padding: 22px 20px;
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .nw-pricebox .nw-price-rate {
    font-size: var(--fs-display);
  }
  :where(body:not(.home-page)) .nw-person-top {
    flex-direction: row;
  }
  :where(body:not(.home-page)) .nw-person-top img {
    flex-basis: 88px;
    width: 88px;
    height: 100px;
  }
  :where(body:not(.home-page)) .nw-person h3 {
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-role {
    border-radius: var(--r-lg);
  }
  :where(body:not(.home-page)) .nw-role h3 {
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-ruled dt {
    padding: 12px 0 2px;
    border-bottom: 0;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }
  :where(body:not(.home-page)) .nw-ruled dd {
    padding: 0 0 12px;
  }
  :where(body:not(.home-page)) .nw-role-apply {
    flex-direction: column;
    align-items: stretch;
  }
  :where(body:not(.home-page)) .nw-role-apply .btn {
    justify-content: center;
    text-align: center;
  }
  :where(body:not(.home-page)) .nw-faq summary {
    padding: 16px 0;
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .nw-faq-group + .nw-faq-group {
    margin-top: 36px;
  }
  :where(body:not(.home-page)) .nw-faq-group h2 {
    font-size: var(--fs-h2);
  }
  :where(body:not(.home-page)) .nw-formcard {
    border-radius: var(--r-lg);
  }
  :where(body:not(.home-page)) .nw-aside {
    display: block;
  }
  :where(body:not(.home-page)) .nw-doc-body h2 {
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-doc-body section + section {
    margin-top: 32px;
    padding-top: 26px;
  }
  .interior-page .cta-action {
    text-align: left;
  }
  .interior-page .cta-action .btn {
    width: 100%;
    justify-content: center;
  }
}
@media (max-width: 1120px) {
  .interior-page .hero.hero--interior .hero-grid,
.interior-page .hero.hero--interior .hero-copy {
    background: transparent;
  }
  .interior-page .hero.hero--interior .hero-copy::before,
.interior-page .hero.hero--interior .hero-copy::after {
    display: none;
    content: none;
  }
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-people {
    gap: 12px;
  }
  :where(body:not(.home-page)) .nw-people {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .mobile-person {
    width: 100%;
    min-width: 0;
  }
  :where(body:not(.home-page)) .mobile-person > summary {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr) 28px;
    align-items: center;
    gap: 14px;
    padding: 18px;
    cursor: pointer;
    list-style: none;
    color: var(--navy);
    background: var(--panel-respite);
  }
  :where(body:not(.home-page)) .mobile-person > summary::-webkit-details-marker {
    display: none;
  }
  :where(body:not(.home-page)) .nw-person:nth-child(2) .mobile-person > summary {
    background: var(--nw-navigation);
  }
  :where(body:not(.home-page)) .nw-person:nth-child(3) .mobile-person > summary {
    background: var(--nw-coral-100);
  }
  :where(body:not(.home-page)) .mobile-person > summary > img {
    width: 60px;
    height: 68px;
    object-fit: cover;
    object-position: center top;
    border-radius: var(--r-sm);
  }
  :where(body:not(.home-page)) .mobile-person-label {
    display: grid;
    gap: 5px;
    min-width: 0;
  }
  :where(body:not(.home-page)) .mobile-person-label strong {
    font: 700 var(--fs-lede)/1.2 var(--nw-display);
    letter-spacing: -0.015em;
  }
  :where(body:not(.home-page)) .mobile-person-label > span {
    font: 400 var(--fs-small)/1.35 var(--nw-text);
    color: var(--nw-body);
  }
  :where(body:not(.home-page)) .mobile-person-label > .mobile-person-action-label {
    font-weight: 700;
    color: var(--navy);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  :where(body:not(.home-page)) .mobile-person-toggle {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font: 500 var(--fs-lede)/1 var(--nw-text);
  }
  :where(body:not(.home-page)) .mobile-person-toggle::before {
    content: "+";
  }
  :where(body:not(.home-page)) .mobile-person[open] .mobile-person-toggle::before {
    content: "−";
  }
  :where(body:not(.home-page)) .mobile-person > summary:focus-visible {
    outline: 3px solid var(--nw-care-ink);
    outline-offset: -3px;
  }
  :where(body:not(.home-page)) .nw-person .mobile-person > .nw-person-body {
    display: block;
    padding: 18px;
    border-top: 1px solid var(--nw-line);
    background: #fff;
  }
  :where(body:not(.home-page)) .mobile-person .nw-bio > summary {
    display: none;
  }
  :where(body:not(.home-page)) .mobile-person .nw-bio {
    margin: 16px 0 0;
    padding: 0;
    border: 0;
  }
  :where(body:not(.home-page)) .mobile-person .nw-bio p,
:where(body:not(.home-page)) .mobile-person .nw-bio blockquote {
    font-size: var(--fs-body);
    line-height: 1.55;
  }
}
@media (max-width: 720px) {
  .interior-page .hero.hero--interior .hero-copy {
    text-align: center;
    margin-inline: auto;
  }
  .interior-page .hero.hero--interior .hero-copy h1,
.interior-page .hero.hero--interior .page-lede {
    margin-inline: auto;
  }
  .interior-page .hero.hero--interior .btn-row,
.interior-page .hero.hero--interior .nw-service-area {
    justify-content: center;
  }
  .interior-page .cta .cta-inner {
    text-align: center;
    justify-items: center;
  }
  .interior-page .cta h2,
.interior-page .cta p {
    margin-inline: auto;
  }
}
:where(body:not(.home-page)) .nw-support-detail,
:where(body:not(.home-page)) .nw-plan-detail {
  display: grid;
  grid-template-columns: 1fr 1.65fr;
  gap: 48px;
}
:where(body:not(.home-page)) .nw-support-detail h3,
:where(body:not(.home-page)) .nw-plan-detail h3 {
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  margin: 0 0 10px;
  letter-spacing: -0.015em;
}
:where(body:not(.home-page)) .nw-support-detail p,
:where(body:not(.home-page)) .nw-plan-detail p,
:where(body:not(.home-page)) .nw-plan-detail li {
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-support-detail p,
:where(body:not(.home-page)) .nw-plan-detail p {
  margin: 0 0 16px;
}
:where(body:not(.home-page)) .nw-support-copy article + article {
  padding-top: 22px;
  margin-top: 22px;
  border-top: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-support-intro {
  padding: 26px;
  background: var(--panel-respite);
  border-radius: var(--r);
  align-self: start;
}
:where(body:not(.home-page)) .nw-plan-detail {
  grid-template-columns: 0.8fr 1.2fr;
  margin-top: 36px;
  padding-top: 32px;
  border-top: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-plan-sheet {
  background: #fff;
  padding: 26px;
  border-radius: var(--r);
  border: 1px solid var(--nw-line-care);
  align-self: start;
}
:where(body:not(.home-page)) .nw-plan-sheet ul {
  margin: 14px 0 0;
  padding-left: 20px;
}
:where(body:not(.home-page)) .nw-plan-sheet li + li {
  margin-top: 7px;
}
:where(body:not(.home-page)) .nw-point {
  align-content: start;
}
:where(body:not(.home-page)) .nw-bio {
  margin-top: 18px;
  padding-top: 0;
}
:where(body:not(.home-page)) .nw-bio summary {
  margin-top: 0;
  min-height: 44px;
}
:where(body:not(.home-page)) .nw-person-top {
  align-items: center;
}
:where(body:not(.home-page)) .nw-person-role,
:where(body:not(.home-page)) .nw-value .nw-value-label,
:where(body:not(.home-page)) .nw-mv h3,
:where(body:not(.home-page)) .nw-role-top .nw-chapter-label,
:where(body:not(.home-page)) .nw-tabpanel h3,
:where(body:not(.home-page)) .nw-price-meta,
:where(body:not(.home-page)) .nw-calc-flag,
:where(body:not(.home-page)) .nw-tags li {
  font-size: var(--fs-small);
  line-height: 1.4;
}
:where(body:not(.home-page)) .nw-faq-answer {
  padding-right: 28px;
}
:where(body:not(.home-page)) .nw-faq-rail {
  align-self: start;
}
:where(body:not(.home-page)) .nw-section :is(h2, h3) {
  overflow-wrap: normal;
}
:where(body:not(.home-page)) .nw-hero-label--coral {
  color: var(--coral);
}
@media (min-width: 1121px) {
  :where(body:not(.home-page)) .nw-faq-rail {
    top: calc(var(--header-height) + 24px);
    max-height: calc(100dvh - var(--header-height) - 48px);
    overflow-y: auto;
  }
  :where(body:not(.home-page)) .nw-person-top {
    gap: 14px;
  }
  :where(body:not(.home-page)) .nw-person-top img {
    flex-basis: 88px;
    width: 88px;
    height: 100px;
  }
  :where(body:not(.home-page)) .nw-person h3 {
    font-size: var(--fs-lede);
  }
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-faq-rail {
    margin-inline: 0;
    padding: 12px 0;
    max-width: 100%;
    scrollbar-width: thin;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-faq-answer {
    padding-right: 0;
  }
  :where(body:not(.home-page)) .nw-example-mobile .nw-tabpanel {
    padding: 18px;
    margin-bottom: 18px;
  }
  :where(body:not(.home-page)) .nw-calc-total {
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-calc-row > span:last-child,
:where(body:not(.home-page)) .nw-calc-total > span:last-child {
    white-space: nowrap;
  }
  :where(body:not(.home-page)) .nw-price-meta {
    font-size: var(--fs-small);
  }
  :where(body:not(.home-page)) .nw-person-role {
    font-size: var(--fs-label);
  }
}
:where(body:not(.home-page)) .nw-support-copy article {
  position: relative;
  padding-left: 46px;
}
:where(body:not(.home-page)) .nw-step::before {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--panel-respite);
  font-size: var(--fs-body);
  margin: 0;
}
:where(body:not(.home-page)) .nw-section--care .nw-step::before {
  background: #fff;
}
:where(body:not(.home-page)) .nw-steps--navigation .nw-step::before {
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .nw-steps--coral .nw-step::before {
  background: var(--nw-coral-100);
}
:where(body:not(.home-page)) .nw-pricebox-label {
  font-size: var(--fs-small);
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-support-copy article {
    padding-left: 38px;
  }
}
:where(body:not(.home-page)) .nw-calc-total {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  align-content: start;
}
:where(body:not(.home-page)) .nw-calc-total > span:first-child {
  font: 700 var(--fs-small)/1.4 var(--nw-text);
}
:where(body:not(.home-page)) .nw-calc-total > span:last-child {
  font: 800 var(--fs-h3)/1.1 var(--nw-display);
}
.contact-page .nw-fine {
  font-size: var(--fs-body);
}
:where(body:not(.home-page)) .nw-art img {
  height: auto;
  object-fit: contain;
}
:where(body:not(.home-page)) .nw-page-shortcuts {
  background: #fff;
  border-bottom: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-page-shortcuts .nw-hero-links {
  margin: 0;
  padding: 14px 0;
  gap: 8px 24px;
}
:where(body:not(.home-page)) .nw-page-shortcuts a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample-label {
  font-size: var(--fs-label);
}
:where(body:not(.home-page)) .nw-body-text {
  font-size: var(--fs-body);
  line-height: 1.55;
}
:where(body:not(.home-page)) .nw-pricebox .nw-pricebox-label,
:where(body:not(.home-page)) .nw-ruled dt {
  font-size: var(--fs-small);
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-body-text {
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .nw-support-detail {
    grid-template-columns: 1fr 1.5fr;
    gap: 28px;
  }
  :where(body:not(.home-page)) .nw-plan-detail {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 28px;
  }
  :where(body:not(.home-page)) .nw-faq-rail::-webkit-scrollbar {
    display: block;
    height: 4px;
  }
  :where(body:not(.home-page)) .nw-doc-rail {
    position: static;
  }
}
@media (max-width: 720px) {
  .interior-page .nw-section {
    padding-block: 32px;
  }
  :where(body:not(.home-page)) .nw-split--art > * + *,
:where(body:not(.home-page)) .nw-split--media > * + *,
:where(body:not(.home-page)) .nw-split--faq > * + * {
    margin-top: 22px;
  }
  :where(body:not(.home-page)) .nw-support-detail,
:where(body:not(.home-page)) .nw-plan-detail {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  :where(body:not(.home-page)) .nw-support-intro {
    padding: 20px;
  }
  :where(body:not(.home-page)) .nw-plan-sheet {
    padding: 20px;
  }
  :where(body:not(.home-page)) .nw-art--painting {
    max-width: 320px;
    margin-inline: auto;
  }
  :where(body:not(.home-page)) .nw-split--art-right .nw-art--painting {
    max-width: 280px;
  }
  :where(body:not(.home-page)) .nw-photos {
    margin-bottom: 24px;
  }
  :where(body:not(.home-page)) .nw-step::before {
    width: 30px;
    height: 30px;
  }
  :where(body:not(.home-page)) .nw-page-shortcuts .nw-hero-links {
    gap: 2px 18px;
    padding-block: 8px;
  }
}
html:where(:has(> body:not(.home-page))):not(.js) .nw-tablist {
  display: none;
}
html:where(:has(> body:not(.home-page))):not(.js) .nw-tabpanel[hidden] {
  display: grid;
}
html:where(:has(> body:not(.home-page))):not(.js) .nw-tabpanel + .nw-tabpanel {
  margin-top: 20px;
}
@media print {
  :where(body:not(.home-page)) .nw-tablist,
:where(body:not(.home-page)) .nw-search {
    display: none;
  }
  :where(body:not(.home-page)) .nw-tabpanel[hidden] {
    display: block;
  }
  :where(body:not(.home-page)) details:not([open]) > *:not(summary) {
    display: block;
  }
}
:where(body:not(.home-page)) .nw-tabpanel .nw-sample {
  padding: 20px 20px 10px;
}
:where(body:not(.home-page)) .nw-role-detail aside {
  padding: 20px;
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-doc-index > summary {
    padding: 16px 20px;
    min-height: 56px;
  }
}
.care-page .nw-head .nw-childcare-scope {
  max-width: 78ch;
  margin: 16px 0 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
.care-page .nw-training-observation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: 24px 40px;
  margin: 0 0 28px;
  padding: 22px 0;
  border-block: 1px solid var(--nw-line-care);
}
.care-page .nw-training-observation h3 {
  margin: 0;
  font: 700 var(--fs-lede)/1.35 var(--nw-display);
  color: var(--navy);
}
.care-page .nw-training-observation p {
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
.pricing-page .nw-navigation-quote {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 40px;
  padding: 28px;
  background: var(--white, #fff);
  border: 1px solid var(--nw-line-nav);
  border-radius: var(--r);
}
.pricing-page .nw-navigation-quote h3 {
  margin: 6px 0 12px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
.pricing-page .nw-navigation-quote p {
  margin: 0 0 16px;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
.pricing-page .nw-navigation-quote .nw-pricebox-label {
  font-size: var(--fs-small);
  font-weight: 700;
  color: var(--nw-nav-ink);
  margin-bottom: 0;
}
@media (max-width: 720px) {
  .care-page .nw-training-observation {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 24px;
    padding: 20px 0;
  }
  .pricing-page .nw-navigation-quote {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 22px 20px;
  }
  .pricing-page .nw-navigation-quote p:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 1121px) {
  .about-page .nw-person-body > .nw-bio {
    margin-top: auto;
    padding-top: 18px;
  }
}
:where(body:not(.home-page)) .nw-plan-cards--all {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin: 30px 0;
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card {
  border: 1px solid var(--respite-deep-30);
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card:nth-child(2) {
  background: var(--periwinkle-20);
  border-color: var(--respite-deep-30);
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-rate {
  display: block;
  font: 800 clamp(2.5rem, 3.4vw, 3rem)/1.08 var(--nw-display);
  letter-spacing: -0.035em;
  color: var(--navy);
}
:where(body:not(.home-page)) .plan-rate {
  margin: 18px 0 22px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--navy-20);
}
:where(body:not(.home-page)) .plans-include {
  padding: 26px 0;
  margin: 10px 0 24px;
  border-top: 1px solid var(--sage-30);
  border-bottom: 1px solid var(--sage-30);
}
:where(body:not(.home-page)) .plans-include h3 {
  font: 750 var(--fs-lede)/1.3 var(--nw-display, "Wix Madefor Display", sans-serif);
  margin: 0 0 22px;
}
:where(body:not(.home-page)) .plans-include-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
:where(body:not(.home-page)) .plans-include-item {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: var(--fs-body);
  line-height: 1.5;
}
:where(body:not(.home-page)) .plans-include-item p {
  margin: 0;
}
:where(body:not(.home-page)) .pricing-intro {
  display: grid;
  grid-template-columns: 1fr 290px;
  column-gap: 40px;
  align-items: center;
  max-width: none;
}
:where(body:not(.home-page)) .pricing-intro h2,
:where(body:not(.home-page)) .pricing-intro p {
  grid-column: 1;
}
:where(body:not(.home-page)) .pricing-painting {
  grid-column: 2;
  grid-row: 1/3;
  width: 100%;
  height: 220px;
  object-fit: contain;
}
:where(body:not(.home-page)) .consultation-person {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 18px;
  align-items: start;
  margin-bottom: 36px;
}
:where(body:not(.home-page)) .consultation-person img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 50%;
}
:where(body:not(.home-page)) .consultation-person h2 {
  font-size: var(--fs-lede);
  margin: 0 0 10px;
}
:where(body:not(.home-page)) .consultation-person p {
  font-size: var(--fs-body);
  margin: 0;
  line-height: 1.55;
}
:where(body:not(.home-page)) .careers-training {
  margin-top: 32px;
}
:where(body:not(.home-page)) .not-found-layout {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 20px 60px;
  align-items: start;
}
:where(body:not(.home-page)) .not-found-art {
  width: 100%;
  height: auto;
  grid-row: 1/3;
}
:where(body:not(.home-page)) .not-found-layout > .nw-head {
  margin-bottom: 0;
}
:where(body:not(.home-page)) .not-found-layout > .nw-list {
  grid-column: 2;
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .plans-include-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  :where(body:not(.home-page)) .pricing-intro {
    grid-template-columns: 1fr 200px;
    gap: 24px;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-plan-cards--all {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .plans-include {
    padding: 24px 0;
  }
  :where(body:not(.home-page)) .pricing-intro {
    display: block;
  }
  :where(body:not(.home-page)) .pricing-painting {
    width: 100%;
    height: 150px;
    margin-top: 20px;
  }
  :where(body:not(.home-page)) .not-found-layout {
    display: block;
  }
  :where(body:not(.home-page)) .not-found-art {
    display: block;
    max-width: 260px;
    margin: 0 auto 24px;
  }
}
:where(body:not(.home-page)) .careers-training--wide {
  grid-column: 1/-1;
  width: 100%;
  gap: 28px;
}
:where(body:not(.home-page)) .careers-training--wide .nw-photo {
  width: 100%;
  max-width: none;
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .careers-training--wide {
    gap: 24px;
  }
}
:where(body:not(.home-page)) .cta .cta-action > p {
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
}
:where(body:not(.home-page)) .cta .cta-action {
  min-width: 0;
  max-width: 100%;
}
:where(body:not(.home-page)) .cta .cta-action .btn {
  white-space: normal;
  max-width: 100%;
  text-align: center;
}
:where(body:not(.home-page)) .nw-heading-help {
  align-items: center;
  gap: 4px;
  min-width: 0;
}
:where(body:not(.home-page)) .nw-heading-help > :is(h2, h3) {
  flex: 0 1 auto;
  min-width: 0;
}
:where(body:not(.home-page)) .pricing-intro > .nw-heading-help {
  grid-column: 1;
  grid-row: 1;
}
:where(body:not(.home-page)) .pricing-intro > p {
  grid-row: 2;
}
@media (min-width: 721px) {
  :where(body:not(.home-page)) .nw-split--art.nw-opening-art {
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, 0.84fr);
    align-items: center;
    gap: 30px 40px;
  }
  :where(body:not(.home-page)) .nw-opening-art > .nw-art--painting {
    grid-column: 2;
    grid-row: 1;
    max-width: 100%;
  }
  :where(body:not(.home-page)) .nw-opening-art > div:first-child {
    grid-column: 1;
    grid-row: 1;
  }
  .care-page .nw-opening-art > .nw-moments,
.care-page .nw-opening-art > .nw-supporting-note {
    grid-column: 1/-1;
  }
  .care-page .nw-opening-art > .nw-moments {
    grid-row: 2;
  }
  .care-page .nw-opening-art > .nw-supporting-note {
    grid-row: 3;
    margin: 0;
  }
  .care-page .nw-support-copy {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}
.care-page .nw-opening-art .nw-moments .nw-item {
  padding-top: 14px;
}
.care-page .nw-plan-detail {
  margin-top: 26px;
  padding-top: 26px;
}
:where(body:not(.home-page)) .nw-steps .nw-step {
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .nw-fee-context {
  display: block;
}
:where(body:not(.home-page)) .nw-price-rate--quote {
  font-size: clamp(1.35rem, 2.5vw, 1.75rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em;
}
@media (min-width: 721px) {
  .care-page .nw-plan-detail {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: clamp(32px, 4vw, 64px);
  }
  .care-page .nw-plan-sheet {
    align-self: center;
  }
}
:where(body:not(.home-page)) .nw-disclosure {
  margin-top: 16px;
  border-top: 1px solid var(--nw-line-care);
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-disclosure > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 12px 0;
  list-style: none;
  cursor: pointer;
  font: 700 var(--fs-small)/1.4 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-disclosure > summary::-webkit-details-marker {
  display: none;
}
:where(body:not(.home-page)) .nw-disclosure > summary::after {
  content: "+";
  font: 400 var(--fs-h3)/1 var(--nw-text);
  flex: 0 0 20px;
  text-align: center;
}
:where(body:not(.home-page)) .nw-disclosure[open] > summary::after {
  content: "−";
}
:where(body:not(.home-page)) .nw-disclosure > summary:focus-visible,
:where(body:not(.home-page)) .nw-faq-categories > summary:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 4px;
  border-radius: var(--r-sm);
}
:where(body:not(.home-page)) .nw-disclosure-body {
  padding: 0 0 12px;
}
:where(body:not(.home-page)) .nw-disclosure-body p {
  font-size: var(--fs-body);
  line-height: 1.55;
  margin: 0 0 12px;
}
:where(body:not(.home-page)) .nw-disclosure-body p:last-child {
  margin-bottom: 0;
}
:where(body:not(.home-page)) .nw-heading-help {
  display: block;
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card {
  display: flex;
  flex-direction: column;
  padding: 28px;
  background: var(--respite-deep-10);
  border-radius: var(--r);
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card h3 {
  margin: 0;
  font: 800 var(--fs-h3)/1.25 var(--nw-display);
}
:where(body:not(.home-page)) .nw-plan-cards--all .plan-rate {
  margin: 18px 0;
  padding-bottom: 18px;
}
:where(body:not(.home-page)) .nw-plan-cards--all .plan-fee {
  font: 700 var(--fs-body)/1.45 var(--nw-text);
  min-height: 3em;
  margin-top: 12px;
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-fee-context {
  display: block;
  font: 400 var(--fs-small)/1.45 var(--nw-text);
  margin-top: 4px;
  color: var(--nw-body);
}
.interior-page .nw-plan-cards--all .nw-rate {
  margin: 0;
  font: 800 var(--fs-display)/1.08 var(--nw-display);
  letter-spacing: -0.035em;
  white-space: nowrap;
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-rate small {
  font: 400 var(--fs-body)/1.2 var(--nw-text);
  letter-spacing: 0;
  margin-left: 2px;
}
:where(body:not(.home-page)) .nw-plan-cards--all .nw-disclosure {
  margin-top: auto;
}
:where(body:not(.home-page)) .nw-care-pricing {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 0 40px;
  align-items: center;
}
:where(body:not(.home-page)) .nw-care-pricing > .nw-plan-cards,
:where(body:not(.home-page)) .nw-care-pricing > .nw-supporting-note,
:where(body:not(.home-page)) .nw-care-pricing > .nw-after {
  grid-column: 1/-1;
}
:where(body:not(.home-page)) .nw-care-pricing .nw-art {
  margin: 0;
  max-width: 340px;
  justify-self: end;
}
:where(body:not(.home-page)) .nw-care-pricing .nw-art img {
  width: 100%;
  height: auto;
}
:where(body:not(.home-page)) .nw-care-pricing .nw-intake {
  max-width: 58ch;
}
:where(body:not(.home-page)) .nw-care-pricing .nw-price-meta {
  font: 400 var(--fs-body)/1.6 var(--nw-text);
  margin: 0 0 20px;
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-care-pricing > .nw-supporting-note {
  margin: 0;
}
:where(body:not(.home-page)) .nw-care-pricing > .nw-after {
  margin: 14px 0 0;
}
:where(body:not(.home-page)) .nw-moments .nw-item {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 8px 12px;
  align-content: start;
}
:where(body:not(.home-page)) .nw-moments .nw-item > h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  align-self: start;
}
:where(body:not(.home-page)) .nw-moments .nw-item > p {
  grid-column: 1/-1;
  margin: 0;
}
:where(body:not(.home-page)) .nw-calc {
  gap: 24px 28px;
}
:where(body:not(.home-page)) .nw-calc-results {
  gap: 0;
  background: var(--panel-respite);
  border-radius: var(--r);
  overflow: hidden;
}
:where(body:not(.home-page)) .nw-calc-plan {
  background: transparent;
  border-radius: 0;
  padding: 22px 18px;
}
:where(body:not(.home-page)) .nw-calc-plan + .nw-calc-plan {
  border-left: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .nw-calc-total > span:first-child {
  min-height: 2.8em;
}
:where(body:not(.home-page)) .nw-panel-tint {
  padding: 32px;
}
:where(body:not(.home-page)) .nw-panel-tint .nw-tabpanel {
  background: transparent;
  padding: 24px 0 0;
  border-radius: 0;
}
:where(body:not(.home-page)) .nw-panel-tint .nw-tabpanel .nw-sample {
  background: #fff;
  border: 1px solid var(--nw-line-care);
  border-radius: var(--r);
  padding: 20px;
}
:where(body:not(.home-page)) .nw-role-description {
  grid-column: 1/-1;
}
:where(body:not(.home-page)) .nw-role-top {
  gap: 20px 36px;
}
:where(body:not(.home-page)) .nw-role-top .nw-ruled {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 10px 16px;
  margin: 0;
}
:where(body:not(.home-page)) .nw-role-top .nw-ruled dt,
:where(body:not(.home-page)) .nw-role-top .nw-ruled dd {
  margin: 0;
  padding: 0;
  border: 0;
}
:where(body:not(.home-page)) .nw-role-top .nw-ruled dt {
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-faq-categories {
  align-self: start;
}
:where(body:not(.home-page)) .nw-faq-categories > summary {
  display: none;
}
:where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail {
  position: static;
  max-height: none;
  overflow: visible;
}
:where(body:not(.home-page)) .nw-back-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 16px;
  font: 700 var(--fs-small)/1.4 var(--nw-text);
  color: var(--navy);
  text-underline-offset: 4px;
}
:where(body:not(.home-page)) #faq-categories,
:where(body:not(.home-page)) #privacy-contents {
  scroll-margin-top: calc(var(--header-height, 72px) + 16px);
}
:where(body:not(.home-page)) .nw-contact {
  gap: 28px 40px;
}
:where(body:not(.home-page)) .nw-contact-intro .nw-direct {
  margin-top: 22px;
  padding-top: 18px;
}
:where(body:not(.home-page)) .nw-contact-intro .nw-direct p {
  margin: 8px 0 0;
}
:where(body:not(.home-page)) .nw-formcard .nw-fine {
  margin: 12px 0 18px;
}
:where(body:not(.home-page)) .nw-form-status {
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  padding: 14px 16px;
  background: var(--panel-respite);
  border-radius: var(--r-sm);
  margin: 0 0 12px;
}
@media (min-width: 1121px) {
  :where(body:not(.home-page)) .nw-faq-categories {
    position: sticky;
    top: calc(var(--header-height) + 24px);
  }
  :where(body:not(.home-page)) .nw-moments .nw-item > h3 {
    min-height: 2.6em;
  }
  :where(body:not(.home-page)) .nw-contact-intro {
    grid-column: 2;
    grid-row: 1;
  }
  :where(body:not(.home-page)) .nw-contact .nw-formcard {
    grid-column: 1;
    grid-row: 1 / span 2;
  }
  :where(body:not(.home-page)) .nw-contact .nw-aside {
    grid-column: 2;
    grid-row: 2;
  }
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-faq-categories {
    position: static;
    border: 1px solid var(--nw-line-care);
    border-radius: var(--r);
    background: #fff;
    margin-bottom: 24px;
  }
  :where(body:not(.home-page)) .nw-faq-categories > summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    min-height: 52px;
    padding: 14px 18px;
    cursor: pointer;
    list-style: none;
    font: 700 var(--fs-body)/1.4 var(--nw-text);
    color: var(--navy);
  }
  :where(body:not(.home-page)) .nw-faq-categories > summary::-webkit-details-marker {
    display: none;
  }
  :where(body:not(.home-page)) .nw-faq-categories > summary::after {
    content: "+";
    font-size: var(--fs-h3);
  }
  :where(body:not(.home-page)) .nw-faq-categories[open] > summary::after {
    content: "−";
  }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    padding: 0 10px 12px;
    margin: 0;
    background: transparent;
    border: 0;
    white-space: normal;
  }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail a {
    white-space: normal;
    border: 0;
    border-radius: var(--r-sm);
    padding: 12px;
    font-size: var(--fs-small);
    min-height: 44px;
  }
  :where(body:not(.home-page)) .nw-contact-intro {
    grid-column: 1/-1;
  }
  :where(body:not(.home-page)) .nw-contact .nw-formcard,
:where(body:not(.home-page)) .nw-contact .nw-aside {
    grid-column: 1/-1;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-plan-cards--all {
    gap: 18px;
    margin: 22px 0;
  }
  :where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card {
    padding: 22px 20px;
  }
  .interior-page .nw-plan-cards--all .nw-rate {
    font-size: var(--fs-display);
  }
  :where(body:not(.home-page)) .nw-plan-cards--all .plan-fee {
    min-height: 0;
  }
  :where(body:not(.home-page)) .nw-plan-cards--all .plan-rate {
    margin: 16px 0;
    padding-bottom: 16px;
  }
  :where(body:not(.home-page)) .nw-care-pricing {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  :where(body:not(.home-page)) .nw-care-pricing .nw-care-pricing-intro {
    order: 0;
  }
  :where(body:not(.home-page)) .nw-care-pricing > .nw-plan-cards {
    order: 1;
  }
  :where(body:not(.home-page)) .nw-care-pricing > .nw-art {
    order: 4;
    max-width: 160px;
    align-self: center;
    margin-top: 16px;
  }
  :where(body:not(.home-page)) .nw-care-pricing > .nw-supporting-note {
    order: 2;
  }
  :where(body:not(.home-page)) .nw-care-pricing > .nw-after {
    order: 3;
  }
  :where(body:not(.home-page)) .nw-care-pricing .nw-heading {
    margin-top: 0;
  }
  :where(body:not(.home-page)) .nw-care-pricing .nw-intake {
    margin-top: 18px;
  }
  :where(body:not(.home-page)) .nw-moments .nw-item {
    padding: 14px 0;
    gap: 8px 12px;
  }
  :where(body:not(.home-page)) .nw-moments .nw-item > h3 {
    font-size: var(--fs-lede);
  }
  :where(body:not(.home-page)) .nw-calc {
    padding: 22px 18px;
  }
  :where(body:not(.home-page)) .nw-calc-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(body:not(.home-page)) .nw-calc-plan {
    padding: 18px 12px;
  }
  :where(body:not(.home-page)) .nw-calc-plan h4 {
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .nw-calc-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2px;
    font-size: var(--fs-small);
    min-height: 3.8em;
    align-content: start;
  }
  :where(body:not(.home-page)) .nw-calc-row > span:last-child {
    font-weight: 600;
  }
  :where(body:not(.home-page)) .nw-calc-total > span:first-child {
    min-height: 4.2em;
  }
  :where(body:not(.home-page)) .nw-calc-flag {
    letter-spacing: 0;
    font-size: var(--fs-label);
    line-height: 1.4;
  }
  :where(body:not(.home-page)) .nw-panel-tint {
    padding: 24px 18px;
  }
  :where(body:not(.home-page)) .nw-panel-tint .nw-example-mobile .nw-tabpanel {
    padding: 16px 0 0;
    margin-bottom: 0;
  }
  :where(body:not(.home-page)) .nw-panel-tint .nw-tabpanel .nw-sample {
    padding: 16px;
  }
  :where(body:not(.home-page)) .nw-plan-detail {
    margin-top: 20px;
    padding-top: 20px;
  }
  :where(body:not(.home-page)) .nw-mv {
    padding-block: 20px;
    gap: 18px;
    margin-bottom: 26px;
  }
  :where(body:not(.home-page)) .nw-mv p {
    font-size: var(--fs-lede);
    font-weight: 600;
    line-height: 1.45;
  }
  :where(body:not(.home-page)) .nw-value {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 5px 12px;
    border-top-width: 1px;
    padding-top: 12px;
  }
  :where(body:not(.home-page)) .nw-value .nw-value-label {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    font-size: var(--fs-label);
    align-self: center;
  }
  :where(body:not(.home-page)) .nw-value h3 {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
  }
  :where(body:not(.home-page)) .nw-role {
    padding: 22px 20px;
  }
  :where(body:not(.home-page)) .nw-role-top {
    gap: 18px;
  }
  :where(body:not(.home-page)) .nw-role-top .nw-ruled {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 8px 12px;
  }
  :where(body:not(.home-page)) .nw-role-top .nw-ruled dd {
    font-size: var(--fs-body);
    line-height: 1.5;
  }
  :where(body:not(.home-page)) .nw-contact-intro .consultation-person {
    margin-top: 0;
  }
  :where(body:not(.home-page)) .nw-contact-intro .nw-direct {
    margin-top: 18px;
    padding-top: 16px;
  }
  :where(body:not(.home-page)) .nw-formcard {
    padding: 22px 18px;
  }
  :where(body:not(.home-page)) .site-footer {
    padding: 26px 0 20px;
  }
  :where(body:not(.home-page)) .site-footer .footer-grid {
    gap: 20px 18px;
  }
  :where(body:not(.home-page)) .site-footer .footer-logo {
    height: 24px;
  }
  :where(body:not(.home-page)) .site-footer .footer-brand p {
    font-size: var(--fs-small);
    margin-top: 12px;
    max-width: none;
  }
  :where(body:not(.home-page)) .site-footer .footer-brand .footer-region,
:where(body:not(.home-page)) .site-footer .footer-brand .footer-pay {
    margin-top: 8px;
  }
  :where(body:not(.home-page)) .site-footer .footer-col h2 {
    margin-bottom: 6px;
    font-size: var(--fs-label);
  }
  :where(body:not(.home-page)) .site-footer .footer-col > a {
    font-size: var(--fs-body);
    min-height: 40px;
    padding: 8px 0;
  }
  :where(body:not(.home-page)) .site-footer .footer-contact {
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px;
    align-items: center;
  }
  :where(body:not(.home-page)) .site-footer .footer-contact h2,
:where(body:not(.home-page)) .site-footer .footer-contact > a:first-of-type {
    flex-basis: 100%;
  }
  :where(body:not(.home-page)) .site-footer .footer-contact p {
    margin: 8px 0 0;
    flex-basis: 100%;
  }
  :where(body:not(.home-page)) .site-footer .footer-social {
    margin-top: 10px;
  }
  :where(body:not(.home-page)) .site-footer .footer-legal {
    margin-top: 20px;
    padding-top: 16px;
    gap: 12px;
  }
}
:where(body:not(.home-page)) .nw-calc-results {
  grid-template-rows: repeat(5, auto);
}
:where(body:not(.home-page)) .nw-calc-plan {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: 1 / span 5;
  gap: 0;
}
:where(body:not(.home-page)) .nw-calc-plan h4 {
  min-height: 0;
}
:where(body:not(.home-page)) .nw-calc-plan .nw-calc-row {
  align-content: stretch;
}
:where(body:not(.home-page)) .nw-calc-plan .nw-calc-flag {
  grid-row: 5;
}
:where(body:not(.home-page)) .nw-disclosure-body h3 {
  font: 700 var(--fs-body)/1.4 var(--nw-display);
  margin: 4px 0 12px;
  color: var(--navy);
}
@media (min-width: 721px) {
  :where(body:not(.home-page)) .nw-plan-cards--all {
    grid-template-rows: repeat(8, auto);
    row-gap: 0;
  }
  :where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: 1 / span 8;
    gap: 0;
  }
  :where(body:not(.home-page)) .nw-plan-cards--all .nw-plan-card .nw-disclosure {
    grid-row: 7;
    margin-top: 0;
  }
  :where(body:not(.home-page)) .nw-plan-cards--preview {
    grid-template-rows: repeat(4, auto);
  }
  :where(body:not(.home-page)) .nw-plan-cards--preview .nw-plan-card {
    grid-row: 1 / span 4;
  }
  :where(body:not(.home-page)) .nw-plan-cards--preview .nw-plan-card .nw-disclosure {
    grid-row: 4;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-value .nw-value-label {
    letter-spacing: 0;
    text-transform: none;
    overflow-wrap: normal;
  }
  :where(body:not(.home-page)) .nw-role-top .nw-ruled dt {
    font-size: var(--fs-label);
    letter-spacing: 0;
    text-transform: none;
    overflow-wrap: normal;
  }
  :where(body:not(.home-page)) .nw-calc-plan .nw-calc-row {
    grid-template-rows: 1fr auto;
    min-height: 4.3em;
  }
}
@media (max-width: 380px) {
  :where(body:not(.home-page)) .nw-calc {
    padding-inline: 14px;
  }
  :where(body:not(.home-page)) .nw-calc-plan {
    padding-inline: 10px;
  }
}
.care-page .nw-support-detail {
  gap: 24px 40px;
}
.care-page .nw-support-intro {
  background: transparent;
  border-radius: 0;
  padding: 0;
}
.care-page .nw-support-copy {
  display: contents;
}
.care-page .nw-support-copy article {
  padding-left: 0;
  min-width: 0;
}
.care-page .nw-support-copy article + article {
  padding-top: 20px;
  margin-top: 0;
}
.care-page .nw-opening-art .nw-moments .nw-item > h3 {
  min-height: 0;
}
@media (min-width: 721px) {
  .care-page .nw-opening-art {
    gap: 24px 40px;
  }
  .care-page .nw-opening-art > div:first-child .nw-head {
    margin-bottom: 0;
  }
  .care-page .nw-opening-art > .nw-moments {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 24px;
    margin: 0;
  }
  .care-page .nw-support-detail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .care-page .nw-support-intro {
    grid-column: 1;
    grid-row: 1;
  }
  .care-page .nw-support-copy article:nth-child(1) {
    grid-column: 2;
    grid-row: 1;
  }
  .care-page .nw-support-copy article:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }
  .care-page .nw-support-copy article:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }
}
@media (min-width: 1121px) {
  .care-page .nw-opening-art {
    align-items: start;
    gap: 24px 40px;
  }
  .care-page .nw-opening-art > .nw-moments {
    grid-column: 1;
    grid-row: 2;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 24px;
  }
}
@media (max-width: 720px) {
  .care-page .nw-support-detail {
    display: flex;
    flex-direction: column;
  }
  .care-page .nw-support-copy article {
    margin: 0;
    padding-top: 20px;
    border-top: 1px solid var(--nw-line-care);
  }
}
.care-page .nw-support-detail .nw-support-topic {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  column-gap: 14px;
  row-gap: 8px;
  align-content: start;
  padding-left: 0;
}
.care-page .nw-support-topic .nw-support-topic-icon {
  position: static;
  grid-column: 1;
  grid-row: 1;
  width: 22px;
  height: 22px;
  margin: 2px 0 0;
  color: var(--nw-care-ink);
}
.care-page .nw-support-topic h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
}
.care-page .nw-support-topic p {
  grid-column: 2;
  grid-row: auto;
  margin: 0;
}
.care-page .nw-opening-art > .nw-moments--schedule {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
.care-page .nw-opening-art .nw-moments--schedule .nw-item {
  display: grid;
  grid-template-columns: 148px minmax(0, 1fr);
  gap: 0 22px;
  align-items: start;
  padding: 14px 0;
}
.care-page .nw-opening-art .nw-moments--schedule .nw-item > h3 {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  margin: 0;
  font-size: var(--fs-body);
  line-height: 1.4;
}
.care-page .nw-opening-art .nw-moments--schedule .nw-item > p {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
}
@media (max-width: 720px) {
  .care-page .nw-opening-art .nw-moments--schedule .nw-item {
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
    padding: 16px 0;
  }
  .care-page .nw-opening-art .nw-moments--schedule .nw-item > p {
    grid-column: 1;
    grid-row: 2;
  }
}
/* Interior heroes use the Home hero geometry: same column split, divider position and lede width */
@media (min-width: 1121px) {
  .interior-page .hero.hero--interior .hero-copy {
    grid-template-columns: minmax(0, 556fr) minmax(0, 532fr);
    column-gap: 72px;
  }
  .interior-page .hero.hero--interior .interior-hero-secondary {
    position: relative;
    max-width: none;
    border-left: 0;
    padding-left: 0;
  }
  .interior-page .hero.hero--interior .interior-hero-secondary::before {
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: -70px;
    width: 2px;
    background: color-mix(in srgb, var(--periwinkle-70) 48%, transparent);
    pointer-events: none;
  }
  .interior-page .hero.hero--interior .page-lede {
    max-width: 58ch;
  }
}
/* A paragraph that follows a section lede gets the lede's breathing room */
.interior-page .nw-section .nw-head .nw-lede + p:not(.nw-after),
.interior-page .nw-section .nw-areas-head .nw-head .nw-lede + p {
  margin-top: 14px;
}
.interior-page .nw-section .nw-head .nw-childcare-scope {
  max-width: 40rem;
}
/* Navigation: steps sit under How Navigation begins */
.interior-page .nw-section .nw-begin-steps {
  margin-top: 40px;
}
/* ── Split head (sitewide component; same block in home.css) ──
   Heading on its own line; under it, a two-column row whose columns match the grid below.
   Left: the intro. Right: the section's key line (.pull-line) or the intro's second paragraph.
   Bottoms align. Stacks at 900px. Use it when an intro would run four or more lines with
   nothing beside it. */
.interior-page .nw-section .nw-head.split-head {
  max-width: none;
}
.interior-page .split-head .split-head-row {
  display: grid;
  grid-template-columns: var(--split-cols, minmax(0, 1fr) minmax(0, 1fr));
  column-gap: var(--split-gap, 40px);
  margin-top: var(--nw-space-3, 14px);
}
.interior-page .nw-section .nw-head.split-head .split-head-row p {
  max-width: none;
  margin: 0;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 720px) {
  .interior-page .split-head .split-head-row {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }
}
/* Tabbed variant: intro left, tab buttons stacked on the right, panels full width (Navigation
   examples). Columns mirror the tab panel's own grid so the buttons line up with its right column. */
@media (min-width: 721px) {
  :where(body:not(.home-page)) .split-head-tabs {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 36px;
    align-items: start;
  }
  :where(body:not(.home-page)) .split-head-tabs > .nw-head,
:where(body:not(.home-page)) .split-head-tabs > [data-nw-tabs] {
    display: contents;
  }
  :where(body:not(.home-page)) .split-head-tabs .nw-heading {
    grid-column: 1/-1;
  }
  :where(body:not(.home-page)) .split-head-tabs .nw-head .nw-lede {
    grid-column: 1;
    margin-bottom: 32px;
    max-width: none;
  }
  :where(body:not(.home-page)) .split-head-tabs .nw-tablist {
    grid-column: 2;
    margin-bottom: 12px;
    flex-direction: column;
    align-items: flex-start;
  }
  :where(body:not(.home-page)) .split-head-tabs [role="tabpanel"],
:where(body:not(.home-page)) .split-head-tabs .nw-tabpanel {
    grid-column: 1/-1;
  }
}
@media (min-width: 1121px) {
  :where(body:not(.home-page)) .split-head-tabs {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    column-gap: 48px;
  }
}
/* Split head: paragraphs top-align; a key line (pull-line) bottom-aligns with the intro. */
.interior-page .split-head .split-head-row {
  align-items: start;
}
/* Two neighbouring sections on the same background read as one long gap (64 + 64).
   The second one drops its top padding so the break is one standard step. */
.interior-page .nw-section--white + .nw-section--white {
  padding-top: 0;
}
/* Care, "A Care Specialist, with a team behind them": the photo was a short landscape centred
   beside a much taller column, leaving empty space above and below it. The photo now runs the
   full height of the text column (cropped to fit), so both columns start and end together. */
@media (min-width: 721px) {
  .care-page .nw-split--media {
    align-items: stretch;
  }
  .care-page .nw-split--media > .nw-media {
    display: flex;
    flex-direction: column;
    margin: 0;
  }
  .care-page .nw-split--media > .nw-media img {
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: 50% 60%;
  }
}
/* "Quoted by project" rows (Navigation: How Navigation begins; Pricing: Navigation starts with…).
   Heading across the section; intro and link in the first two columns; the quote card in the third,
   on the same three-column grid as the steps that follow on the Navigation page. */
.interior-page .nw-quote-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 24px;
  align-items: stretch;
}
.interior-page .nw-quote-row > .nw-heading {
  grid-column: 1/-1;
  margin-bottom: var(--nw-space-3, 14px);
}
.interior-page .nw-quote-row > .nw-quote-copy {
  grid-column: 1/3;
  padding-right: 24px;
}
.interior-page .nw-quote-row > .nw-quote-copy > * {
  margin-top: 0;
}
.interior-page .nw-quote-row > .nw-quote-copy > p + p {
  margin-top: 12px;
}
.interior-page .nw-quote-row > .nw-quote-copy > .nw-after {
  margin-top: 20px;
}
.interior-page .nw-quote-row > :is(.nw-pricebox, .nw-navigation-quote) {
  grid-column: 3;
  margin: 0;
  display: block;
}
.pricing-page .nw-quote-row > .nw-navigation-quote h3 {
  margin: 6px 0 10px;
}
.pricing-page .nw-quote-row > .nw-navigation-quote p:last-child {
  margin-bottom: 0;
}
@media (max-width: 1120px) {
  .interior-page .nw-quote-row {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }
  .interior-page .nw-quote-row > * {
    grid-column: 1/-1 !important;
    padding-right: 0;
  }
  .interior-page .nw-quote-row > .nw-heading {
    margin-bottom: 0;
  }
}
.interior-page .nw-quote-row > .nw-quote-copy > p:not(.nw-lede):not(.nw-after) {
  color: var(--nw-body);
}
/* Contact: the tall form spread its height across both right-hand rows, opening a large gap between
   "Prefer to talk directly?" and "What happens next." The first row now fits its content and the
   sidebar stacks with normal spacing. Sidebar headings share one size under the form's heading. */
@media (min-width: 721px) {
  :where(body:not(.home-page)) .nw-contact {
    grid-template-rows: auto 1fr;
  }
  :where(body:not(.home-page)) .nw-contact .nw-aside {
    align-self: start;
    margin-top: 8px;
    padding-top: 24px;
    border-top: 1px solid var(--nw-line);
  }
}
:where(body:not(.home-page)) .nw-contact-intro .consultation-person h2,
:where(body:not(.home-page)) .nw-contact-intro .nw-direct h2,
:where(body:not(.home-page)) .nw-contact .nw-aside > h2 {
  font: 800 var(--fs-lede)/1.25 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
  margin: 0 0 10px;
}
/* FAQ splits: the heading stays in view beside a long question list instead of leaving a tall empty
   column under it. */
@media (min-width: 721px) {
  .interior-page .nw-split--faq {
    align-items: start;
  }
  .interior-page .nw-split--faq > .nw-heading,
.interior-page .nw-split--faq > div:first-child:has(> .nw-heading) {
    position: sticky;
    top: 112px;
  }
}
/* Care, "What would you like time for?": the handbook cover scene runs the full height of the
   text column as a rounded picture card. */
.care-page .nw-art--scene {
  margin: 0;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: var(--coral-20);
}
.care-page .nw-art--scene img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 70%;
}
@media (min-width: 721px) {
  .care-page .nw-opening-art:has(> .nw-art--scene) {
    align-items: stretch;
  }
  .care-page .nw-opening-art > .nw-art--scene {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: stretch;
    max-width: none;
  }
  .care-page .nw-opening-art:has(> .nw-art--scene) > :last-child:not(.nw-art--scene) {
    grid-column: 1;
  }
}
@media (max-width: 720px) {
  .care-page .nw-art--scene {
    height: 340px;
    max-width: none;
  }
}
/* Care: "Prepared for your home and your neighborhood" — handbook walk-through and outing map.
   Numbered pins are page elements laid over the art (sharp, readable, editable). Rows zigzag. */
:where(body:not(.home-page)) .nw-safety-band .nw-head {
  margin-bottom: 32px;
}
:where(body:not(.home-page)) .nw-safety-row {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: 48px;
  align-items: center;
}
:where(body:not(.home-page)) .nw-safety-row + .nw-safety-row {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid rgba(27, 42, 74, 0.12);
}
:where(body:not(.home-page)) .nw-safety-row--reverse .nw-safety-art {
  order: 2;
}
:where(body:not(.home-page)) .nw-safety-art {
  margin: 0;
}
:where(body:not(.home-page)) .nw-pinned {
  position: relative;
}
:where(body:not(.home-page)) .nw-pinned img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--r);
}
:where(body:not(.home-page)) .nw-safety-row--reverse .nw-pinned img {
  border-radius: var(--r);
  box-shadow: 0 1px 0 rgba(27, 42, 74, 0.06);
}
:where(body:not(.home-page)) .nw-pin {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--navy, var(--navy));
  color: #fff;
  font: 700 var(--fs-label)/1 var(--nw-display);
  box-shadow: 0 0 0 3px #fff;
  flex: none;
}
:where(body:not(.home-page)) .nw-pin--home {
  background: var(--sage, var(--navigation-deep));
  font-size: var(--fs-small);
}
:where(body:not(.home-page)) .nw-pinned > .nw-pin {
  position: absolute;
  transform: translate(-50%, -50%);
}
:where(body:not(.home-page)) .nw-safety-copy h3 {
  margin: 0 0 6px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-safety-copy > p {
  margin: 0 0 18px;
  font: 400 var(--fs-body)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .nw-pin-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}
:where(body:not(.home-page)) .nw-pin-list li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  font: 400 var(--fs-body)/1.5 var(--nw-text);
  color: var(--navy, var(--navy));
}
:where(body:not(.home-page)) .nw-pin-list .nw-pin {
  box-shadow: none;
  margin-top: -1px;
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-safety-row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  :where(body:not(.home-page)) .nw-safety-row--reverse .nw-safety-art {
    order: 0;
  }
  :where(body:not(.home-page)) .nw-pin {
    width: 22px;
    height: 22px;
    font-size: var(--fs-label);
  }
  :where(body:not(.home-page)) .nw-pin-list li {
    grid-template-columns: 22px minmax(0, 1fr);
  }
}
@media (min-width: 721px) {
  :where(body:not(.home-page)) .nw-safety-row--reverse {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  }
}
/* About values: the handbook's illustration for each value, in a circle beside the words. */
:where(body:not(.home-page)) .nw-value:has(> .nw-value-art) {
  grid-template-columns: 72px minmax(0, 1fr);
  column-gap: 18px;
  align-items: start;
}
:where(body:not(.home-page)) .nw-value-art {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--paper);
  box-shadow: 0 0 0 1px rgba(27, 42, 74, 0.08);
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-value:has(> .nw-value-art) {
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 14px;
  }
  :where(body:not(.home-page)) .nw-value-art {
    width: 56px;
    height: 56px;
  }
}
@media (min-width: 1121px) {
  .pricing-page .pricing-intro .pricing-painting {
    width: 320px;
    height: 180px;
  }
}
/* Pricing: how billing works, as a four-step strip above the payment questions (from the handbook). */
:where(body:not(.home-page)) .nw-bill-flow {
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  counter-reset: none;
}
:where(body:not(.home-page)) .nw-bill-step {
  position: relative;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 6px;
  padding: 0 4px;
}
:where(body:not(.home-page)) .nw-bill-step + .nw-bill-step::before {
  content: "";
  position: absolute;
  top: 24px;
  left: calc(-50% + 30px);
  width: calc(100% - 60px);
  height: 2px;
  background: var(--nw-line, var(--navy-15));
}
:where(body:not(.home-page)) .nw-bill-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--panel-respite, var(--panel-respite));
  color: var(--navy, var(--navy));
  position: relative;
  z-index: 1;
}
:where(body:not(.home-page)) .nw-bill-step:last-child .nw-bill-icon {
  background: var(--navy, var(--navy));
  color: #fff;
}
:where(body:not(.home-page)) .nw-bill-icon svg {
  width: 22px;
  height: 22px;
}
:where(body:not(.home-page)) .nw-bill-step strong {
  font: 700 var(--fs-small)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-bill-step > span:last-child {
  font: 400 var(--fs-label)/1.4 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-bill-step:nth-child(3)::before {
    display: none;
  }
}
/* Care topics: a small illustration above each of the four topics (handbook art + one new spot).
   Same height for all four so the 2×2 rows stay level. */
.care-page .nw-support-topic > .nw-topic-art {
  grid-column: 1/-1;
  grid-row: 1;
  display: block;
  height: 104px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: left bottom;
  margin: 0 0 10px;
}
.care-page .nw-support-topic:has(> .nw-topic-art) .nw-support-topic-icon,
.care-page .nw-support-topic:has(> .nw-topic-art) h3 {
  grid-row: 2;
}
@media (max-width: 720px) {
  .care-page .nw-support-topic > .nw-topic-art {
    height: 84px;
  }
}
/* About values: the newer handbook value art is wide still lifes, so it sits above each value
   at one shared height instead of in a circle. */
:where(body:not(.home-page)) .nw-value:has(> .nw-value-art) {
  display: block;
}
:where(body:not(.home-page)) .nw-value > .nw-value-art {
  display: block;
  width: auto;
  height: 88px;
  max-width: 100%;
  object-fit: contain;
  object-position: left bottom;
  border-radius: 0;
  background: none;
  box-shadow: none;
  margin: 4px 0 14px;
}
.care-page .nw-support-topic:has(> .nw-topic-art) {
  grid-template-columns: minmax(0, 1fr);
}
.care-page .nw-support-topic:has(> .nw-topic-art) > .nw-support-topic-icon {
  display: none;
}
.care-page .nw-support-topic:has(> .nw-topic-art) > h3,
.care-page .nw-support-topic:has(> .nw-topic-art) > p {
  grid-column: 1;
}
/* Care, "Your knowledge becomes their preparation": the short intro sat centred beside the taller
   Family Care Plan card. The handbook's Care Plan binder now sits above the intro (as the topic
   illustrations do higher up the page), and both columns start together. */
.care-page .nw-plan-detail {
  align-items: start;
}
.care-page .nw-plan-detail .nw-plan-sheet {
  align-self: start;
}
.care-page .nw-plan-art {
  display: block;
  height: 130px;
  width: auto;
  margin: 0 0 16px;
}
@media (max-width: 720px) {
  .care-page .nw-plan-art {
    height: 96px;
  }
}
/* Navigation examples: "What you'll have" moves under "What we do" on the left, and the sample
   card takes the right column on its own, so both columns run the same height. */
@media (min-width: 1121px) {
  .navigation-page .nw-tabpanel {
    grid-template-rows: auto 1fr;
    row-gap: 0;
    align-items: start;
  }
  .navigation-page .nw-tabpanel > .nw-tabpanel-main {
    grid-column: 1;
    grid-row: 1;
  }
  .navigation-page .nw-tabpanel > .nw-tabpanel-have {
    display: contents;
  }
  .navigation-page .nw-tabpanel-have > h3 {
    grid-column: 1;
    grid-row: 2;
    align-self: start;
    margin-top: 22px;
  }
  .navigation-page .nw-tabpanel-have > .nw-have {
    grid-column: 1;
    grid-row: 2;
    align-self: start;
    margin-top: 52px;
  }
  .navigation-page .nw-tabpanel-have > :not(h3):not(.nw-have) {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    margin-top: 0;
  }
}
/* Tablet (721–900): the Care team photo sits above the copy at full width instead of a thin column. */
@media (min-width: 721px) and (max-width: 1120px) {
  .care-page .nw-split--media {
    display: block;
  }
  .care-page .nw-split--media > .nw-media {
    margin: 0 0 24px;
    max-width: none;
  }
  .care-page .nw-split--media > .nw-media img {
    width: 100%;
    height: 340px;
    object-fit: cover;
    object-position: 50% 55%;
    border-radius: var(--r);
  }
}
/* Care: on tablets the schedule list stays in the text column, beside the painting */
@media (min-width: 721px) and (max-width: 1120px) {
  .care-page .nw-shell.nw-opening-art > .nw-moments--schedule {
    grid-column: 1;
  }
}
/* Interior hero H1s: every page sets in exactly two lines */
@media (min-width: 1121px) {
  :where(body:not(.home-page)) .nw-hero h1 {
    max-width: 10.6em !important;
    text-wrap: balance;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-hero h1 {
    font-size: min(34px, 8.4vw) !important;
  }
}
/* Navigation examples: say that the three projects are choices */
:where(body:not(.home-page)) .nw-tab-cue {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  font: 700 var(--fs-label)/1.2 var(--nw-text, inherit);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--nw-navigation-ink, var(--navigation-deep-shade-60));
}
:where(body:not(.home-page)) .nw-tab-cue svg {
  width: 18px;
  height: 18px;
  flex: none;
  animation: nw-cue 1.6s ease-in-out 3;
}
@keyframes nw-cue {
  50% {
    transform: translateY(3px);
  }
}
@media (prefers-reduced-motion: reduce) {
  :where(body:not(.home-page)) .nw-tab-cue svg {
    animation: none;
  }
}
:where(body:not(.home-page)) .nw-tab-cue--phone {
  display: none;
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-tab-cue--phone {
    display: flex;
  }
}
:where(body:not(.home-page)) .nw-tab[aria-selected="false"]:hover {
  background: color-mix(in srgb, var(--navigation-deep-shade-60) 8%, transparent);
}
/* Careers role cards: the role summary sits under the title, beside the facts; both cards end with the same apply row */
.careers-page .nw-role-top > div > .nw-role-description {
  margin: 14px 0 0;
}
.careers-page .nw-role--navigation .nw-role-apply,
.careers-page .nw-role-apply {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.careers-page .nw-role-apply p {
  margin: 0;
  max-width: 60ch;
}
.careers-page .nw-role-apply .btn {
  flex: none;
}
@media (max-width: 720px) {
  .careers-page .nw-role-apply,
.careers-page .nw-role--navigation .nw-role-apply {
    flex-direction: column;
    align-items: stretch;
  }
}
.careers-page .nw-role-top > dl {
  align-self: start;
  align-content: start;
}
/* Pricing: "What stands behind every visit" reads as a checked list */
.pricing-page .plans-include-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.pricing-page .plans-include-check {
  flex: none;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  color: var(--nw-care-ink, var(--respite-deep-shade-40));
}
/* ═════ Providers page rebuild ═════ */
.providers-page .opening-actions {
  align-items: center;
}
/* Situation cards */
:where(body:not(.home-page)) .pv-situations {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 8px;
}
:where(body:not(.home-page)) .pv-situation {
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  padding: 24px 26px 26px;
  border-radius: var(--nw-radius-card);
  border: 1px solid var(--nw-line-nav);
  background: var(--nw-navigation);
}
:where(body:not(.home-page)) .pv-situation--care {
  background: var(--panel-respite);
  border-color: var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-situation-art {
  display: block;
  width: 100%;
  height: 150px;
  object-fit: contain;
  margin: 0 0 14px;
}
:where(body:not(.home-page)) .pv-situation-tag {
  margin: 0 0 8px;
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .pv-situation--care .pv-situation-tag {
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-situation h3 {
  margin: 0 0 12px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  letter-spacing: -0.01em;
  color: var(--navy);
  text-wrap: balance;
}
:where(body:not(.home-page)) .pv-situation-help {
  margin: 0;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-situation-result {
  display: flex;
  gap: 8px;
  margin: 18px 0 0;
  padding-top: 14px;
  border-top: 1px solid var(--nw-line-nav);
  font: 700 var(--fs-small)/1.4 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-situation--care .pv-situation-result {
  border-top-color: var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-situation-result span {
  color: var(--coral);
}
:where(body:not(.home-page)) .pv-moments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin-top: 28px;
}
:where(body:not(.home-page)) .pv-moments-label {
  margin: 0 6px 0 0;
  font: 700 var(--fs-small)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-moments ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-moments li {
  padding: 7px 14px;
  border-radius: var(--r-pill);
  border: 1px solid var(--nw-line);
  background: #fff;
  font: 500 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
}
/* Service panels */
:where(body:not(.home-page)) .pv-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
:where(body:not(.home-page)) .pv-service {
  display: flex;
  flex-direction: column;
  padding: 30px 32px 30px;
  border-radius: var(--nw-radius-card);
  background: #fff;
  border: 1px solid var(--nw-line-care);
  box-shadow: inset 0 6px 0 var(--periwinkle);
}
:where(body:not(.home-page)) .pv-service--nav {
  border-color: var(--nw-line-nav);
  box-shadow: inset 0 6px 0 var(--sage);
}
:where(body:not(.home-page)) .pv-service-label {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-service h3 {
  margin: 0 0 12px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-service > p {
  margin: 0;
  font: 400 var(--fs-body)/1.6 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-checks {
  display: grid;
  gap: 8px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-checks li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  font: 500 var(--fs-small)/1.45 var(--nw-text);
}
:where(body:not(.home-page)) .pv-checks li::before {
  content: "";
  width: 18px;
  height: 18px;
  margin-top: 2px;
  border-radius: 50%;
  background: var(--nw-care-ink)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 10.4 2.6 2.6L14 7.6'/%3E%3C/svg%3E")
    center/14px no-repeat;
}
:where(body:not(.home-page)) .pv-service--nav .pv-checks li::before {
  background-color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .pv-sample {
  margin: 22px 0 0;
  padding: 16px 18px 6px;
  border-radius: var(--r);
  background: var(--panel-respite);
  border: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-sample--nav {
  background: var(--nw-navigation);
  border-color: var(--nw-line-nav);
}
:where(body:not(.home-page)) .pv-sample-label {
  margin: 0 0 4px;
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-sample--nav .pv-sample-label {
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .pv-day,
:where(body:not(.home-page)) .pv-tasks {
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-day li,
:where(body:not(.home-page)) .pv-tasks li {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-tasks li {
  grid-template-columns: 22px minmax(0, 1fr);
  border-top-color: var(--nw-line-nav);
}
:where(body:not(.home-page)) .pv-day li:first-child,
:where(body:not(.home-page)) .pv-tasks li:first-child {
  border-top: 0;
}
:where(body:not(.home-page)) .pv-day span {
  grid-row: span 2;
  font: 700 var(--fs-label)/1.5 var(--nw-display);
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-day strong,
:where(body:not(.home-page)) .pv-tasks strong {
  font: 700 var(--fs-small)/1.35 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-day em,
:where(body:not(.home-page)) .pv-tasks em {
  font: 400 var(--fs-label)/1.45 var(--nw-text);
  font-style: normal;
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-tasks li::before {
  content: "";
  grid-row: span 2;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  border-radius: 50%;
  border: 1.5px solid var(--nw-nav-ink);
  background: #fff;
  box-sizing: border-box;
}
:where(body:not(.home-page)) .pv-tasks li.is-done::before {
  background: var(--nw-nav-ink)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 10.4 2.6 2.6L14 7.6'/%3E%3C/svg%3E")
    center/14px no-repeat;
}
:where(body:not(.home-page)) .pv-service-boundary {
  margin: 20px 0 18px !important;
  padding-top: 16px;
  border-top: 1px solid var(--nw-line);
  font: 700 var(--fs-small)/1.45 var(--nw-display) !important;
  color: var(--navy) !important;
}
:where(body:not(.home-page)) .pv-service .alink {
  margin-top: auto;
  align-self: flex-start;
}
/* Preparation sequence */
:where(body:not(.home-page)) .pv-sequence {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
:where(body:not(.home-page)) .pv-sequence::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 20px;
  right: 12%;
  height: 2px;
  background: linear-gradient(90deg, var(--periwinkle), var(--coral));
}
:where(body:not(.home-page)) .pv-sequence li {
  position: relative;
}
:where(body:not(.home-page)) .pv-seq-num {
  position: relative;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--navy);
  color: #fff;
  font: 700 var(--fs-body)/1 var(--nw-display);
  box-shadow: 0 0 0 6px #fff;
}
:where(body:not(.home-page)) .pv-sequence li:last-child .pv-seq-num {
  background: var(--coral);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-sequence h3 {
  margin: 0 0 6px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-sequence p {
  margin: 0;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-sequence-note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 22px 0 0;
  padding: 12px 16px;
  border-radius: var(--r);
  background: var(--nw-coral-100);
  font: 600 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-coral-ink);
}
:where(body:not(.home-page)) .pv-sequence-note svg {
  flex: none;
  width: 20px;
  height: 20px;
}
:where(body:not(.home-page)) .pv-trust {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  margin-top: 48px;
}
:where(body:not(.home-page)) .pv-trust-photo {
  margin: 0;
}
:where(body:not(.home-page)) .pv-trust-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
  border-radius: var(--nw-radius-card);
}
:where(body:not(.home-page)) .pv-trust-photo figcaption {
  margin-top: 10px;
  font: 400 var(--fs-label)/1.4 var(--nw-text);
  color: var(--nw-body);
}
.providers-page .pv-trust-points {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
}
/* How it fits */
:where(body:not(.home-page)) .pv-fit-band {
  background: var(--panel-respite);
}
:where(body:not(.home-page)) .pv-roles {
  display: grid;
  grid-template-columns: 1fr 56px 1.1fr 56px 1fr;
  align-items: center;
  margin-top: 8px;
}
:where(body:not(.home-page)) .pv-role {
  padding: 20px 22px;
  border-radius: var(--r);
  background: #fff;
  border: 1px solid var(--nw-line-care);
  text-align: center;
}
:where(body:not(.home-page)) .pv-role--family {
  padding: 26px 22px;
  background: var(--navy);
  border-color: var(--navy);
}
:where(body:not(.home-page)) .pv-role--us {
  border-color: var(--coral);
  box-shadow: inset 0 0 0 1px var(--coral);
}
:where(body:not(.home-page)) .pv-role-label {
  margin: 0 0 6px;
  font: 800 var(--fs-body)/1.2 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-role--family .pv-role-label {
  color: #fff;
}
:where(body:not(.home-page)) .pv-role-items {
  margin: 0;
  font: 500 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-role--family .pv-role-items {
  color: var(--respite-deep-20);
}
:where(body:not(.home-page)) .pv-role-link span {
  display: block;
  height: 2px;
  margin: 0 6px;
  background: repeating-linear-gradient(90deg, var(--nw-care-ink) 0 6px, transparent 6px 11px);
}
:where(body:not(.home-page)) .pv-roles-note {
  grid-column: 1/-1;
  margin: 16px 0 0;
  text-align: center;
  font: 600 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-audiences {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 36px;
}
:where(body:not(.home-page)) .pv-audience {
  padding: 26px 28px;
  border-radius: var(--nw-radius-card);
  background: #fff;
  border: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-audience h3 {
  margin: 0 0 12px;
  font: 700 var(--fs-lede)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-audience ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-audience li {
  position: relative;
  padding-left: 20px;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-audience li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 0.62em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--coral);
}
:where(body:not(.home-page)) .pv-limits {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 28px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-limits li {
  display: flex;
  align-items: center;
  gap: 8px;
  font: 600 var(--fs-small)/1.4 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-limits li::before {
  content: "";
  flex: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1.5px solid var(--nw-care-ink);
  background: linear-gradient(
    135deg,
    transparent calc(50% - 0.8px),
    var(--nw-care-ink) calc(50% - 0.8px),
    var(--nw-care-ink) calc(50% + 0.8px),
    transparent calc(50% + 0.8px)
  );
}
/* Introduce a family */
:where(body:not(.home-page)) .pv-refer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}
:where(body:not(.home-page)) .pv-share {
  padding: 28px 30px;
  border-radius: var(--nw-radius-card);
  background: var(--paper);
  border: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .pv-share-label {
  margin: 0 0 10px;
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-coral-ink);
}
:where(body:not(.home-page)) .pv-share-text {
  margin: 0;
  padding: 18px 20px;
  border-radius: var(--r);
  background: #fff;
  border: 1px dashed var(--slate-light-50);
  font: 400 var(--fs-small)/1.6 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-copy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 9px 14px;
  border-radius: var(--r-sm);
  border: 1px solid var(--nw-line);
  background: #fff;
  font: 700 var(--fs-small)/1 var(--nw-display);
  color: var(--navy);
  cursor: pointer;
}
:where(body:not(.home-page)) .pv-copy:hover {
  border-color: var(--navy);
}
:where(body:not(.home-page)) .pv-copy svg {
  width: 16px;
  height: 16px;
}
:where(body:not(.home-page)) .pv-share-actions {
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .pv-share-actions p {
  margin: 12px 0 0;
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .pv-situations {
    grid-template-columns: 1fr 1fr;
  }
  :where(body:not(.home-page)) .pv-sequence {
    grid-template-columns: 1fr 1fr;
    row-gap: 28px;
  }
  :where(body:not(.home-page)) .pv-sequence::before {
    display: none;
  }
  :where(body:not(.home-page)) .pv-trust,
:where(body:not(.home-page)) .pv-refer {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  :where(body:not(.home-page)) .pv-roles {
    grid-template-columns: 1fr;
    gap: 0;
  }
  :where(body:not(.home-page)) .pv-role-link {
    height: 28px;
    display: flex;
    justify-content: center;
  }
  :where(body:not(.home-page)) .pv-role-link span {
    width: 2px;
    height: 100%;
    margin: 0;
    background: repeating-linear-gradient(180deg, var(--nw-care-ink) 0 6px, transparent 6px 11px);
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .pv-services,
:where(body:not(.home-page)) .pv-audiences {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .providers-page .opening-actions {
    flex-direction: column;
  }
  :where(body:not(.home-page)) .pv-situation {
    padding: 20px;
  }
  :where(body:not(.home-page)) .pv-situation-art {
    height: 120px;
  }
  :where(body:not(.home-page)) .pv-sequence {
    grid-template-columns: 1fr;
  }
  :where(body:not(.home-page)) .pv-service,
:where(body:not(.home-page)) .pv-audience,
:where(body:not(.home-page)) .pv-share {
    padding: 22px 20px;
  }
  :where(body:not(.home-page)) .pv-moments {
    display: block;
  }
  :where(body:not(.home-page)) .pv-moments-label {
    margin: 0 0 10px;
  }
}
/* Providers tablet layout */
@media (min-width: 721px) and (max-width: 1120px) {
  :where(body:not(.home-page)) .pv-situations {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
  :where(body:not(.home-page)) .pv-situation {
    padding: 20px;
  }
  :where(body:not(.home-page)) .pv-situation-art {
    height: 110px;
  }
  :where(body:not(.home-page)) .pv-situation h3 {
    font-size: var(--fs-body);
  }
  :where(body:not(.home-page)) .pv-trust {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 32px;
  }
  :where(body:not(.home-page)) .pv-roles {
    grid-template-columns: 1fr 32px 1.1fr 32px 1fr;
    gap: 0;
  }
  :where(body:not(.home-page)) .pv-role-link {
    height: auto;
    display: block;
  }
  :where(body:not(.home-page)) .pv-role-link span {
    width: auto;
    height: 2px;
    margin: 0 4px;
    background: repeating-linear-gradient(90deg, var(--nw-care-ink) 0 6px, transparent 6px 11px);
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  :where(body:not(.home-page)) .pv-situations {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  :where(body:not(.home-page)) .pv-situation {
    grid-template-columns: 160px minmax(0, 1fr);
    grid-template-rows: auto;
    column-gap: 24px;
    align-items: center;
  }
  :where(body:not(.home-page)) .pv-situation-art {
    grid-row: 1 / span 4;
    height: 120px;
    margin: 0;
  }
  :where(body:not(.home-page)) .pv-situation-result {
    margin-top: 12px;
  }
  :where(body:not(.home-page)) .pv-trust-photo img {
    aspect-ratio: 16/9;
  }
}
/* Providers: coordination block */
:where(body:not(.home-page)) .pv-coord {
  margin-top: 36px;
  padding: 28px 30px;
  border-radius: var(--nw-radius-card);
  background: #fff;
  border: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-coord-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
  gap: 32px;
  align-items: baseline;
  margin-bottom: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--nw-line-care);
}
:where(body:not(.home-page)) .pv-coord-head h3 {
  margin: 0;
  font: 800 var(--fs-lede)/1.25 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-coord-head p {
  margin: 0;
  font: 600 var(--fs-small)/1.5 var(--nw-text);
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-coord-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .pv-coord-list svg {
  width: 26px;
  height: 26px;
  color: var(--nw-care-ink);
  margin-bottom: 10px;
}
:where(body:not(.home-page)) .pv-coord-list h4 {
  margin: 0 0 6px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .pv-coord-list p {
  margin: 0;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .pv-coord-list {
    grid-template-columns: 1fr 1fr;
  }
  :where(body:not(.home-page)) .pv-coord-head {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .pv-coord {
    padding: 22px 20px;
  }
  :where(body:not(.home-page)) .pv-coord-list {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}
/* Providers: type follows the site scale (card body 16px Albert Sans, labels 12px caps) */
:where(body:not(.home-page)) .pv-service > p:not(.pv-service-label):not(.pv-service-boundary) {
  font: 400 var(--fs-body)/1.6 var(--nw-text);
}
:where(body:not(.home-page)) .pv-service .pv-service-label {
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .pv-service--nav .pv-service-label {
  color: var(--nw-nav-ink);
}
:where(body:not(.home-page)) .pv-service h3 {
  font-size: var(--fs-h3);
}
:where(body:not(.home-page)) .pv-situation-help,
:where(body:not(.home-page)) .pv-sequence p,
:where(body:not(.home-page)) .pv-audience li,
:where(body:not(.home-page)) .pv-coord-list p,
:where(body:not(.home-page)) .pv-checks li,
:where(body:not(.home-page)) .pv-share-text {
  font-size: var(--fs-body);
  line-height: 1.55;
}
:where(body:not(.home-page)) .pv-checks li {
  font-weight: 400;
  color: var(--nw-body);
}
:where(body:not(.home-page)) .pv-situation h3,
:where(body:not(.home-page)) .pv-audience h3 {
  font-size: var(--fs-body);
}
:where(body:not(.home-page)) .pv-sequence h3,
:where(body:not(.home-page)) .pv-coord-list h4 {
  font-size: var(--fs-body);
}
/* ═════ Pricing: numbered path, bold plan cards ═════ */
.pricing-page .pr-step {
  margin-top: 48px;
}
.pricing-page .pr-step-label {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 18px;
  font: 800 var(--fs-h3)/1.2 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--navy);
}
.pricing-page .pr-step-label span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--navy);
  color: #fff;
  font: 700 var(--fs-small)/1 var(--nw-display);
  letter-spacing: 0;
}
/* Intake */
.pricing-page .pr-intake {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  border: 1px solid var(--nw-line-care);
  border-radius: var(--nw-radius-card);
  overflow: hidden;
  background: #fff;
}
.pricing-page .pr-intake-price {
  grid-row: span 2;
  padding: 28px;
  background: var(--navy);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pricing-page .pr-intake-name {
  margin: 0 0 6px;
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--periwinkle);
}
.pricing-page .pr-intake-amount {
  margin: 0;
  font: 800 var(--fs-display)/1 var(--nw-display);
  letter-spacing: -0.03em;
  color: #fff;
}
.pricing-page .pr-intake-note {
  margin: 8px 0 0;
  font: 400 var(--fs-small)/1.4 var(--nw-text);
  color: var(--respite-deep-20);
}
.pricing-page .pr-intake-body {
  padding: 24px 28px 18px;
}
.pricing-page .pr-intake-head {
  margin: 0 0 12px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
.pricing-page .pr-intake-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.pricing-page .pr-intake-list li {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  font: 400 var(--fs-body)/1.45 var(--nw-text);
  color: var(--navy);
}
.pricing-page .pr-intake-list svg {
  width: 20px;
  height: 20px;
  padding: 2px;
  border-radius: 50%;
  background: var(--panel-respite);
  color: var(--nw-care-ink);
  box-sizing: border-box;
}
.pricing-page .pr-intake-benefit {
  margin: 0;
  padding: 14px 28px;
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: var(--navy);
}
.pricing-page .pr-step > .nw-disclosure {
  margin-top: 10px;
}
/* Plans */
:is(.pricing-page, .care-page, .home-page) .pr-plans {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan {
  display: flex;
  flex-direction: column;
  border-radius: var(--nw-radius-card);
  border: 1px solid var(--nw-line-care);
  background: #fff;
  overflow: hidden;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 26px;
  background: var(--nw-care-ink);
  color: #fff;
  box-sizing: border-box;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head h3 {
  margin: 0;
  font: 800 var(--fs-h3)/1.15 var(--nw-display);
  letter-spacing: -0.02em;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head p {
  margin: 6px 0 0;
  font: 600 var(--fs-small)/1.3 var(--nw-text);
  color: var(--respite-deep-20);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 14px;
  padding: 22px 26px 6px;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-rate {
  margin: 0;
  font: 800 var(--fs-display)/1 var(--nw-display);
  letter-spacing: -0.03em;
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-rate small {
  font: 600 var(--fs-body)/1 var(--nw-text);
  letter-spacing: 0;
  color: var(--nw-body);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-fee {
  margin: 0;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts {
  display: grid;
  gap: 12px;
  margin: 14px 26px 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nw-line);
  list-style: none;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  font: 400 var(--fs-body)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts strong {
  font-weight: 700;
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts svg {
  width: 22px;
  height: 22px;
  color: var(--nw-care-ink);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-best {
  margin: 16px 26px 0;
  padding: 12px 14px;
  border-radius: var(--r);
  background: var(--panel-respite);
  font: 600 var(--fs-small)/1.45 var(--nw-text);
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan > .nw-disclosure {
  margin: 12px 26px 0;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-cta {
  margin: 16px 26px 26px;
  margin-top: auto;
  align-self: stretch;
  text-align: center;
  justify-content: center;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan > .nw-disclosure + .pr-plan-cta {
  margin-top: 18px;
}
.pricing-page .pr-step .plans-include {
  margin-top: 22px;
}
/* Estimate */
.pricing-page .pr-estimate {
  display: grid;
  align-items: stretch;
}
.pricing-page .pr-estimate .nw-calc {
  margin: 0;
}
.pricing-page .pr-receipt {
  border-radius: var(--nw-radius-card);
  background: var(--paper);
  border: 1px dashed var(--slate-light-50);
  flex-direction: column;
}
.pricing-page .pr-receipt-label {
  font: 700 var(--fs-label)/1.3 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-coral-ink);
}
.pricing-page .pr-receipt dl {
  margin: 0;
}
.pricing-page .pr-receipt dl div {
  justify-content: space-between;
  gap: 12px;
}
.pricing-page .pr-receipt dl div:first-child {
  border-top: 0;
}
.pricing-page .pr-receipt dt {
  font: 400 var(--fs-small)/1.4 var(--nw-text);
  color: var(--nw-body);
}
.pricing-page .pr-receipt dd {
  margin: 0;
  font: 700 var(--fs-small)/1.4 var(--nw-display);
  color: var(--navy);
}
.pricing-page .pr-receipt .pr-receipt-total {
  border-top: 2px solid var(--navy);
}
.pricing-page .pr-receipt .pr-receipt-total dt {
  font-weight: 700;
  color: var(--navy);
}
.pricing-page .pr-receipt-note {
  font: 400 var(--fs-small)/1.5 var(--nw-text);
  color: var(--nw-body);
}
@media (max-width: 1120px) {
  .pricing-page .pr-intake {
    grid-template-columns: 200px minmax(0, 1fr);
  }
}
@media (max-width: 720px) {
  .pricing-page .pr-intake-list {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .pricing-page .pr-step-label {
    font-size: var(--fs-h3);
  }
  .pricing-page .pr-intake {
    grid-template-columns: 1fr;
  }
  .pricing-page .pr-intake-price {
    grid-row: auto;
    padding: 20px;
  }
  .pricing-page .pr-intake-amount {
    font-size: var(--fs-display);
  }
  .pricing-page .pr-intake-body {
    padding: 18px 20px 14px;
  }
  .pricing-page .pr-intake-benefit {
    padding: 12px 20px;
  }
  :is(.pricing-page, .care-page, .home-page) .pr-plans {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  :is(.pricing-page, .care-page, .home-page) .pr-plan-head {
    padding: 18px 20px;
  }
  :is(.pricing-page, .care-page, .home-page) .pr-plan-price,
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts,
:is(.pricing-page, .care-page, .home-page) .pr-plan-best,
:is(.pricing-page, .care-page, .home-page) .pr-plan > .nw-disclosure {
    margin-left: 20px;
    margin-right: 20px;
  }
  :is(.pricing-page, .care-page, .home-page) .pr-plan-price {
    padding: 18px 0 4px;
  }
  :is(.pricing-page, .care-page, .home-page) .pr-plan-cta {
    margin: 16px 20px 20px;
  }
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head h3 {
  color: #fff;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head h3 {
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head p {
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-facts svg {
  color: var(--nw-coral-ink);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-best {
  background: var(--nw-coral-100);
}
/* Estimate: calculator full width, example as a receipt strip under it */
.pricing-page .pr-estimate {
  grid-template-columns: 1fr;
  gap: 16px;
}
.pricing-page .pr-receipt {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(0, 300px);
  align-items: center;
  gap: 8px 32px;
  padding: 18px 26px;
}
.pricing-page .pr-receipt-label {
  margin: 0;
  max-width: 150px;
  line-height: 1.4;
}
.pricing-page .pr-receipt dl {
  display: flex;
  gap: 28px;
  align-items: baseline;
}
.pricing-page .pr-receipt dl div {
  display: block;
  padding: 0;
  border: 0 !important;
}
.pricing-page .pr-receipt dl div dt {
  font-size: var(--fs-label);
}
.pricing-page .pr-receipt dl div dd {
  font-size: var(--fs-body);
}
.pricing-page .pr-receipt .pr-receipt-total {
  padding-left: 28px;
  border-left: 2px solid var(--navy) !important;
}
.pricing-page .pr-receipt .pr-receipt-total dd {
  font-size: var(--fs-h3);
}
.pricing-page .pr-receipt-note {
  margin: 0;
  padding: 0;
}
@media (max-width: 1120px) {
  .pricing-page .pr-receipt {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .pricing-page .pr-receipt-label {
    max-width: none;
  }
}
@media (max-width: 720px) {
  .pricing-page .pr-receipt dl {
    flex-wrap: wrap;
    gap: 14px 20px;
  }
  .pricing-page .pr-receipt .pr-receipt-total {
    padding-left: 0;
    border-left: 0 !important;
  }
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head {
  min-height: 0;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-icon {
  flex: none;
  width: 52px;
  height: 52px;
  padding: 12px;
  border-radius: var(--r);
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  box-sizing: border-box;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-icon {
  background: rgba(27, 42, 74, 0.1);
  color: var(--navy);
}
@media (max-width: 720px) {
  :is(.pricing-page, .care-page, .home-page) .pr-plan-icon {
    width: 44px;
    height: 44px;
    padding: 10px;
    border-radius: var(--r);
  }
}
/* Pricing, calmer palette: navy + soft tints, coral reserved for buttons */
.pricing-page .pr-intake-list--one {
  grid-template-columns: 1fr;
  gap: 8px;
}
.pricing-page .pr-intake-benefit {
  background: var(--panel-respite);
}
.pricing-page .pr-intake-benefit strong {
  color: var(--nw-care-ink);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head {
  background: var(--panel-respite);
  color: var(--navy);
  border-bottom: 1px solid var(--nw-line-care);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head {
  background: var(--paper);
  border-bottom-color: var(--nw-line);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head h3,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head h3 {
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-head p,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-head p {
  color: var(--nw-body);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-icon,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-icon {
  background: var(--navy);
  color: #fff;
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-facts svg,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-facts svg {
  color: var(--nw-care-ink);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-best,
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-best {
  background: transparent;
  padding: 0;
  border-radius: 0;
  font-weight: 600;
  color: var(--navy);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan--flex .pr-plan-cta {
  background: var(--coral);
  color: var(--navy);
  border-color: var(--coral);
}
:is(.pricing-page, .care-page, .home-page) .pr-plan-feenote {
  flex-basis: 100%;
  margin: 2px 0 0;
  font: 400 var(--fs-small)/1.4 var(--nw-text);
  color: var(--nw-body);
}
/* Pricing Navigation row: example projects fill the left column beside the quote card */
.pricing-page .pr-nav-examples {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}
.pricing-page .pr-nav-examples li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 10px;
  padding: 14px 16px;
  border-radius: var(--r);
  background: #fff;
  border: 1px solid var(--nw-line-nav);
}
.pricing-page .pr-nav-examples svg {
  width: 22px;
  height: 22px;
  color: var(--nw-nav-ink);
}
.pricing-page .pr-nav-examples span {
  font: 400 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-body);
}
.pricing-page .pr-nav-examples strong {
  display: block;
  margin-bottom: 2px;
  font: 700 var(--fs-small)/1.3 var(--nw-display);
  color: var(--navy);
}
.pricing-page #navigation-pricing .nw-after {
  margin-top: 20px;
}
@media (max-width: 1120px) {
  .pricing-page .pr-nav-examples {
    grid-template-columns: 1fr;
  }
}
.pricing-page .pr-nav-examples {
  margin-top: 22px !important;
}
@media (max-width: 1120px) {
  .pricing-page #navigation-pricing .nw-navigation-quote {
    align-self: start;
  }
}
/* Paragraphs that continue a section lede use the lede's text style */
.interior-page .nw-lede ~ p:not([class]),
.interior-page .nw-lede ~ p.nw-body-text {
  font-size: var(--fs-body);
  line-height: 1.5;
  color: var(--nw-body);
}
@media (max-width: 720px) {
  .interior-page .nw-lede ~ p:not([class]),
.interior-page .nw-lede ~ p.nw-body-text {
    font-size: var(--fs-lede);
  }
}
/* Type scale: one size per role across interior pages */
.interior-page .nw-step h3,
.interior-page .nw-value h3 {
  font-size: var(--fs-body);
}
.care-page .split-head-row .nw-lede {
  font-size: var(--fs-body);
}
.pricing-page .nw-navigation-quote h3 {
  font-size: var(--fs-h3);
}
.pricing-page .nw-calc h3 {
  font-size: var(--fs-h3);
}
.pricing-page .plans-include h3 {
  font-weight: 700;
}
.careers-page .nw-eeo h2 {
  font-weight: 800;
}
:where(body:not(.home-page)) .pv-service-boundary {
  font-size: var(--fs-body) !important;
}
:where(body:not(.home-page)) .pv-sequence-note {
  font-size: var(--fs-body);
}
@media (max-width: 720px) {
  .care-page .split-head-row .nw-lede {
    font-size: var(--fs-lede);
  }
}
/* ── Guides and regional pages ───────────────────────────────────────────── */
:where(body:not(.home-page)) .guide-meta {
  margin: 14px 0 0;
  font: 500 var(--fs-small)/1.4 var(--nw-text);
  color: rgba(255, 255, 255, 0.78);
}
:where(body:not(.home-page)) .nw-doc-body ol {
  margin: 0 0 12px;
  padding-left: 1.4em;
}
:where(body:not(.home-page)) .nw-doc-body li::marker {
  color: var(--nw-care-ink);
  font-weight: 700;
}
:where(body:not(.home-page)) .nw-doc-body .guide-answer {
  margin: 0 0 28px;
  padding: 18px 20px;
  border-radius: var(--r);
  background: var(--panel-respite);
  font: 500 var(--fs-body)/1.6 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .nw-doc-body .guide-note {
  margin: 20px 0;
  padding: 16px 18px;
  border-left: 3px solid var(--coral);
  border-radius: 0 var(--r) var(--r) 0;
  background: var(--paper);
}
:where(body:not(.home-page)) .nw-doc-body .guide-note p:last-child {
  margin-bottom: 0;
}
:where(body:not(.home-page)) .guide-table-wrap {
  margin: 8px 0 20px;
  overflow-x: auto;
  border: 1px solid var(--nw-line);
  border-radius: var(--r);
}
:where(body:not(.home-page)) .guide-table {
  width: 100%;
  min-width: 520px;
  border-collapse: collapse;
  font: 400 var(--fs-small)/1.45 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .guide-table th,
:where(body:not(.home-page)) .guide-table td {
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid var(--nw-line);
}
:where(body:not(.home-page)) .guide-table thead th {
  border-top: 0;
  background: var(--panel-respite);
  font: 700 var(--fs-small)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .guide-table tbody th {
  font-weight: 700;
  color: var(--navy);
}
:where(body:not(.home-page)) .guide-table .is-us {
  background: color-mix(in srgb, var(--respite-deep-10) 55%, transparent);
}
:where(body:not(.home-page)) .guide-sources {
  font-size: var(--fs-small);
}
:where(body:not(.home-page)) .guide-sources li {
  font-size: var(--fs-small);
  line-height: 1.5;
}
:where(body:not(.home-page)) .guide-updated {
  margin-top: 28px;
  font: 500 var(--fs-small)/1.4 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .guide-download {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin: 20px 0;
  padding: 16px 18px;
  border: 1px solid var(--nw-line);
  border-radius: var(--r);
  background: var(--white);
}
:where(body:not(.home-page)) .guide-download img {
  width: 72px;
  height: auto;
}
:where(body:not(.home-page)) .guide-download p {
  margin: 0 0 4px;
}
:where(body:not(.home-page)) .guide-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .guide-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 22px 22px 20px;
  border: 1px solid var(--nw-line);
  border-radius: var(--r);
  background: var(--white);
}
:where(body:not(.home-page)) .guide-card .guide-card-label {
  margin: 0;
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nw-care-ink);
}
:where(body:not(.home-page)) .guide-card h3 {
  margin: 0;
  font: 800 var(--fs-lede)/1.25 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .guide-card h3 a {
  color: inherit;
  text-decoration: none;
}
:where(body:not(.home-page)) .guide-card h3 a::after {
  content: "";
  position: absolute;
  inset: 0;
}
:where(body:not(.home-page)) .guide-card {
  position: relative;
}
:where(body:not(.home-page)) .guide-card p {
  margin: 0;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .guide-card:hover,
:where(body:not(.home-page)) .guide-card:focus-within {
  border-color: var(--navy);
}
:where(body:not(.home-page)) .region-programs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 18px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .region-programs li {
  padding: 20px;
  border: 1px solid var(--nw-line);
  border-radius: var(--r);
  background: var(--white);
}
:where(body:not(.home-page)) .region-programs h3 {
  margin: 0 0 6px;
  font: 700 var(--fs-body)/1.3 var(--nw-display);
  color: var(--navy);
}
:where(body:not(.home-page)) .region-programs p {
  margin: 0 0 8px;
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .region-programs a {
  color: var(--navy);
  font-weight: 700;
}
:where(body:not(.home-page)) .region-places {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .region-places li {
  padding: 7px 12px;
  border-radius: var(--r-pill);
  background: var(--panel-respite);
  font: 500 var(--fs-small)/1.3 var(--nw-text);
  color: var(--navy);
}
:where(body:not(.home-page)) .region-places a {
  color: inherit;
  text-decoration: none;
}
:where(body:not(.home-page)) .region-places a:hover {
  text-decoration: underline;
}
:where(body:not(.home-page)) .region-note {
  margin: 32px 0 0;
  padding: 16px 18px;
  border-left: 3px solid var(--coral);
  border-radius: 0 var(--r) var(--r) 0;
  background: var(--paper);
}
:where(body:not(.home-page)) .region-note p {
  margin: 0;
  font: 400 var(--fs-body)/1.6 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .region-note strong {
  color: var(--navy);
}
:where(body:not(.home-page)) .region-pay-note {
  max-width: 760px;
  margin-top: 28px;
}
:where(body:not(.home-page)) .nw-hero-label a {
  color: inherit;
  text-decoration: none;
}
:where(body:not(.home-page)) .nw-hero-label a:hover,
:where(body:not(.home-page)) .nw-hero-label a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.guide-page .nw-hero-compact h1 {
  max-width: 30ch;
}
:where(body:not(.home-page)) .guide-download img {
  border: 1px solid var(--nw-line);
  border-radius: var(--r-sm);
}
@media (min-width: 721px) {
  .guide-page .nw-hero-compact,
.faq-page .nw-hero-compact {
    padding-top: 96px;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-doc-body .guide-answer {
    padding: 16px;
    font-size: var(--fs-body);
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .guide-table-wrap {
    overflow: visible;
    border: 0;
    border-radius: 0;
  }
  :where(body:not(.home-page)) .guide-table {
    min-width: 0;
  }
  :where(body:not(.home-page)) .guide-table thead {
    display: none;
  }
  :where(body:not(.home-page)) .guide-table,
:where(body:not(.home-page)) .guide-table tbody,
:where(body:not(.home-page)) .guide-table tr,
:where(body:not(.home-page)) .guide-table th,
:where(body:not(.home-page)) .guide-table td {
    display: block;
    width: 100%;
  }
  :where(body:not(.home-page)) .guide-table tr {
    margin: 0 0 12px;
    border: 1px solid var(--nw-line);
    border-radius: var(--r);
    overflow: hidden;
  }
  :where(body:not(.home-page)) .guide-table tbody th {
    border-top: 0;
    background: var(--panel-respite);
  }
  :where(body:not(.home-page)) .guide-table td {
    padding: 10px 14px;
  }
  :where(body:not(.home-page)) .guide-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    font: 700 var(--fs-label)/1.3 var(--nw-text);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--nw-care-ink);
  }
}
:where(body:not(.home-page)) .region-outings {
  margin-top: 28px;
}
:where(body:not(.home-page)) .region-outings .nw-body-text {
  margin: 0;
}
:where(body:not(.home-page)) .nw-faq-more--guides {
  margin-top: 12px;
}
:where(body:not(.home-page)) .guide-hub-download {
  max-width: 640px;
  margin-top: 24px;
}
:where(body:not(.home-page)) .guide-hub-download .guide-download {
  margin: 0;
}
:where(body:not(.home-page)) .guide-hub-download .guide-download p {
  font: 400 var(--fs-small)/1.55 var(--nw-text);
  color: var(--nw-body);
}
:where(body:not(.home-page)) .guide-hub-download .guide-download p strong {
  font-weight: 700;
  color: var(--navy);
}
:where(body:not(.home-page)) .guide-hub-download .guide-download a {
  color: var(--navy);
  font-weight: 700;
}
/* ==========================================================================
   Visual additions (October 2026 visual plan)
   Hero art, guide/area thumbnails, diagrams, and striped placeholders for
   assets still to be made. Search pages for "vx-ph" to list open placeholders.
   ========================================================================== */
/* Placeholders */
:where(body:not(.home-page)) .vx-ph {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 20px;
  border: 1.5px dashed var(--periwinkle-light);
  border-radius: var(--r);
  background: repeating-linear-gradient(135deg, var(--panel-respite) 0 10px, var(--periwinkle-30) 10px 20px);
  color: var(--navy);
  text-align: center;
}
:where(body:not(.home-page)) .vx-ph-tag {
  font: 700 var(--fs-label)/1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--respite-ink);
}
:where(body:not(.home-page)) .vx-ph-desc {
  max-width: 36ch;
  font: 400 var(--fs-small)/1.45 ui-monospace, SFMono-Regular, Menlo, monospace;
  text-wrap: pretty;
}
:where(body:not(.home-page)) .vx-ph--photo {
  border-color: var(--coral-light);
  background: repeating-linear-gradient(135deg, var(--panel-coral) 0 10px, var(--coral-30) 10px 20px);
}
:where(body:not(.home-page)) .vx-ph--photo .vx-ph-tag { color: var(--coral-ink); }
:where(body:not(.home-page)) .vx-ph--diagram,
:where(body:not(.home-page)) .vx-ph--icons {
  border-color: var(--sage-light);
  background: repeating-linear-gradient(135deg, var(--panel-navigation) 0 10px, var(--sage-20) 10px 20px);
}
:where(body:not(.home-page)) .vx-ph--diagram .vx-ph-tag,
:where(body:not(.home-page)) .vx-ph--icons .vx-ph-tag { color: var(--navigation-ink); }
:where(body:not(.home-page)) .vx-wide { aspect-ratio: 16 / 7; width: 100%; margin: 0 0 28px; }
:where(body:not(.home-page)) .vx-ph--diagram.vx-wide { aspect-ratio: auto; min-height: 180px; margin: 16px 0 20px; }
:where(body:not(.home-page)) .vx-ph--icons { margin-top: 20px; min-height: 96px; border-radius: var(--r); }
/* Interior hero with art */
:where(body:not(.home-page)) .vx-hero { margin: 0; }
:where(body:not(.home-page)) .vx-hero-art {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: var(--r-lg);
  background: var(--paper);
}
:where(body:not(.home-page)) .vx-hero-art img { display: block; width: 100%; height: 100%; object-fit: contain; padding: 18px; }
:where(body:not(.home-page)) .vx-hero-art--photo img,
:where(body:not(.home-page)) .vx-hero-art--map img { padding: 0; object-fit: cover; }
:where(body:not(.home-page)) .vx-map--va img { object-position: 0% 50%; }
:where(body:not(.home-page)) .vx-map--dc img { object-position: 50% 50%; }
:where(body:not(.home-page)) .vx-map--md img { object-position: 100% 50%; }
:where(body:not(.home-page)) .nw-hero .vx-ph { border-color: color-mix(in srgb, var(--periwinkle-70) 85%, transparent); }
@media (min-width: 1121px) {
  .interior-page .hero.hero--interior.vx-has-art .hero-grid { gap: 56px; }
  .interior-page .hero.hero--interior.vx-has-art .hero-copy {
    flex: 1 1 0;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 22px;
    min-width: 0;
  }
  .interior-page .hero.hero--interior.vx-has-art .interior-hero-secondary::before { display: none; }
  .interior-page .hero.hero--interior.vx-has-art h1 { max-width: 16ch; }
  .interior-page .hero.hero--interior.vx-has-art .page-lede { max-width: 52ch; }
  :where(body:not(.home-page)) .vx-has-art .vx-hero {
    flex: 0 0 42%;
    align-self: center;
    aspect-ratio: 4 / 3;
    max-height: 400px;
    margin-block: 40px;
  }
}
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .vx-has-art .vx-hero {
    width: 100%;
    max-width: 640px;
    aspect-ratio: 16 / 9;
    max-height: 320px;
    margin: 0 auto 40px;
  }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .vx-has-art .vx-hero {
    aspect-ratio: 4 / 3;
    max-height: 240px;
    margin-bottom: 32px;
    border-radius: var(--r);
  }
  :where(body:not(.home-page)) .vx-has-art .vx-ph-desc { font-size: var(--fs-label); }
}
/* Compact hero art (pricing, guides) */
:where(body:not(.home-page)) .nw-hero-compact .vx-spot { width: 220px; aspect-ratio: 1; margin: 0; }
:where(body:not(.home-page)) .nw-hero-compact .vx-spot--img { display: flex; align-items: center; justify-content: center; border-radius: var(--r); background: var(--paper); padding: 18px; }
:where(body:not(.home-page)) .nw-hero-compact .vx-spot--img img { width: 100%; height: 100%; object-fit: contain; }
:where(body:not(.home-page)) .nw-hero-compact .vx-guide-head { width: min(440px, 100%); aspect-ratio: 16 / 9; margin: 0; }
@media (min-width: 721px) {
  :where(body:not(.home-page)) .nw-hero-compact-grid:has(.vx-guide-head),
:where(body:not(.home-page)) .nw-hero-compact-grid:has(.vx-spot) { align-items: center; }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-hero-compact .vx-guide-head { width: 100%; max-height: 300px; }
  :where(body:not(.home-page)) .nw-hero-compact .vx-spot { width: 160px; }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-hero-compact .vx-guide-head { aspect-ratio: 4 / 3; max-height: 230px; }
  :where(body:not(.home-page)) .nw-hero-compact .vx-spot { display: none; }
}
:where(body:not(.home-page)) .vx-spot--inline { width: 200px; aspect-ratio: 1; margin: 20px 0; border-radius: var(--r); }
/* Section art */
:where(body:not(.home-page)) .vx-service-art { margin: -4px 0 6px; border-radius: var(--r); overflow: hidden; background: var(--paper); }
:where(body:not(.home-page)) .vx-service-art img { display: block; width: 100%; height: auto; }
:where(body:not(.home-page)) .vx-inline-art { margin: 28px 0 8px; max-width: 560px; border-radius: var(--r); overflow: hidden; }
:where(body:not(.home-page)) .vx-inline-art img { display: block; width: 100%; height: auto; }
/* Bands above the CTA on region pages */
:where(body:not(.home-page)) .vx-band { line-height: 0; background: #fff; }
:where(body:not(.home-page)) .vx-band img { display: block; width: 100%; height: auto; max-height: 360px; object-fit: cover; object-position: 50% 100%; }
:where(body:not(.home-page)) .vx-band--ph { padding: 0 var(--nw-gutter, 24px) 32px; line-height: normal; }
:where(body:not(.home-page)) .vx-band--ph .vx-ph { max-width: 1160px; min-height: 180px; margin: 0 auto; }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .vx-band img { max-height: 160px; }
  :where(body:not(.home-page)) .vx-band--ph .vx-ph { min-height: 140px; }
}
/* Thumbnails on guide and area cards */
:where(body:not(.home-page)) .guide-card > .vx-ph,
:where(body:not(.home-page)) .guide-card > .vx-thumb {
  margin: -22px -22px 8px;
  aspect-ratio: 16 / 9;
  border-radius: var(--r) var(--r) 0 0;
  border-width: 0 0 1.5px;
  padding: 14px;
}
:where(body:not(.home-page)) .guide-card > .vx-ph .vx-ph-desc { font-size: var(--fs-label); }
:where(body:not(.home-page)) .vx-thumb { overflow: hidden; background: var(--paper); }
:where(body:not(.home-page)) .guide-card > .vx-thumb { padding: 0; border-bottom: 1px solid var(--nw-line, var(--rule)); }
:where(body:not(.home-page)) .vx-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
/* Care: practical details heading column */
:where(body:not(.home-page)) .vx-faq-head { display: flex; flex-direction: column; gap: 0; }
/* Pricing: payment routes */
:where(body:not(.home-page)) .vx-pay-routes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 14px;
  margin: 24px 0;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .vx-pay-routes li {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--nw-line, var(--rule));
  border-radius: var(--r);
  background: #fff;
}
:where(body:not(.home-page)) .vx-pay-routes p { margin: 0; font: 400 var(--fs-small)/1.5 var(--nw-text); color: var(--nw-body, var(--slate)); }
:where(body:not(.home-page)) .vx-pay-routes .vx-pay-label { font: 800 var(--fs-body)/1.25 var(--nw-display); color: var(--navy); }
:where(body:not(.home-page)) .vx-pay-routes .alink { margin-top: auto; align-self: flex-start; }
/* Guides: key figures */
:where(body:not(.home-page)) .nw-doc-body ul.vx-figures,
:where(body:not(.home-page)) .nw-doc-body ol.vx-phases { padding-left: 0; margin-left: 0; }
:where(body:not(.home-page)) .nw-doc-body .vx-figures li,
:where(body:not(.home-page)) .nw-doc-body .vx-phases li { margin: 0; padding: 0; }
:where(body:not(.home-page)) .nw-doc-body .vx-figures li::before,
:where(body:not(.home-page)) .nw-doc-body .vx-phases li::before,
:where(body:not(.home-page)) .vx-pay-routes li::before { content: none; display: none; }
:where(body:not(.home-page)) .vx-figures {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  margin: 18px 0 22px;
  padding: 0;
  list-style: none;
}
:where(body:not(.home-page)) .vx-figure {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 18px;
  border: 1px solid var(--nw-line, var(--rule));
  border-radius: var(--r);
  background: #fff;
}
:where(body:not(.home-page)) .vx-figure strong { font: 800 var(--fs-h3)/1.1 var(--nw-display); color: var(--navy); letter-spacing: -0.02em; }
:where(body:not(.home-page)) .vx-figure span { font: 400 var(--fs-small)/1.45 var(--nw-text); color: var(--nw-body, var(--slate)); }
/* Guides: phase overview */
:where(body:not(.home-page)) .vx-phases {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 8px 0 36px;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
:where(body:not(.home-page)) .vx-phase a {
  display: flex;
  flex-direction: column;
  gap: 6px;
  height: 100%;
  padding: 16px 18px;
  border-radius: var(--r);
  background: var(--panel-navigation);
  color: var(--navy);
  text-decoration: none;
}
:where(body:not(.home-page)) .vx-phase a:hover { background: var(--sage-20); }
:where(body:not(.home-page)) .vx-phases--care .vx-phase a { background: var(--panel-respite); }
:where(body:not(.home-page)) .vx-phases--care .vx-phase a:hover { background: var(--periwinkle-30); }
:where(body:not(.home-page)) .vx-phase-label { font: 700 var(--fs-label)/1.2 var(--nw-text); letter-spacing: 0.08em; text-transform: uppercase; color: var(--navigation-ink); }
:where(body:not(.home-page)) .vx-phases--care .vx-phase-label { color: var(--respite-ink); }
:where(body:not(.home-page)) .vx-phase-title { font: 800 var(--fs-body)/1.3 var(--nw-display); }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .vx-phases { grid-template-columns: minmax(0, 1fr); }
}
/* FAQ: topic bar sticks under the header on phones */
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-faq-categories {
    position: sticky;
    top: var(--header-height);
    z-index: 5;
    margin: 0 calc(-1 * var(--nw-gutter, 20px)) 20px;
    padding: 0;
    border: 0;
    border-bottom: 1px solid var(--rule);
    border-radius: 0;
    background: var(--white);
  }
  :where(body:not(.home-page)) .nw-faq-categories > summary { display: none; }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail {
    display: flex;
    flex-direction: row;
    gap: 8px;
    padding: 10px var(--nw-gutter, 20px);
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail::-webkit-scrollbar { display: none; }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail a {
    flex: none;
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid var(--rule);
    border-radius: var(--r-pill);
    background: var(--white);
    color: var(--navy);
    font: 600 var(--fs-small)/1.2 var(--nw-text);
    white-space: nowrap;
    text-decoration: none;
  }
  :where(body:not(.home-page)) .nw-faq-categories .nw-faq-rail a::before { content: none; display: none; }
  html:where(:has(> body:not(.home-page))):has(.nw-faq-categories) { scroll-padding-top: calc(var(--header-height) + 84px); }
}
/* Region pages: program type tags */
:where(body:not(.home-page)) .region-programs .vx-prog-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
  margin: 0 0 10px;
  padding: 4px 10px 4px 8px;
  border-radius: var(--r-pill);
  font: 700 var(--fs-label)/1.2 var(--nw-text);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
:where(body:not(.home-page)) .region-programs .vx-prog-tag svg { width: 16px; height: 16px; flex: none; }
:where(body:not(.home-page)) .vx-prog-tag--ei { background: var(--panel-coral); color: var(--coral-ink); }
:where(body:not(.home-page)) .vx-prog-tag--dis { background: var(--panel); color: var(--slate); }
:where(body:not(.home-page)) .vx-prog-tag--wv { background: var(--panel-respite); color: var(--respite-ink); }
:where(body:not(.home-page)) .vx-prog-tag--rs { background: var(--panel-navigation); color: var(--navigation-ink); }
:where(body:not(.home-page)) .vx-prog-tag--fs { background: var(--panel-coral); color: var(--coral-ink); }
/* Guides: larger care plan download card */
:where(body:not(.home-page)) .guide-download.vx-download {
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 22px;
  padding: 20px 22px;
  border-radius: var(--r);
  background: var(--panel-respite);
  border-color: var(--periwinkle-light);
}
:where(body:not(.home-page)) .guide-download.vx-download > img {
  width: 120px;
  border-radius: var(--r-sm);
  box-shadow: 0 10px 24px -14px rgba(27, 42, 74, 0.55);
  background: var(--white);
}
:where(body:not(.home-page)) .guide-download.vx-download .vx-dl-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin: 12px 0 0;
}
:where(body:not(.home-page)) .guide-download.vx-download .vx-dl-actions .btn { padding: 11px 18px; font-size: var(--fs-small); }
:where(body:not(.home-page)) .guide-download.vx-download .vx-dl-actions span { font: 400 var(--fs-small)/1.4 var(--nw-text); color: var(--slate); }
:where(body:not(.home-page)) .guide-hub-download { max-width: 720px; }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .guide-download.vx-download { grid-template-columns: 76px minmax(0, 1fr); gap: 16px; padding: 16px; }
  :where(body:not(.home-page)) .guide-download.vx-download > img { width: 76px; }
  :where(body:not(.home-page)) .guide-download.vx-download .vx-dl-actions { grid-column: 1 / -1; }
}
/* Maryland DDA guide: two paths */
:where(body:not(.home-page)) .vx-paths {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 24px;
}
:where(body:not(.home-page)) .vx-path {
  display: flex;
  flex-direction: column;
  padding: 18px 18px 8px;
  border-radius: var(--r);
  background: var(--panel-navigation);
}
:where(body:not(.home-page)) .vx-path--aw { background: var(--panel-respite); }
:where(body:not(.home-page)) .vx-path .vx-path-label { margin: 0; font: 800 var(--fs-body)/1.25 var(--nw-display); color: var(--navy); }
:where(body:not(.home-page)) .vx-path .vx-path-sub { margin: 2px 0 12px; font: 400 var(--fs-small)/1.4 var(--nw-text); color: var(--slate); }
:where(body:not(.home-page)) .vx-path ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
:where(body:not(.home-page)) .nw-doc-body .vx-path ol li { margin: 0; padding: 0; }
:where(body:not(.home-page)) .nw-doc-body .vx-path ol li::before { content: none; display: none; }
:where(body:not(.home-page)) .vx-path-step {
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 12px;
  padding: 0 0 14px;
}
:where(body:not(.home-page)) .vx-path-step:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 13px;
  top: 30px;
  bottom: 2px;
  width: 2px;
  background: rgba(27, 42, 74, 0.16);
}
:where(body:not(.home-page)) .vx-path-n {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--white);
  color: var(--navy);
  font: 800 var(--fs-label)/1 var(--nw-display);
}
:where(body:not(.home-page)) .vx-path-step div { display: flex; flex-direction: column; gap: 2px; padding-top: 3px; }
:where(body:not(.home-page)) .vx-path-step strong { font: 700 var(--fs-small)/1.3 var(--nw-text); color: var(--navy); }
:where(body:not(.home-page)) .vx-path-step div span { font: 400 var(--fs-small)/1.45 var(--nw-text); color: var(--slate); }
:where(body:not(.home-page)) .vx-path-step--stuck div {
  margin-left: -6px;
  padding: 8px 10px;
  border: 1.5px dashed var(--coral);
  border-radius: var(--r-sm);
  background: var(--white);
}
:where(body:not(.home-page)) .vx-path-step--stuck .vx-path-n { background: var(--coral); color: var(--navy); }
:where(body:not(.home-page)) .vx-paths figcaption { grid-column: 1 / -1; font: 400 var(--fs-small)/1.5 var(--nw-text); color: var(--slate); }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .vx-paths { grid-template-columns: minmax(0, 1fr); }
}

/* ===== 4 Phone and small-screen overrides ===== */
/* Novinway phone layer (≤720px). Pairs with assets/mobile.js. Loaded after each page's own stylesheet. */
@media (max-width: 720px) {
  /* ── 1. Tap-to-expand rows ── */
  .mc > .mc-part {
    display: none !important;
  }
  .mc.is-open > .mc-part {
    display: revert !important;
  }
  .mc.is-open > img.mc-part {
    display: block !important;
  }
  .mc > :is(h2, h3, h4):has(> .mc-btn) {
    margin: 0;
    grid-row: auto !important;
    grid-column: 1/-1 !important;
  }
  .mc-btn {
    all: unset;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    padding: 14px 0;
    cursor: pointer;
    font: inherit;
    color: inherit;
    line-height: 1.3;
    -webkit-tap-highlight-color: transparent;
  }
  .mc-btn::after {
    content: "";
    flex: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    opacity: 0.7;
    background:
      linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat,
      linear-gradient(currentColor, currentColor) center/1.5px 10px no-repeat;
  }
  .mc.is-open > * > .mc-btn::after {
    background: linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat;
  }
  .mc-btn:focus-visible {
    outline: 2px solid var(--navy, var(--navy));
    outline-offset: 3px;
    border-radius: var(--r-sm);
  }
  .mc-count {
    margin-left: auto;
    margin-right: -4px;
    font: 600 var(--fs-label)/1 var(--nw-text, inherit);
    color: var(--nw-body, var(--slate));
    opacity: 0.8;
  }
  .mc {
    padding-top: 0 !important;
    padding-bottom: 0;
  }
  .mc.is-open {
    padding-bottom: 16px;
  }
  .mc.is-open > .mc-part:first-of-type {
    margin-top: 0;
  }
  /* rows separated by hairlines, no extra card padding */
  #services .home-service-summary.mc {
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    margin: 0;
  }
  #services .home-service-summary.mc h4 {
    font-size: var(--fs-lede);
  }
  .care-page .nw-support-detail .nw-support-topic.mc,
  .care-page .nw-points .nw-point.mc {
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    margin: 0;
    row-gap: 0;
  }
  .care-page .nw-support-detail {
    gap: 0;
  }
  .care-page .nw-support-detail .nw-support-topic.mc .nw-topic-art {
    height: 96px;
    margin: 2px 0 12px;
  }
  .care-page .nw-points:has(.mc) {
    gap: 0;
  }
  .care-page .nw-point.mc {
    grid-template-columns: 28px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
  }
  .care-page .nw-point.mc > .nw-icon {
    grid-row: 1;
    align-self: center;
  }
  .care-page .nw-point.mc > .mc-part {
    grid-column: 2;
  }
  .navigation-page .nw-list > li.mc {
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: center;
    row-gap: 0;
    padding-block: 0;
  }
  .navigation-page .nw-list > li.mc > .nw-icon {
    grid-row: 1;
    align-self: center;
    margin: 0;
  }
  .navigation-page .nw-list > li.mc > .mc-part {
    grid-column: 2;
    margin-top: 0;
  }
  .navigation-page .nw-list > li.mc .mc-btn {
    padding: 12px 0;
  }
  /* FAQ page: each topic group collapses to its title and question count */
  .nw-faq-group.mc {
    border-top: 1px solid rgba(27, 42, 74, 0.14);
    margin: 0;
  }
  .nw-faq-group.mc > h2 {
    font-size: var(--fs-h3);
  }
  .nw-faq-group.mc .mc-btn {
    padding: 16px 0;
  }
  .nw-faq-group.mc.is-open > .nw-faq {
    margin-bottom: 8px;
  }
  /* ── 2. Swipe rows ── */
  .ms {
    display: flex !important;
    grid-template-columns: none !important;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--ms-gut, 18px)) !important;
    padding-inline: var(--ms-gut, 18px) !important;
    scroll-padding-inline: var(--ms-gut, 18px);
    scrollbar-width: none;
    max-width: none;
    width: auto !important;
  }
  .ms::-webkit-scrollbar {
    display: none;
  }
  .ms > * {
    flex: 0 0 86%;
    max-width: 86% !important;
    min-width: 0;
    scroll-snap-align: start;
    margin: 0;
  }
  .ms.nw-photos > *,
  .ms.careers-training > * {
    flex-basis: 84%;
  }
  .ms-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    margin: 14px 0 2px;
  }
  .ms-dots[hidden] {
    display: none;
  }
  .ms-dots span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(27, 42, 74, 0.22);
    transition:
      background 0.2s,
      width 0.2s;
  }
  .ms-dots span.on {
    width: 18px;
    border-radius: var(--r-sm);
    background: var(--navy, var(--navy));
  }
  /* profile cards keep equal heights in the row */
  .people.people--compact.ms {
    align-items: stretch;
  }
  /* ── Compact art and spacing ── */
  .nw-art--painting img,
  .nw-art--painting {
    max-height: 220px;
  }
  .nw-art--painting img {
    width: auto !important;
    max-width: 100%;
    margin-inline: auto;
    object-fit: contain;
  }
  .nw-value > .nw-value-art {
    height: 56px;
  }
  .nw-value h3 {
    font-size: var(--fs-body) !important;
  }
  .nw-value p:not(.nw-value-label) {
    font-size: var(--fs-small);
    line-height: 1.45;
  }
}
@media (max-width: 720px) {
  .mc:has(> .nw-icon) > :is(h3):has(> .mc-btn) {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .mc > .nw-icon {
    grid-column: 1;
    grid-row: 1 !important;
    align-self: center;
    margin: 0 !important;
  }
}
@media (max-width: 720px) {
  /* ── 3. Segmented tabs ── */
  .mt-bar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    padding: 4px;
    margin: 0 0 20px;
    border-radius: var(--r-pill);
    background: rgba(27, 42, 74, 0.07);
  }
  .mt-bar[hidden] {
    display: none;
  }
  .mt-bar button {
    all: unset;
    box-sizing: border-box;
    text-align: center;
    padding: 10px 8px;
    border-radius: var(--r-pill);
    font: 700 var(--fs-body)/1.2 var(--nw-display, inherit);
    color: var(--navy, var(--navy));
    cursor: pointer;
  }
  .mt-bar button[aria-selected="true"] {
    background: var(--navy, var(--navy));
    color: #fff;
  }
  .mt-bar button:focus-visible {
    outline: 2px solid var(--navy, var(--navy));
    outline-offset: 2px;
  }
  .mt > .nw-safety-row.mt-hidden {
    display: none;
  }
  .mt > .nw-safety-row + .nw-safety-row {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
  }
  .mt .nw-safety-copy h3 {
    display: none;
  }
}
@media (min-width: 721px) and (max-width: 1120px) {
  .mt-bar {
    max-width: 420px;
  }
}
@media (max-width: 720px) {
  .providers-page .pv-audiences {
    gap: 0;
  }
  .providers-page .pv-audience.mc {
    border-radius: 0;
    border-width: 1px 0 0;
    background: transparent;
    padding: 0 2px;
  }
  .providers-page .pv-audience.mc:last-child {
    border-bottom-width: 1px;
  }
  .providers-page .pv-audience.mc.is-open {
    padding-bottom: 16px;
  }
}
@media (max-width: 720px) {
  /* Care topics: fixed icon column so every collapsed heading lines up */
  .care-page .nw-support-detail .nw-support-topic.mc {
    column-gap: 0;
  }
  .care-page .nw-support-detail .nw-support-topic.mc > h3 {
    grid-column: 1 !important;
  }
  .care-page .nw-support-detail .nw-support-topic.mc > .mc-part {
    grid-column: 1;
  }
  /* Providers: Care / Navigation as a two-way switch; shorter preparation steps; coordination rows collapse */
  .pv-mt {
    margin-bottom: 16px;
  }
  .mt.pv-services > .mt-hidden {
    display: none;
  }
  .pv-mt[hidden] {
    display: none;
  }
  .providers-page .pv-sequence {
    gap: 0;
  }
  .providers-page .pv-sequence li {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    column-gap: 14px;
    padding: 12px 0;
    border-top: 1px solid var(--nw-line);
  }
  .providers-page .pv-sequence li:first-child {
    border-top: 0;
  }
  .providers-page .pv-seq-num {
    grid-row: span 2;
    width: 32px;
    height: 32px;
    margin: 0;
    font-size: var(--fs-small);
    box-shadow: none;
  }
  .providers-page .pv-sequence h3 {
    margin: 4px 0 2px;
  }
  .providers-page .pv-coord-list {
    gap: 0;
  }
  .providers-page .pv-coord-list > li.mc {
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
    border-top: 1px solid var(--nw-line-care);
    margin: 0;
  }
  .providers-page .pv-coord-list > li.mc > svg {
    grid-row: 1;
    margin: 0;
    width: 22px;
    height: 22px;
  }
  .providers-page .pv-coord-list > li.mc > h4 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0;
  }
  .providers-page .pv-coord-list > li.mc > .mc-part {
    grid-column: 2;
  }
  .providers-page .pv-coord-list > li.mc .mc-btn {
    padding: 12px 0;
  }
  .providers-page .pv-coord-head {
    margin-bottom: 6px;
    padding-bottom: 12px;
  }
}
@media (max-width: 720px) {
  .care-page .nw-support-detail .nw-support-topic.mc > h3 {
    grid-row: 1 !important;
  }
  .care-page .nw-support-detail .nw-support-topic.mc > .nw-topic-art {
    grid-row: 2;
    justify-self: start;
  }
  .care-page .nw-support-detail .nw-support-topic.mc > p.mc-part {
    grid-row: 3;
  }
}
@media (max-width: 720px) {
  .careers-page .nw-role.role-compact:not(.role-open) .nw-role-description,
  .careers-page .nw-role.role-compact:not(.role-open) .nw-role-top > dl > :nth-child(n + 3),
  .careers-page .nw-role.role-compact:not(.role-open) .nw-role-more {
    display: none;
  }
  .nw-role-toggle {
    all: unset;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 12px 0 4px;
    padding: 12px 0;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    font: 700 var(--fs-body)/1.2 var(--nw-display, inherit);
    color: var(--navy, var(--navy));
    cursor: pointer;
  }
  .nw-role-toggle::after {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    opacity: 0.7;
    background:
      linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat,
      linear-gradient(currentColor, currentColor) center/1.5px 10px no-repeat;
  }
  .role-open .nw-role-toggle::after {
    background: linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat;
  }
  .nw-role-toggle[hidden] {
    display: none;
  }
  .nw-role-toggle:focus-visible {
    outline: 2px solid var(--navy, var(--navy));
    outline-offset: 3px;
  }
}
/* ── One expand/collapse icon sitewide: 22px circle, plus when closed, minus when open ── */
:is(
    .nw-faq details,
    .nw-disclosure,
    .nw-example-mobile,
    .nw-faq-categories,
    details.nw-role-more,
    details.nw-bio
  )
  > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
:is(
    .nw-faq details,
    .nw-disclosure,
    .nw-example-mobile,
    .nw-faq-categories,
    details.nw-role-more,
    details.nw-bio
  )
  > summary::after {
  content: "" !important;
  flex: none;
  width: 22px;
  height: 22px;
  margin: 0 0 0 auto !important;
  padding: 0;
  box-sizing: border-box;
  border: 1.5px solid currentColor;
  border-radius: 50%;
  opacity: 0.7;
  font-size: 0;
  line-height: 0;
  position: static;
  transform: none;
  background:
    linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat,
    linear-gradient(currentColor, currentColor) center/1.5px 10px no-repeat;
}
:is(
    .nw-faq details,
    .nw-disclosure,
    .nw-example-mobile,
    .nw-faq-categories,
    details.nw-role-more,
    details.nw-bio
  )[open]
  > summary::after {
  background: linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat;
}
.mc-btn::after,
.nw-role-toggle::after {
  border-width: 1.5px;
}
.nw-faq-categories > summary {
  padding-right: 18px;
}
@media (max-width: 720px) {
  .care-page .nw-support-detail {
    grid-template-columns: minmax(0, 1fr);
  }
  .care-page .nw-support-detail > * {
    grid-column: 1/-1;
    max-width: none;
  }
  /* tap targets: 44px minimum for switches, copy and inline arrow links */
  .mt-bar button {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .pv-copy {
    min-height: 44px;
  }
  .home-page .preparation-point h3 a,
  .home-page .home-price-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
}
@media (max-width: 720px) {
  .care-page .nw-support-detail > * {
    align-self: stretch;
    width: 100%;
    flex: none;
  }
  .care-page .nw-support-detail .nw-support-topic.mc {
    grid-template-columns: minmax(0, 1fr);
  }
  .home-page .region-detail a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
}
@media (max-width: 720px) {
  /* FAQ: the topic list opener matches the topic rows below it (hairlines, same icon column) */
  .nw-faq-categories {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    padding: 0;
    border-top: 1px solid rgba(27, 42, 74, 0.14);
  }
  .nw-faq-categories > summary {
    padding: 16px 0;
  }
  .navigation-page .nw-pricebox {
    padding: 22px;
  }
}
@media (max-width: 720px) {
  .nw-faq-categories {
    margin-bottom: 0;
    border-bottom: 0;
  }
  .nw-faq-categories[open] {
    border-bottom: 1px solid rgba(27, 42, 74, 0.14);
    margin-bottom: 12px;
  }
}
@media (max-width: 720px) {
  .home-page .region-detail a {
    gap: 6px;
  }
  .mobile-person > summary .mobile-person-toggle {
    align-self: start;
    margin-top: 4px;
  }
}
@media (max-width: 720px) {
  /* Pricing calculator: Monthly and Flex stacked, each row label | value on one line */
  .pricing-page .nw-calc-results {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .pricing-page .nw-calc-plan + .nw-calc-plan {
    border-left: 0;
    border-top: 1px solid var(--nw-line-care);
    padding-left: 0;
  }
  .pricing-page .nw-calc-plan {
    padding: 14px 16px;
  }
  .pricing-page .nw-calc-row,
  .pricing-page .nw-calc-total {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
  }
  .pricing-page .nw-calc-total {
    flex-wrap: wrap;
  }
  .pricing-page .nw-calc-total > span:last-child {
    font-size: var(--fs-h2);
  }
}
@media (max-width: 720px) {
  .pricing-page .nw-calc-results {
    display: block;
  }
  .pricing-page .nw-calc-plan {
    display: block;
    grid-row: auto;
    grid-template-rows: none;
  }
  .pricing-page .nw-calc-plan h4 {
    margin: 0 0 8px;
  }
  .pricing-page .nw-calc-row {
    padding: 6px 0;
  }
  .pricing-page .nw-calc-total {
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid var(--nw-line-care);
  }
  .pricing-page .nw-calc-flag {
    display: block;
    margin-top: 4px;
  }
  .pricing-page .nw-calc-flag[hidden] {
    display: none;
  }
}
@media (max-width: 720px) {
  .pricing-page .nw-calc-results .nw-calc-plan,
  .pricing-page .nw-calc-results .nw-calc-plan + .nw-calc-plan {
    padding: 14px 16px;
    margin: 0;
  }
  .pricing-page .nw-calc-results .nw-calc-plan > * {
    margin-top: 0;
    margin-bottom: 0;
    min-height: 0;
    height: auto;
  }
  .pricing-page .nw-calc-results .nw-calc-row {
    padding: 4px 0;
  }
  .pricing-page .nw-calc-results .nw-calc-total {
    margin-top: 8px;
    padding-top: 8px;
  }
  .pricing-page .nw-calc-results .nw-calc-total > span:last-child {
    margin-left: auto;
  }
}
@media (max-width: 720px) {
  .pricing-page .nw-calc-results .nw-calc-total {
    flex-wrap: nowrap;
  }
  .pricing-page .nw-calc-results .nw-calc-total > span:first-child {
    flex: 1 1 auto;
    min-width: 0;
  }
  .pricing-page .nw-calc-results .nw-calc-total > span:last-child {
    flex: none;
    font-size: var(--fs-h3);
    line-height: 1.2;
  }
  .pricing-page .nw-calc-results .nw-calc-flag {
    margin-top: 6px;
  }
}
@media (max-width: 720px) {
  .pricing-page .nw-calc-results .nw-calc-total > span {
    min-height: 0;
    height: auto;
  }
  .pricing-page .nw-calc-results .nw-calc-total {
    align-items: baseline;
  }
}
@media (max-width: 720px) {
  /* Providers: the two audience rows sit in a card like the coordination rows below, so the + icons line up */
  .providers-page .pv-audiences {
    padding: 4px 20px;
    border-radius: var(--r);
    background: #fff;
    border: 1px solid var(--nw-line-care, var(--respite-deep-30));
  }
  .providers-page .pv-audience.mc:first-child {
    border-top: 0;
  }
  .providers-page .pv-audience.mc:last-child {
    border-bottom: 0;
  }
  /* Privacy contents: 44px tap rows */
  .nw-doc-index a {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
}
/* ═════ Phone compaction ═════ */
@media (max-width: 720px) {
  /* tighter reading rhythm: ledes 16px, body 1.5 line height */
  .nw-lede,
  .home-company-intro-copy p,
  .team-heading p,
  .region-intro p,
  .nw-body-text {
    font-size: var(--fs-body) !important;
    line-height: 1.5 !important;
  }
  main p,
  main li {
    line-height: 1.5;
  }
  .nw-head {
    margin-bottom: 18px !important;
  }
  /* Home pricing boxes: label and price on one line */
  #services .home-care-price-card {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 10px;
    row-gap: 4px;
    padding: 12px 16px;
  }
  #services .home-care-price-card .home-pricing-label {
    margin: 0 !important;
  }
  #services .home-care-price-card h4 {
    margin: 0;
    font-size: var(--fs-lede);
  }
  #services .home-care-price-card p:last-child {
    flex-basis: 100%;
    margin: 0;
    font-size: var(--fs-body);
    line-height: 1.45;
  }
  .home-navigation-pricing p {
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    row-gap: 4px;
  }
  .home-navigation-pricing p > span:last-child {
    flex-basis: 100%;
    font-size: var(--fs-body);
  }
  .home-navigation-pricing {
    padding: 12px 16px;
  }
  /* "More" toggles for secondary intro paragraphs */
  .pc-more > .pc-extra {
    display: none;
  }
  .pc-more.is-open > .pc-extra {
    display: revert;
  }
  .pc-more-btn {
    text-underline-offset: 4px;
  }
  /* Providers: training photo as a wide strip; share note clipped until opened */
  .providers-page .pv-trust-photo img {
    aspect-ratio: 16/8;
  }
  .providers-page .pv-trust {
    margin-top: 24px;
    gap: 20px;
  }
  .providers-page .pv-share-text {
    max-height: 7.6em;
    overflow: hidden;
    position: relative;
    -webkit-mask-image: linear-gradient(#000 60%, transparent);
    mask-image: linear-gradient(#000 60%, transparent);
  }
  .providers-page .pv-share.is-open .pv-share-text {
    max-height: none;
    -webkit-mask-image: none;
    mask-image: none;
  }
  /* Care: training steps collapse to their titles */
  .care-page .nw-steps .nw-step.mc {
    padding: 0;
  }
}
@media (max-width: 720px) {
  .home-navigation-pricing p > span:first-child {
    flex: none;
  }
  .home-navigation-pricing strong {
    font-size: var(--fs-lede);
    display: inline;
  }
  .home-navigation-pricing p {
    align-items: baseline;
  }
}
@media (max-width: 720px) {
  .home-page .home-support-grid {
    gap: 0;
    row-gap: 0;
  }
  .home-page .home-support-item.mc {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    padding: 0;
    margin: 0;
  }
  .home-page .home-support-item.mc > svg {
    grid-row: 1;
    width: 22px;
    height: 22px;
    margin: 0;
  }
  .home-page .home-support-item.mc > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    font-size: var(--fs-lede);
  }
  .home-page .home-support-item.mc > .mc-part {
    grid-column: 2;
  }
  .care-page .nw-moments--schedule .nw-item.mc {
    display: block;
    padding: 0;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .care-page .nw-moments--schedule .nw-item.mc > h3 {
    font-size: var(--fs-lede);
  }
  .providers-page .pv-trust-points {
    gap: 0;
  }
  .providers-page .pv-trust-points .nw-point.mc {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    padding: 0;
  }
  .providers-page .pv-trust-points .nw-point.mc > .nw-icon {
    grid-row: 1;
    margin: 0;
  }
  .providers-page .pv-trust-points .nw-point.mc > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .providers-page .pv-trust-points .nw-point.mc > .mc-part {
    grid-column: 2;
  }
  .pv-sample-btn {
    margin-top: 14px;
    border-top: 1px solid var(--nw-line, var(--nw-line));
    font: 700 var(--fs-body)/1.3 var(--nw-display, inherit);
  }
  .pv-sample-btn[hidden] {
    display: none;
  }
  .pv-sample.pv-sample--phone:not(.is-open) {
    display: none;
  }
  .pv-sample.pv-sample--phone.is-open {
    margin-top: 4px;
  }
  .pv-sample-btn::after {
    transition: none;
  }
  .home-page .home-service-region .region-map img {
    margin-inline: auto;
    display: block;
  }
}
@media (max-width: 720px) {
  /* Care training steps: number and title share the row */
  .care-page ol.nw-steps .nw-step.mc {
    grid-template-columns: 30px minmax(0, 1fr);
    column-gap: 10px;
    align-items: center;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .care-page ol.nw-steps .nw-step.mc::before {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }
  .care-page ol.nw-steps .nw-step.mc > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .care-page ol.nw-steps .nw-step.mc > .mc-part {
    grid-column: 1/-1;
  }
  .care-page ol.nw-steps {
    gap: 0;
  }
  /* decorative paintings beside intros shrink on phones */
  .pricing-page .pricing-painting {
    display: none;
  }
  .care-page .nw-plan-intro .nw-plan-art {
    max-height: 64px;
    width: auto;
  }
}
/* ═════════════════════════════════════════════════════════════════════
   NOVINWAY MOBILE SYSTEM (≤720px), Oct 4. One set of rules for every page.
   M1 Rhythm      Sections 36px top and bottom. Heading → intro 12px. Intro → content 20px.
                  Blocks inside a section 28px apart.
   M2 Boundaries  Sections alternate backgrounds. When two neighbors share a background,
                  a content-width hairline separates them (added by mobile.js).
   M3 Landmarks   Every section heading carries a short accent rule, so each new topic is
                  easy to spot while scrolling.
   M4 Intros      Heading plus one paragraph. Further intro paragraphs wait behind "Read more".
   M5 Lists       Four or more title-and-text items show titles only, tap to open. Three or
                  fewer stay open.
   M6 Card rows   Two or three parallel cards become a swipe row with dots.
   M7 Media       Illustrations at most 160px tall; photos at a 3:2 frame or wider.
   M8 Controls    Tap targets at least 44px; one plus/minus icon style.
   M9 Action      A slim "Book a free consultation" bar (or the page's own main action)
                  stays reachable after the hero, and steps aside for the closing call to action.
   ═════════════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
  /* M1 */
  main > .nw-section,
  main > section.band:not(.band--team-feature):not(.band--care-specialists),
  main > #services.band {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }
  main > .nw-section.nw-examples {
    padding-top: 0 !important;
  }
  main section :is(.nw-head, .sec-title, .team-heading, .region-intro, .possibilities-copy) > h2,
  main section h2.nw-heading {
    margin-bottom: 12px !important;
  }
  main section .nw-head {
    margin-bottom: 20px !important;
  }
  /* M2 */
  main > .m-divide {
    position: relative;
  }
  main > .m-divide::before {
    content: "";
    position: absolute;
    top: 0;
    left: 18px;
    right: 18px;
    height: 1px;
    background: rgba(27, 42, 74, 0.14);
  }
  /* M3 */
  main
    > section:not(.hero):not(.nw-hero):not(.nw-hero-compact):not(.cta)
    h2:not(.mc h2):not(.nw-faq-group h2):not(.cta h2):first-of-type::before,
  main > section:not(.hero):not(.nw-hero):not(.nw-hero-compact):not(.cta) .nw-heading::before {
    content: "";
    display: block;
    width: 28px;
    height: 3px;
    margin: 0 0 12px;
    border-radius: var(--r-sm);
    background: var(--coral, var(--coral));
  }
  main .mc h2::before,
  main .nw-faq-group h2::before {
    content: none;
  }
  /* M7 */
  main .nw-art--painting img,
  main .nw-art--painting,
  main .nw-plan-art,
  main .pricing-painting {
    max-height: 160px !important;
  }
  main .nw-photo img,
  main .nw-photos img,
  main .pv-trust-photo img,
  main figure.nw-recog-photo img {
    aspect-ratio: 3/2;
    object-fit: cover;
  }
  /* inner blocks of long sections get the same hairline separation */
  .pricing-page .pr-step + .pr-step {
    padding-top: 28px;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .pricing-page .pr-step {
    margin-top: 28px;
  }
  .care-page .nw-training-observation,
  .care-page .nw-plan-detail {
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .providers-page .pv-trust,
  .providers-page .pv-audiences {
    margin-top: 28px;
  }
  /* M9 */
  .m-action {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
    background: color-mix(in srgb, var(--navy-deep-75) 96%, transparent);
    box-shadow: 0 -6px 18px color-mix(in srgb, var(--navy-deep-75) 18%, transparent);
    transform: translateY(110%);
    transition: transform 0.25s ease;
  }
  .m-action.is-on {
    transform: none;
  }
  .m-action a {
    flex: 1;
    max-width: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border-radius: var(--r-sm);
    background: var(--coral, var(--coral));
    color: var(--navy, var(--navy));
    font: 700 var(--fs-body)/1.2 var(--nw-display, inherit);
    text-decoration: none;
  }
  .m-action a:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 2px;
  }
  @media (prefers-reduced-motion: reduce) {
    .m-action {
      transition: none;
    }
  }
  body.has-m-action .site-footer {
    padding-bottom: 80px;
  }
}
@media (min-width: 721px) {
  .m-action {
    display: none;
  }
}
@media (max-width: 720px) {
  .pc-more .pc-extra {
    display: none;
  }
  .pc-more.is-open .pc-extra {
    display: revert;
  }
}
@media (max-width: 720px) {
  /* Home Navigation card: the heading sits above the banner, not under it */
  #services-navigation .service-stack > .sec-head {
    position: relative;
    z-index: 2;
  }
  #services-navigation .service-overview {
    margin-top: 0 !important;
  }
}
/* ═════ Mobile system additions (Oct 4, round 2) ═════
   M10 Phone variants reset desktop placement. A component restyled for phones sets its own
       rows, alignment and positioning; nothing inherits a desktop offset.
   M11 Line endings. Text wraps "pretty" (no one-word last lines); headings balance; short
       hyphenated words (de-escalation, follow-up) never split across lines.
   M12 Expand vs. go. Anything that opens in place is a button with the plus/minus circle and no
       underline. Underlined text with an arrow always goes to another page or section. */
@media (max-width: 720px) {
  /* M11 */
  main :is(p, li, dd, dt, blockquote, figcaption, summary, .mc-btn, .mc-label, .person-facts) {
    text-wrap: wrap !important;
  }
  main :is(h1, h2, h3, h4) {
    text-wrap: balance;
  }
  .nb {
    white-space: nowrap;
  }
  /* M12 */
  .pc-more-btn {
    all: unset;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    margin-top: 4px;
    padding: 0 14px 0 16px;
    border: 1px solid rgba(27, 42, 74, 0.22);
    border-radius: var(--r-pill);
    background: #fff;
    font: 700 var(--fs-body)/1.2 var(--nw-display, inherit);
    color: var(--navy, var(--navy));
    text-decoration: none;
    cursor: pointer;
  }
  .pc-more-btn[hidden] {
    display: none;
  }
  .pc-more-btn::after {
    content: "";
    flex: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    opacity: 0.75;
    box-sizing: border-box;
    background:
      linear-gradient(currentColor, currentColor) center/9px 1.5px no-repeat,
      linear-gradient(currentColor, currentColor) center/1.5px 9px no-repeat;
  }
  .pc-more-btn[aria-expanded="true"]::after {
    background: linear-gradient(currentColor, currentColor) center/9px 1.5px no-repeat;
  }
  .pc-more-btn:focus-visible {
    outline: 2px solid var(--navy, var(--navy));
    outline-offset: 3px;
  }
}
.mc-label {
  min-width: 0;
  flex: 1 1 auto;
}
@media (max-width: 720px) {
  .nw-day-tabs {
    display: grid;
    gap: 2px;
  }
  .nw-day-tab {
    text-align: center;
    justify-content: center;
    font-size: var(--fs-label);
  }
}
/* M13 Words stay whole. No breaking inside a word (only addresses and links may break). */
@media (max-width: 720px) {
  main,
  main * {
    overflow-wrap: normal !important;
    word-break: normal;
    hyphens: manual;
  }
  main a[href^="mailto:"],
  main a[href^="http"] {
    overflow-wrap: anywhere !important;
  }
  main h2 {
    line-height: 1.12;
  }
  #services-navigation .service-stack > .sec-head {
    margin-bottom: 10px !important;
  }
  /* M12 applied to bios: one expand control, the labelled pill; no separate corner icon, no underline */
  .mobile-person > summary .mobile-person-toggle {
    display: none;
  }
  .mobile-person-label > .mobile-person-action-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: max-content;
    margin-top: 10px;
    padding: 7px 12px 7px 14px;
    border: 1px solid rgba(27, 42, 74, 0.22);
    border-radius: var(--r-pill);
    background: #fff;
    text-decoration: none;
    font: 700 var(--fs-small)/1.2 var(--nw-display, inherit);
    color: var(--navy, var(--navy));
  }
  .mobile-person-label > .mobile-person-action-label::after {
    content: "";
    flex: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    opacity: 0.75;
    box-sizing: border-box;
    background:
      linear-gradient(currentColor, currentColor) center/8px 1.5px no-repeat,
      linear-gradient(currentColor, currentColor) center/1.5px 8px no-repeat;
  }
  .mobile-person[open] .mobile-person-action-label::after {
    background: linear-gradient(currentColor, currentColor) center/8px 1.5px no-repeat;
  }
}
@media (max-width: 380px) {
  .people--compact .mobile-person > summary {
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 12px;
  }
  .people--compact .mobile-person > summary > img {
    width: 56px;
    height: 56px;
  }
}
@media (max-width: 720px) {
  .nw-day-tabs {
    padding: 6px;
  }
}
@media (max-width: 380px) {
  .nw-day-tab {
    font-size: var(--fs-label);
    letter-spacing: -0.01em;
  }
}
/* M14 Pop-out banner (Home Care / Navigation): a short tinted band sized to its text; the illustration stands taller than the band and slightly past its right edge, echoing desktop */
@media (max-width: 720px) {
  html .home-page :is(#services, #services-navigation) .service-panel-container {
    --bh: 70px;
    --ah: 116px;
    margin-top: calc(var(--ah) - var(--bh) - 2px);
  }
  html .home-page :is(#services, #services-navigation) .service-panel-container .service-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto;
    column-gap: 8px;
    align-items: end;
    height: auto;
    min-height: var(--bh);
    aspect-ratio: auto;
    padding: 0;
    overflow: visible;
    border-radius: var(--r);
    background: var(--respite-deep-20);
  }
  html .home-page #services-navigation .service-panel-container .service-panel {
    background: var(--navigation-deep-20);
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel::before,
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel::after {
    display: none;
  }
  html .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-copy {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    justify-self: stretch !important;
    position: static;
    transform: none;
    width: auto !important;
    min-height: 0 !important;
    margin: 0;
    padding: 12px 0 12px 16px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    h3 {
    font-size: var(--fs-h3) !important;
    line-height: 1.2 !important;
    margin: 0 0 3px;
    white-space: nowrap;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    p {
    font-size: var(--fs-small) !important;
    line-height: 1.3 !important;
    margin: 0;
    white-space: normal;
    text-wrap: balance;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-visual {
    grid-column: 2;
    grid-row: 1;
    position: relative;
    inset: auto !important;
    align-self: end;
    justify-self: end;
    display: block;
    width: auto !important;
    height: var(--bh);
    padding: 0 !important;
    margin: 0 -10px 0 0;
    overflow: visible;
  }
  html .home-page :is(#services, #services-navigation) .service-panel-container .service-panel-art {
    position: static;
    inset: auto !important;
    display: block;
    height: var(--ah) !important;
    width: auto !important;
    max-width: none;
    margin: calc(var(--bh) - var(--ah)) 0 0;
    object-fit: contain;
    transform: none !important;
  }
}
@media (max-width: 380px) {
  html .home-page :is(#services, #services-navigation) .service-panel-container {
    --bh: 68px;
    --ah: 112px;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    h3 {
    font-size: var(--fs-lede) !important;
  }
}
@media (max-width: 380px) {
  html .home-page :is(#services, #services-navigation) .service-panel-container {
    --bh: 66px;
    --ah: 106px;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    h3 {
    font-size: var(--fs-lede) !important;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    p {
    font-size: var(--fs-small) !important;
  }
}
@media (max-width: 380px) {
  html .home-page :is(#services, #services-navigation) .service-panel-container {
    --bh: 64px;
    --ah: 100px;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    h3 {
    font-size: var(--fs-lede) !important;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    p {
    font-size: var(--fs-label) !important;
  }
}
@media (max-width: 380px) {
  html .home-page :is(#services, #services-navigation) .service-panel-container {
    --ah: 92px;
  }
  html
    .home-page
    :is(#services, #services-navigation)
    .service-panel-container
    .service-panel-copy
    h3 {
    font-size: var(--fs-body) !important;
    white-space: normal;
  }
}
/* ── Visual scan round 1 (phone) ─────────────────────────────────────────────
   M16 Compare-or-read rows stack: plan cards and role cards are one column on phone (no swipe).
   M17 Expanders are framed: a closed single expander has a hairline above and below, and an open panel has
       the same breathing room below its text as above it.
   M18 Expand labels use the full row: no balanced or shortened wrapping inside accordion labels.
   M19 Two narrow columns become one: if a column would hold fewer than ~3 words a line, it stacks.
   M20 One "Show more" shape: compact pill, 12px below the text it extends.
   M21 Section accent rule always sits above the heading, never beside it. */
@media (max-width: 720px) {
  /* M16 */
  .nw-plan-cards,
  .pr-plans,
  .nw-roles {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px !important;
    overflow: visible;
    padding: 0;
    margin-inline: 0;
  }
  .nw-plan-cards > *,
  .pr-plans > *,
  .nw-roles > * {
    width: auto;
    max-width: none;
    min-width: 0;
    flex: none;
  }
  /* M17 */
  details.nw-disclosure:not([open]) {
    border-bottom: 1px solid var(--respite-deep-30);
  }
  main .mc.is-open:not(#_) {
    padding-bottom: 16px;
  }
  /* M18 */
  main .mc-btn .mc-label,
  main summary,
  main .mc-btn {
    text-wrap: wrap;
    max-width: none;
  }
  main .mc-btn .mc-label {
    flex: 1 1 auto;
    min-width: 0;
  }
  /* M20 */
  main .pc-more-btn {
    display: inline-flex;
    width: auto;
    justify-self: start;
    align-self: flex-start;
    margin-top: 12px !important;
  }
  /* M21 */
  main .nw-doc-body h2 {
    display: block;
  }
  main .nw-doc-body h2 > span:first-child {
    display: inline;
    margin-right: 0.35em;
  }
  /* M19: Home Navigation scope lists */
  .home-navigation-scope {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px !important;
  }
  /* M19: About values, one per row with the art beside the text */
  .nw-values {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .nw-values .nw-value {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 16px;
    align-items: start;
    padding: 16px 0;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .nw-values .nw-value:first-child {
    border-top: 0;
  }
  .nw-values .nw-value-art {
    width: 76px;
    height: auto;
    margin: 2px 0 0;
    grid-row: 1;
  }
  .nw-values .nw-value-text {
    grid-column: 2;
  }
  .nw-values .nw-value-text p:not(.nw-value-label) {
    font-size: var(--fs-body);
  }
  /* M19: Contact intro, photo beside the heading, text full width */
  .consultation-person {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 14px;
    align-items: center;
  }
  .consultation-person > img {
    width: 64px;
    height: 64px;
    grid-row: 1;
  }
  .consultation-person > div {
    display: contents;
  }
  .consultation-person h2 {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
  }
  .consultation-person h2::before {
    display: none;
  }
  .consultation-person p {
    grid-column: 1/-1;
    margin-top: 10px;
  }
  /* M19: Careers role facts, label above value */
  .nw-ruled {
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 0 !important;
  }
  .nw-ruled dt {
    padding-top: 10px !important;
    font-size: var(--fs-label);
  }
  .nw-ruled dd {
    margin: 2px 0 0 !important;
  }
  /* M19: Pricing billing steps, a vertical list */
  .nw-bill-flow {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }
  .nw-bill-flow::before,
  .nw-bill-flow::after,
  .nw-bill-step::before,
  .nw-bill-step::after {
    display: none;
  }
  .nw-bill-step {
    justify-items: start;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    column-gap: 14px;
    text-align: left;
    padding: 12px 0;
    border-top: 1px solid rgba(27, 42, 74, 0.1);
    align-items: center;
  }
  .nw-bill-step:first-child {
    border-top: 0;
  }
  .nw-bill-step > .nw-bill-icon {
    grid-row: 1 / span 2;
    margin: 0;
  }
  .nw-bill-step > strong,
  .nw-bill-step > span:not(.nw-bill-icon) {
    grid-column: 2;
    text-align: left;
  }
  /* Home specialist cards: no empty third column in the card header */
  .mobile-person > summary {
    grid-template-columns: 60px minmax(0, 1fr);
  }
  /* Pricing hero links: three equal links on one row */
  .pricing-page .nw-hero-links,
  .nw-hero-links:has(.alink--respite) {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 12px;
  }
  .nw-hero-links:has(.alink--respite) .alink {
    font-size: var(--fs-body);
    line-height: 1.25;
    align-items: flex-start;
  }
  main .nw-quote-copy {
    padding-right: 0 !important;
  }
  .pricing-page .pr-step:has(> details.nw-disclosure:last-child) + .pr-step {
    border-top: 0;
    margin-top: 20px;
  }
  .nw-hero-links:has(.alink--respite) .alink {
    display: block;
    text-align: center;
    text-wrap: balance;
  }
  .nw-hero-links:has(.alink--respite) .alink > span[aria-hidden] {
    display: none;
  }
  /* Pricing: Navigation examples run the full column; estimate labels stay on one line */
  .pr-nav-examples {
    width: auto !important;
    max-width: none;
  }
  .nw-calc-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 12px;
  }
  .nw-calc-total > span:first-child {
    white-space: normal;
    font-size: var(--fs-label);
    max-width: 9.5em;
    line-height: 1.3;
    text-wrap: balance;
  }
  .nw-calc-total > span:last-child {
    white-space: nowrap;
    font-size: var(--fs-h2);
  }
  /* Providers: what we don't do, a left-aligned list */
  .pv-limits {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .pv-limits li {
    justify-content: flex-start;
    text-align: left;
  }
  /* Providers: the two note buttons share one shape and sit side by side */
  .pv-share .pc-more-btn,
  .pv-share .pv-copy {
    min-height: 44px;
    border-radius: var(--r-pill);
    margin-top: 12px;
    vertical-align: top;
  }
  /* Home: Thursday tabs sized to their words; button breathes and spans the card */
  .nw-day-tabs {
    grid-template-columns: auto auto auto auto;
    justify-content: space-between;
    column-gap: 0;
  }
  .nw-day-tab {
    padding-inline: 10px;
    white-space: nowrap;
  }
  .ordinary-thursday .btn {
    display: flex;
    width: 100%;
    margin-top: 24px;
    justify-content: center;
  }
  /* Home: the map gets the full column */
  .home-page .home-service-region .region-map img {
    width: 100%;
    max-width: none;
    max-height: none;
    height: auto;
  }
  /* Home hero location: pin travels with the first word */
  .home-service-area {
    display: block !important;
    text-align: center;
  }
  .home-service-area > svg {
    display: inline-block !important;
    vertical-align: -3px;
    margin-right: 6px;
  }
  .home-service-area > span {
    display: inline !important;
  }
  /* Care: the binder sits with its heading instead of alone */
  .nw-plan-intro {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 14px;
    align-items: center;
  }
  .nw-plan-intro > .nw-plan-art {
    width: 64px !important;
    height: auto !important;
    margin: 0;
    grid-row: 1;
  }
  .nw-plan-intro > h3 {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
  }
  .nw-plan-intro > :not(.nw-plan-art):not(h3) {
    grid-column: 1/-1;
  }
  /* FAQ: the topic rail repeats the topic list right below it on phone */
  .faq-page .nw-faq-categories,
  #faq-categories {
    display: none;
  }
}
@media (max-width: 720px) {
  main .nw-person-role,
  main p.nw-person-role {
    text-wrap: balance !important;
  }
}
@media (max-width: 720px) {
  main a[href^="tel:"] {
    white-space: nowrap;
  }
}
/* Home comparison on phone: still one screen, but no type under 10.5px; column heads in sentence case so they never hyphenate */
@media (max-width: 720px) {
  .home-page #services .service-overview > .home-service-body--care > .home-compare {
    margin-inline: -14px;
  }
  .home-page #services .home-compare .mC-table thead th {
    font-size: var(--fs-label);
    text-transform: none;
    letter-spacing: 0;
    font-weight: 600;
    hyphens: none;
    -webkit-hyphens: none;
    padding: 6px 3px !important;
    line-height: 1.25;
  }
  .home-page #services .home-compare .mC-table thead .us {
    font-size: var(--fs-label);
  }
  .home-page #services .home-compare .mC-table tbody th {
    font-size: var(--fs-label);
    text-wrap: balance;
  }
  .home-page #services .home-compare .mC-table td span {
    font-size: var(--fs-label);
    line-height: 1.15;
  }
  .home-page #services .home-compare .mC-table thead td {
    width: 36%;
  }
}
/* M6 refinement: the peek of the next card fades out instead of showing clipped words */
@media (max-width: 720px) {
  main .ms {
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 40px), rgba(0, 0, 0, 0.15));
    mask-image: linear-gradient(to right, #000 calc(100% - 40px), rgba(0, 0, 0, 0.15));
  }
}
@media (max-width: 720px) {
  main p > .alink:only-child {
    display: inline;
    line-height: 1.6;
  }
}
@media (max-width: 380px) {
  .nw-day-tabs {
    padding: 6px 8px;
  }
  .nw-day-tab {
    padding-inline: 7px;
    font-size: var(--fs-label);
  }
}
@media (max-width: 720px) {
  .pricing-page .plans-include {
    border-bottom: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 720px) {
  /* Regional pages: steps and program cards collapse to hairline rows */
  .region-page ol.nw-steps {
    gap: 0;
  }
  .region-page ol.nw-steps .nw-step.mc {
    grid-template-columns: 30px minmax(0, 1fr);
    column-gap: 10px;
    align-items: center;
    padding: 0;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
  }
  .region-page ol.nw-steps .nw-step.mc::before {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    margin: 0;
  }
  .region-page ol.nw-steps .nw-step.mc > h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .region-page ol.nw-steps .nw-step.mc > .mc-part {
    grid-column: 1/-1;
  }
  .region-page .region-programs {
    gap: 0;
  }
  .region-page .region-programs > li.mc {
    padding: 0;
    border: 0;
    border-top: 1px solid rgba(27, 42, 74, 0.12);
    border-radius: 0;
    background: none;
  }
  .region-page .region-programs > li.mc:last-child {
    border-bottom: 1px solid rgba(27, 42, 74, 0.12);
  }
  .region-page .region-programs > li.mc.is-open {
    padding-bottom: 16px;
  }
}
@media (max-width: 720px) {
  .home-page .region-detail h3 a {
    display: inline-block;
    min-height: 0;
    padding-block: 10px;
    margin-block: -10px;
  }
  .nw-hero-label-more {
    display: none;
  }
}

/* ── Art placed from the clay set (October 2026) ── */
:where(body:not(.home-page)) .nw-hero-compact .vx-guide-head img { padding: 10px; }
:where(body:not(.home-page)) .vx-thumb--art img { object-fit: contain; }
:where(body:not(.home-page)) .vx-spot--inline.vx-spot--img { padding: 14px; background: var(--paper); }
:where(body:not(.home-page)) .vx-spot--inline.vx-spot--img img { display: block; width: 100%; height: 100%; object-fit: contain; }
/* Care: practical-detail icons, each a link to its answer */
.vx-icons ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}
.vx-icons a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 14px 8px 12px;
  border-radius: var(--r);
  color: var(--navy);
  font: 600 var(--fs-small)/1.25 var(--nw-text);
  text-align: center;
  text-decoration: none;
  transition: background 0.16s ease;
}
.vx-icons a:hover { background: var(--panel-respite); }
.vx-icons a:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
.vx-icons svg { width: 36px; height: 36px; }
@media (max-width: 1120px) {
  .vx-icons ul { grid-template-columns: repeat(6, minmax(0, 1fr)); max-width: 720px; }
}
@media (max-width: 720px) {
  .vx-icons ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .vx-icons svg { width: 30px; height: 30px; }
}
/* Trust strip: badges keep their white halo and glow coral on hover and keyboard focus. */
.home-page .hero--home .trust-strip--overlay .trust-badge img {
  filter: drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff)
    drop-shadow(0 0 12px rgba(255, 255, 255, 0.9)) drop-shadow(0 0 20px rgba(232, 153, 141, 0));
  transition: filter 0.2s ease;
}
@media (hover: hover) {
  .home-page .hero--home .trust-strip--overlay .trust-badge:hover img {
    filter: drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff)
      drop-shadow(0 0 10px rgba(232, 153, 141, 1)) drop-shadow(0 0 20px rgba(232, 153, 141, 0.85));
  }
}
.home-page .hero--home .trust-strip--overlay .trust-badge:focus-visible img {
  filter: drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff)
    drop-shadow(0 0 10px rgba(232, 153, 141, 1)) drop-shadow(0 0 20px rgba(232, 153, 141, 0.85));
}
@media (prefers-reduced-motion: reduce) {
  .home-page .hero--home .trust-strip--overlay .trust-badge img { transition: none; }
}
/* Key-figure cards keep their padding inside the guide body (the list reset was removing it). */
:where(body:not(.home-page)) .nw-doc-body .vx-figures li.vx-figure { padding: 16px 18px; }
/* Maryland DDA two-paths diagram: even spacing between steps (the guide list reset was removing it),
   and a full-size tap target in the caption */
:where(body:not(.home-page)) .nw-doc-body .vx-path ol li.vx-path-step { padding-bottom: 14px; }
:where(body:not(.home-page)) .nw-doc-body .vx-path ol li.vx-path-step:last-child { padding-bottom: 0; }
:where(body:not(.home-page)) .vx-path-step--stuck div { margin: -6px 0 -6px -6px; }
:where(body:not(.home-page)) .vx-paths figcaption a { display: inline-block; padding-block: 10px; margin-block: -10px; white-space: nowrap; }
/* Pricing: the Navigation quote box keeps even side padding on phones */
@media (max-width: 720px) {
  .pricing-page .nw-quote-row > .nw-navigation-quote { padding-inline: 20px; }
}
:where(body:not(.home-page)) .vx-path-step--stuck div { padding: 10px 14px; }
:where(body:not(.home-page)) .vx-path-step--stuck div { margin-block: -10px; }
/* Regional program cards: five cards sit as three and two rather than four and one */
@media (min-width: 1121px) {
  :where(body:not(.home-page)) .region-programs:has(> li:nth-child(5):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Small phones (380px and narrower): section headings and the Thursday tabs fit the screen */
@media (max-width: 380px) {
  main .nw-heading { font-size: 1.75rem; }
  .home-page .nw-day-tabs { padding-inline: 4px; column-gap: 2px; }
  .home-page .nw-day-tabs .nw-day-tab { padding-inline: 5px; font-size: 12px; letter-spacing: -0.01em; }
}

/* Region place photos (Wikimedia Commons, credited in the caption) */
:where(body:not(.home-page)) .vx-inline-art--photo { overflow: visible; border-radius: 0; max-width: none; width: 100%; margin: 40px 0 8px; }
:where(body:not(.home-page)) .vx-inline-art--photo img { aspect-ratio: 2 / 1; object-fit: cover; object-position: center 55%; border-radius: var(--r); }
:where(body:not(.home-page)) .vx-inline-art--photo figcaption { margin-top: 8px; font-size: var(--fs-small); line-height: 1.4; color: var(--navy-deep-75); }
:where(body:not(.home-page)) .vx-inline-art--photo figcaption a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
/* Careers: wide team photo above the roles */
:where(body:not(.home-page)) .vx-photo-wide { margin: 0 0 40px; border-radius: var(--r); overflow: hidden; }
:where(body:not(.home-page)) .vx-photo-wide img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }

/* About values: numbered, on the topographic navy. No illustrations. */
:where(body:not(.home-page)) .nw-values {
  counter-reset: nwv;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 40px;
  padding: 16px 20px;
  border-radius: var(--r);
  background: linear-gradient(rgba(27, 42, 74, 0.9), rgba(27, 42, 74, 0.9)), var(--navy) url("images/home-2026/hero-topographic-no-star.webp") center / cover;
}
:where(body:not(.home-page)) .nw-values .nw-value {
  counter-increment: nwv;
  display: block;
  padding: 28px 24px 32px;
  border-top: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.16);
}
:where(body:not(.home-page)) .nw-values .nw-value:nth-child(3n+1) { border-left: 0; }
:where(body:not(.home-page)) .nw-values .nw-value:nth-child(n+4) { border-top: 1px solid rgba(255, 255, 255, 0.16); }
:where(body:not(.home-page)) .nw-values .nw-value::before {
  content: counter(nwv, decimal-leading-zero);
  display: block;
  margin-bottom: 20px;
  font: 700 2.75rem/1 var(--nw-display);
  letter-spacing: -0.02em;
  color: var(--periwinkle);
}
:where(body:not(.home-page)) .nw-values .nw-value .nw-value-label { margin: 0 0 8px; color: var(--coral-light); }
:where(body:not(.home-page)) .nw-values .nw-value h3 { margin: 0 0 8px; color: #fff; }
:where(body:not(.home-page)) .nw-values .nw-value p:not(.nw-value-label) { color: rgba(255, 255, 255, 0.84); }
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-values { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(body:not(.home-page)) .nw-values .nw-value:nth-child(n) { border-left: 1px solid rgba(255, 255, 255, 0.16); border-top: 1px solid rgba(255, 255, 255, 0.16); }
  :where(body:not(.home-page)) .nw-values .nw-value:nth-child(odd) { border-left: 0; }
  :where(body:not(.home-page)) .nw-values .nw-value:nth-child(-n+2) { border-top: 0; }
}
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-values { grid-template-columns: minmax(0, 1fr); padding: 4px 20px; margin-top: 28px; }
  :where(body:not(.home-page)) .nw-values .nw-value:nth-child(n) { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 12px; padding: 22px 0; border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.16); }
  :where(body:not(.home-page)) .nw-values .nw-value:first-child { border-top: 0; }
  :where(body:not(.home-page)) .nw-values .nw-value::before { grid-row: 1 / span 3; margin: 2px 0 0; font-size: 1.5rem; }
  :where(body:not(.home-page)) .nw-values .nw-value > * { grid-column: 2; }
  :where(body:not(.home-page)) .nw-values .nw-value .nw-value-label { letter-spacing: 0.08em; text-transform: uppercase; }
}
/* About: real photo in the opening split */
:where(body:not(.home-page)) .nw-opening-art > .nw-art--photo { grid-column: 2; grid-row: 1; margin: 0; }
:where(body:not(.home-page)) .nw-art--photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r); }
@media (max-width: 720px) { :where(body:not(.home-page)) .nw-art--photo { margin: 24px 0 0; } }

/* Providers situations: text cards now that the art is gone */
:where(body:not(.home-page)) .pv-situations .pv-situation { display: block; }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .pv-situations { grid-template-columns: minmax(0, 1fr); }
}
/* Care pricing intro spans the row now that the art is gone */
:where(body:not(.home-page)) .nw-care-pricing > .nw-care-pricing-intro { grid-column: 1 / -1; }


/* Region pages: the area's own map beside the opening copy */
:where(body:not(.home-page)) .vx-region-intro { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: 48px; align-items: center; }
:where(body:not(.home-page)) .vx-region-map { margin: 0; }
:where(body:not(.home-page)) .vx-region-map img { display: block; width: 100%; height: auto; }
@media (max-width: 900px) {
  :where(body:not(.home-page)) .vx-region-intro { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  :where(body:not(.home-page)) .vx-region-map { max-width: 560px; width: 100%; margin: 0 auto; }
}

/* ===== Section patterns (review pass) ===== */
/* 1a · Comparison matrix: Novinway as a raised navy column; icons only on phones */
.home-page .mC-table th.us,
.home-page .mC-table tbody td:last-child { background: var(--navy); color: #fff; }
.home-page .mC-table th.us { border-radius: 12px 12px 0 0; }
.home-page .mC-table tbody tr:last-child td:last-child { border-radius: 0 0 12px 12px; }
.home-page .mC-table tbody td:last-child span { color: #fff; }
.home-page .mC-table tbody td:last-child { border-color: rgba(255, 255, 255, 0.12); }
@media (max-width: 720px) {
  .home-page .mC-table { width: 100% !important; min-width: 0 !important; table-layout: fixed; }
  .home-page .mC-table th, .home-page .mC-table td { padding: 8px 4px !important; }
  .home-page .mC-table thead th { font-size: 10.5px !important; line-height: 1.2; vertical-align: bottom; }
  .home-page .mC-table thead td { width: 44%; }
  .home-page .mC-table tbody th { font-size: 13px !important; line-height: 1.25; text-align: left; }
  .home-page .mC-table tbody td { text-align: center; }
  .home-page .mC-table tbody td span { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
/* 1b · Intake as a navy step band; Monthly and Flex side by side on phones */
.care-page .nw-care-pricing .nw-intake {
  position: relative; overflow: hidden; max-width: none !important;
  padding: 22px 26px; border-radius: var(--r); color: #fff;
  background: url("images/home-2026/contour-white-faint.png") 100% 0 / 900px auto no-repeat, var(--navy);
}
.care-page .nw-care-pricing .nw-intake strong { color: #fff; }
.care-page .nw-care-pricing .nw-intake a { color: var(--periwinkle-light, #d6e0ff); }
@media (max-width: 720px) {
  .care-page .nw-plan-cards--all { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; gap: 0 !important; border-radius: var(--r); overflow: hidden; background: #fff; }
  .care-page .nw-plan-cards--all > .nw-plan-card { margin: 0 !important; padding: 14px 12px !important; border-radius: 0 !important; box-shadow: none !important; border: 0 !important; min-width: 0; }
  .care-page .nw-plan-cards--all > .nw-plan-card + .nw-plan-card { border-left: 1px solid var(--navy-15) !important; }
  .care-page .nw-plan-cards--all h3 { font-size: 1.0625rem !important; }
  .care-page .nw-plan-cards--all .nw-rate { font-size: 2rem !important; line-height: 1; }
  .care-page .nw-plan-cards--all .plan-fee, .care-page .nw-plan-cards--all .plan-rate + p { font-size: 13px !important; line-height: 1.4; }
  .care-page .nw-plan-cards--all summary { font-size: 12.5px !important; }
  .care-page .nw-care-pricing .nw-intake { padding: 16px 18px; }
}
/* 1c · Process rail: navy numbered circles joined by a dashed line */
:where(body:not(.home-page)) .nw-steps .nw-step { position: relative; }
:where(body:not(.home-page)) .nw-steps .nw-step::before { background: var(--navy) !important; color: #fff !important; box-shadow: 0 0 0 5px #fff; position: relative; z-index: 1; }
:where(body:not(.home-page)) .nw-section--care .nw-steps .nw-step::before { box-shadow: 0 0 0 5px var(--panel-respite, #fdf3f0); }
:where(body:not(.home-page)) .nw-steps .nw-step:last-child::before { background: var(--coral) !important; color: var(--navy) !important; }
:where(body:not(.home-page)) .nw-steps--stack .nw-step:not(:last-child)::after {
  content: ""; position: absolute; left: 17px; top: 40px; bottom: -14px; width: 2px;
  background: repeating-linear-gradient(180deg, var(--coral) 0 6px, transparent 6px 12px);
}
@media (max-width: 720px) { :where(body:not(.home-page)) .nw-steps--stack .nw-step:not(:last-child)::after { left: 14px; top: 34px; } }
/* 1d · Care topics: ruled two-column list, no tiles */
.care-page .nw-support-topic { padding: 18px 0 0 !important; border-top: 1px solid var(--navy-15); background: none; border-radius: 0; }
/* 1e · Region programs as a scannable table */
@media (min-width: 900px) {
  :where(body:not(.home-page)) .region-programs { display: block !important; }
  :where(body:not(.home-page)) .region-programs > li {
    display: grid !important; grid-template-columns: 240px minmax(0, 1fr) 220px; column-gap: 28px; align-items: start;
    padding: 18px 0 !important; margin: 0 !important; border: 0 !important; border-top: 1px solid var(--navy-15) !important; border-radius: 0 !important; background: none !important; box-shadow: none !important;
  }
  :where(body:not(.home-page)) .region-programs > li > .vx-prog-tag { grid-column: 1; grid-row: 1; margin: 0 0 6px; }
  :where(body:not(.home-page)) .region-programs > li > h3 { grid-column: 1; grid-row: 2; margin: 0; }
  :where(body:not(.home-page)) .region-programs > li > p:not(.vx-prog-tag):not(:last-child) { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
  :where(body:not(.home-page)) .region-programs > li > p:last-child { grid-column: 3; grid-row: 1 / span 2; margin: 0; font-weight: 700; }
}

/* 1a · Comparison matrix, compact on desktop */
@media (min-width: 721px) {
  .home-page .mC-table th, .home-page .mC-table td { padding-top: 7px !important; padding-bottom: 7px !important; }
  .home-page .mC-table tbody th { font-size: 15px !important; line-height: 1.3 !important; }
  .home-page .mC-table td span { font-size: 13px !important; }
  .home-page .mC-table thead th { font-size: 13px !important; line-height: 1.25 !important; padding-bottom: 10px !important; }
  .home-page .mC-table .m-ic { width: 18px !important; height: 18px !important; }
}

/* Reading rhythm: tighter sections */
:where(body:not(.home-page)) .nw-section { padding-block: 72px; }
:where(body:not(.home-page)) .nw-head { margin-bottom: 28px; }
:where(body:not(.home-page)) .nw-lede { max-width: 62ch; }
@media (max-width: 720px) {
  :where(body:not(.home-page)) .nw-section { padding-block: 44px; }
  :where(body:not(.home-page)) .nw-head { margin-bottom: 20px; }
}

/* ==========================================================================
   Compact layout (Oct 2026). Same copy, less height. Loaded last on purpose.
   ========================================================================== */
/* Home: service labels (type only, no card/band/scene) */
html body.home-page :is(#services, #services-navigation) .service-stack { background: transparent; padding: 0; border-radius: 0; box-shadow: none; overflow: visible; }
html body.home-page :is(#services, #services-navigation) .service-overview { margin-top: 0 !important; padding-top: 0; }
html body.home-page :is(#services, #services-navigation) .service-overview > .home-service-body--refined,
html body.home-page :is(#services, #services-navigation) .home-service-body { padding-inline: 0; }
html body.home-page #services-navigation .service-stack > .sec-head--solo { margin-bottom: 20px !important; }
.svc-label { grid-column: 1 / -1; margin: 0 0 4px; padding: 0 0 16px; border-bottom: 1px solid var(--rule); }
.svc-label-name { display: flex; align-items: center; gap: 8px; margin: 0; font: 700 var(--fs-label)/1.2 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--respite-ink); }
.svc-label-name::before { content: ""; flex: none; width: 16px; height: 16px; background: currentColor; -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
.svc-label--navigation .svc-label-name { color: var(--navigation-ink); }
.svc-label-tag { margin: 8px 0 0; font: 800 calc(var(--fs-h3) * 1.2)/1.15 var(--nw-display); letter-spacing: -0.03em; color: var(--navy); text-wrap: balance; }
@media (max-width: 720px) {
  .svc-label { margin-bottom: 4px; padding-bottom: 12px; }
  .svc-label-tag { font-size: var(--fs-h3); margin-top: 6px; }
}
/* Home: comparison table, one line per cell */
html body.home-page #services .home-compare.mC--line .mC-table { font-size: 0.875rem; }
html body.home-page #services .home-compare.mC--line .mC-table tbody th { padding: 9px 12px 9px 0; font-size: 0.875rem; line-height: 1.3; }
html body.home-page #services .home-compare.mC--line .mC-table td { padding: 9px 8px; line-height: 1.3; white-space: nowrap; }
html body.home-page #services .home-compare.mC--line .mC-table td .m-ic { display: inline-block; width: 16px; height: 16px; margin: 0 6px 0 0; vertical-align: -3px; }
html body.home-page #services .home-compare.mC--line .mC-table td span { display: inline; margin: 0; font-size: 0.875rem; }
html body.home-page #services .home-compare.mC--line .mC-table thead th { padding: 8px; font-size: 0.75rem; line-height: 1.25; }
.mC-short { display: none; }
@media (max-width: 720px) {
  html body.home-page #services .home-compare.mC--line .mC-table,
  html body.home-page #services .home-compare.mC--line .mC-table :is(thead, tbody) { display: block; width: 100%; }
  html body.home-page #services .home-compare.mC--line .mC-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 8px; }
  html body.home-page #services .home-compare.mC--line .mC-table thead tr { position: sticky; top: 0; z-index: 2; background: var(--white); border-bottom: 1px solid var(--navy); }
  html body.home-page #services .home-compare.mC--line .mC-table thead td { display: none; }
  html body.home-page #services .home-compare.mC--line .mC-table thead th,
  html body.home-page #services .home-compare.mC--line .mC-table thead th.us { display: block; padding: 8px 0 !important; background: none; color: var(--slate); border-radius: 0; font-size: 0.6875rem !important; font-weight: 700; letter-spacing: 0.06em !important; text-transform: uppercase !important; text-align: left; }
  html body.home-page #services .home-compare.mC--line .mC-table thead th.us { color: var(--navy); }
  html body.home-page #services .home-compare.mC--line .mC-long { display: none; }
  html body.home-page #services .home-compare.mC--line .mC-short { display: inline; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody tr { padding: 8px 0; border-bottom: 1px solid var(--rule); row-gap: 4px; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody th { grid-column: 1 / -1; padding: 0 !important; border: 0; font-size: 0.875rem; font-weight: 600; text-align: left; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody td,
  html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child { display: flex; align-items: center; gap: 5px; padding: 0 !important; border: 0; background: none !important; border-radius: 0 !important; color: var(--slate); font-size: 0.8125rem; text-align: left; white-space: normal; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child { color: var(--navy); font-weight: 700; }
  html body.home-page #services .home-compare.mC--line .mC-table td .m-ic { width: 13px; height: 13px; margin: 0; flex: none; vertical-align: 0; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child .m-ic { color: var(--coral-ink); }
  html body.home-page #services .home-compare.mC--line .mC-table td span { display: inline !important; position: static !important; width: auto !important; height: auto !important; clip: auto !important; clip-path: none !important; overflow: visible !important; white-space: normal !important; margin: 0 !important; font-size: 0.8125rem; }
  html body.home-page #services .service-overview > .home-service-body--care > .home-compare.mC--line { margin-inline: 0; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child span { color: var(--navy) !important; font-weight: 700; }
}
/* Home: Care Specialist cards, smaller photo and an unboxed quote */
html body.home-page .specialists-panel .person-identity { grid-template-columns: 96px minmax(0, 1fr); gap: 16px; }
html body.home-page .specialists-panel .person-identity .person-photo { width: 96px; height: 96px; }
html body.home-page .specialists-panel .specialist-voice.quote-treatment { min-height: 0; margin: 16px 0; padding: 0; border: 0 !important; border-radius: 0; background: none !important; box-shadow: none; font: 600 var(--fs-body)/1.5 var(--nw-display); color: var(--navy); }
html body.home-page .specialists-panel .specialist-voice.quote-treatment::before { content: "“"; position: static; font: inherit; color: inherit; }
html body.home-page .specialists-panel .specialist-voice.quote-treatment::after { content: "”"; }
@media (max-width: 1120px) {
  html body.home-page .specialists-panel .person > .specialist-voice.quote-treatment { margin: 14px 18px 16px; }
}

/* Pricing: compact intake, plans, calculator */
html body .pr-plan-head { padding-bottom: 12px; }
html body .pr-plan-facts li { padding-block: 4px; }
html body #care-pricing .plans-include { display: flex !important; flex-wrap: wrap; align-items: center; gap: 10px 28px; padding-block: 16px; }
html body #care-pricing .plans-include h3 { margin: 0; font-size: var(--fs-body); }
html body #care-pricing .plans-include-grid { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0; }
html body #care-pricing .nw-calc-row { padding-block: 6px; min-height: 0; }
html body #care-pricing .nw-calc-plan { row-gap: 2px !important; gap: 2px !important; }
html body #care-pricing .nw-calc-total > span:last-child { margin: 0; }
html body #care-pricing .nw-calc-results { grid-template-rows: repeat(5, auto) !important; align-content: start; }
html body #care-pricing .nw-calc-plan > * { min-height: 0 !important; height: auto; align-self: start; }
html body #care-pricing .plans-include h3 { flex: none; width: auto; }
html body #care-pricing .nw-calc-total { margin-top: 8px; padding-top: 10px; }
@media (min-width: 721px) {
  html body #care-pricing .pr-intake-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 28px; }
  html body #care-pricing .pr-intake-list li { margin: 0; }
}
@media (max-width: 720px) {
  html body #care-pricing .nw-calc-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
  html body #care-pricing .nw-calc-plan { padding: 14px 12px; min-width: 0; }
  html body #care-pricing .nw-calc-plan + .nw-calc-plan { border-top: 0; border-left: 1px solid var(--rule); }
  html body #care-pricing .nw-calc-plan h4 { font-size: var(--fs-small); margin: 0 0 6px; }
  html body #care-pricing .nw-calc-row { display: flex; flex-direction: column; align-items: flex-start; gap: 0; padding-block: 4px; font-size: var(--fs-label); line-height: 1.3; }
  html body #care-pricing .nw-calc-total { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; font-size: var(--fs-label); }
  html body #care-pricing .nw-calc-total > span:last-child { font-size: 1.25rem; }
  html body #care-pricing :is(.nw-calc-row, .nw-calc-total) > span { text-align: left; align-self: flex-start; margin: 0; }
  html body #care-pricing .nw-calc-flag { font-size: 0.6875rem; margin-top: 6px; }
}

/* Care: Home / Outing tabs at every width (phone rules live in the M-block above) */
@media (min-width: 721px) {
  .mt-bar { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; max-width: 420px; padding: 4px; margin: 0 0 28px; border-radius: var(--r-pill); background: rgba(27, 42, 74, 0.07); }
  .mt-bar[hidden] { display: none; }
  .mt-bar button { all: unset; box-sizing: border-box; min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 10px 8px; border-radius: var(--r-pill); font: 700 var(--fs-body)/1.2 var(--nw-display, inherit); color: var(--navy); cursor: pointer; }
  .mt-bar button[aria-selected="true"] { background: var(--navy); color: #fff; }
  .mt-bar button:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
  .mt > .nw-safety-row.mt-hidden { display: none; }
  .mt > .nw-safety-row + .nw-safety-row { margin-top: 0; padding-top: 0; border-top: 0; }
  .mt .nw-safety-copy h3 { display: none; }
}
/* Care: How we prepare for care, shorter photos */
@media (min-width: 721px) {
  html body.care-page #family-care-plan .nw-photo img { height: 260px; aspect-ratio: auto; object-fit: cover; }
}

/* FAQ: one topic at a time on desktop (site.js adds .faq-one; search shows every match) */
@media (min-width: 1121px) {
  .nw-faqpage.faq-one .nw-faq-group.faq-off { display: none; }
  .nw-faqpage.faq-one .nw-back-link { display: none; }
  .nw-faqpage.faq-one .nw-faq-group:not(.faq-off) { margin-top: 0; padding-top: 0; }
  .nw-faqpage .nw-faq-categories .nw-faq-rail a[aria-current] { color: var(--navy); font-weight: 800; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 5px; }
}

/* ===== Visual pass (Oct 2026) ===== */
/* Sections alternate white / beige from the first section after the hero (classes set in the HTML) */
html body main > section.tone-white { background-color: var(--white) !important; }
html body main > section.tone-paper { background-color: var(--paper) !important; }
html body main > section:is(.tone-white, .tone-paper)::before { background: none !important; }
/* Pull line sits level with the intro, not at its foot */
.home-page .split-head .pull-line { align-self: start; }
html body.home-page .home-possibilities .possibilities-intro { margin-bottom: 40px !important; }
@media (max-width: 720px) { html body.home-page .home-possibilities .possibilities-intro { margin-bottom: 28px !important; } }
/* Home: comparison table back in its own card */
html body.home-page #services .home-service-body--care > .home-compare.mC--line { margin: 8px 0 0; padding: 32px 32px 24px; background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg); box-shadow: none; }
html body.home-page #services .home-compare.mC--line .mC-table tbody tr:last-child :is(th, td) { border-bottom: 0; }
@media (max-width: 720px) {
  html body.home-page #services .home-service-body--care > .home-compare.mC--line { padding: 20px 16px 12px; border-radius: var(--r); }
  html body.home-page #services .home-compare.mC--line .mC-table thead tr { background: var(--paper); }
}
/* Comparison icons: four distinct marks */
.mC-table .m-ic { fill: none; stroke: currentColor; stroke-width: 1.6; }
.mC-table .c-you { color: var(--slate) !important; }
.mC-table .c-you .m-ic--you { stroke-dasharray: 2.6 2.4; stroke-width: 1.6; }
.mC-table .c-no { color: var(--slate-light-shade-80, var(--slate)) !important; }
.mC-table .c-no .m-ic--no { opacity: 0.55; }
.mC-table .c-no span { opacity: 0.8; }
/* Home: An ordinary Thursday as a 4 x 2 grid with row labels (desktop) */
.day-rowhead { display: none; }
@media (min-width: 1121px) {
  html body.home-page .ordinary-thursday .day-strip { display: grid !important; grid-template-columns: 112px repeat(4, minmax(0, 1fr)); grid-template-rows: auto auto auto auto; column-gap: 0; row-gap: 0; }
  html body.home-page .ordinary-thursday :is(.day-moment, .day-rowhead) { display: grid !important; grid-row: 1 / span 4; grid-template-rows: subgrid; grid-template-columns: minmax(0, 1fr); padding: 0 !important; margin: 0; border: 0 !important; min-width: 0; }
  html body.home-page .ordinary-thursday .day-rowhead > span { display: flex; align-items: flex-start; padding: 16px 16px 16px 0; font: 700 var(--fs-label)/1.3 var(--nw-text); letter-spacing: 0.06em; text-transform: uppercase; color: var(--slate); }
  html body.home-page .ordinary-thursday .day-rowhead > span:nth-child(3) { border-top: 1px solid var(--rule); }
  html body.home-page .ordinary-thursday .day-rowhead > span:nth-child(4) { color: var(--navy); border-top: 1px solid var(--rule); }
  html body.home-page .ordinary-thursday .day-moment > * { margin: 0 !important; padding-inline: 16px; }
  html body.home-page .ordinary-thursday .day-moment .day-vignette { grid-row: 1; height: 120px; display: flex; align-items: flex-end; justify-content: flex-start; }
  html body.home-page .ordinary-thursday .day-moment .day-vignette img { width: auto; max-width: 100%; height: 100%; object-fit: contain; object-position: left bottom; }
  html body.home-page .ordinary-thursday .day-moment > h4 { grid-row: 2; display: flex; flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; padding-block: 12px 14px; }
  html body.home-page .ordinary-thursday .day-moment .moment-dot { display: none; }
  html body.home-page .ordinary-thursday .day-moment > .day-state { grid-row: 3; padding-block: 16px; border-top: 1px solid var(--rule); }
  html body.home-page .ordinary-thursday .day-moment > .day-state--help { grid-row: 4; background: var(--white); border-top: 1px solid var(--rule); }
  html body.home-page .ordinary-thursday .day-moment > .day-state dt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  html body.home-page .ordinary-thursday .day-moment > .day-state dd { margin: 0; }
  html body.home-page .ordinary-thursday .day-moment + .day-moment > .day-state { border-left: 1px solid var(--rule); }
  html body.home-page .ordinary-thursday .day-moment:nth-child(2) > .day-state--help { border-top-left-radius: var(--r); }
  html body.home-page .ordinary-thursday .day-moment:last-child > .day-state--help { border-top-right-radius: var(--r); }
}

/* Home: Navigation opens with eyebrow > section heading > tagline */
.svc-label--lead .svc-label-title { margin: 10px 0 0; font: 800 var(--fs-h2)/1.1 var(--nw-display); letter-spacing: -0.035em; color: var(--navy); }
.svc-label--lead .svc-label-tag { margin-top: 8px; font: 600 var(--fs-lede)/1.4 var(--nw-display); letter-spacing: -0.01em; }
@media (max-width: 720px) {
  .svc-label { border-bottom: 0; padding-bottom: 4px; }
  html body.home-page #services .home-compare.mC--line .mC-table tr { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.25fr) minmax(0, 0.85fr); }
}

/* Care: keep the illustrations in proportion to the text beside them */
@media (min-width: 1121px) {
  html body.care-page .nw-safety-row { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr) !important; align-items: center; column-gap: 56px; }
  html body.care-page .nw-safety-row--reverse { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) !important; }
  html body.care-page .nw-safety-art .nw-pinned { max-width: 560px; margin-inline: auto; }
  html body.care-page .nw-opening-art > .nw-art--scene { align-self: start; position: sticky; top: calc(var(--header-height) + 24px); height: 440px; max-height: 440px; overflow: hidden; border-radius: var(--r-lg); }
  html body.care-page .nw-opening-art > .nw-art--scene img { width: 100%; height: 100%; object-fit: cover; object-position: center 70%; }
}

@media (max-width: 720px) {
  html body.care-page main .nw-support-detail .nw-support-topic.mc { grid-template-columns: 24px minmax(0, 1fr) !important; column-gap: 12px; align-items: center; }
  html body.care-page main .nw-support-detail .nw-support-topic.mc > .nw-support-topic-icon { grid-column: 1 !important; grid-row: 1 !important; width: 22px; height: 22px; }
  html body.care-page main .nw-support-detail .nw-support-topic.mc > h3 { grid-column: 2 !important; grid-row: 1 !important; }
  html body.care-page main .nw-support-detail .nw-support-topic.mc > :not(svg):not(h3) { grid-column: 1 / -1 !important; grid-row: auto !important; }
  html body.care-page .nw-opening-art > .nw-art--scene { height: 200px; overflow: hidden; border-radius: var(--r); }
  html body.care-page .nw-opening-art > .nw-art--scene img { width: 100%; height: 100%; object-fit: cover; object-position: center 65%; }
}

/* Pricing: billing section reads top to bottom instead of a near-empty left column */
@media (min-width: 1121px) {
  html body.pricing-page .nw-split--faq:has(.nw-bill-flow) { display: block !important; }
  html body.pricing-page .nw-split--faq:has(.nw-bill-flow) > div:first-child { max-width: 720px; margin-bottom: 32px; }
  html body.pricing-page .nw-split--faq:has(.nw-bill-flow) > div:first-child .nw-lede { margin-top: 10px; }
}
/* Pricing: calculator totals sit right under their labels; panel hugs its content */
html body #care-pricing .nw-calc-results { align-self: start; }
html body #care-pricing .nw-calc-total { display: flex; flex-direction: column; gap: 4px; }
html body #care-pricing .nw-calc-total > span:last-child { margin: 0 !important; padding: 0 !important; }

/* Navigation: example chooser as one row of tabs, not a stacked column */
@media (min-width: 721px) {
  html body.navigation-page .split-head-tabs .nw-tablist { flex-direction: row !important; flex-wrap: wrap; gap: 8px; align-items: center; }
  html body.navigation-page .split-head-tabs .nw-tablist > :not(button) { flex: 1 0 100%; margin-bottom: 4px; }
}

/* Stacked steps: text sits right of the number so the connector line never crosses it */
@media (min-width: 721px) {
  html body ol.nw-steps.nw-steps--stack > .nw-step > :not(h3) { grid-column: 2 !important; }
  html body ol.nw-steps.nw-steps--stack > .nw-step { column-gap: 14px; }
}

/* Home: opening of the Care section with Naomi's photo on the right */
html body.home-page .home-company-intro.intro-v { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); grid-template-areas: "head photo" "copy photo"; grid-template-rows: auto 1fr; column-gap: 64px; row-gap: 28px; align-items: start; }
html body.home-page .home-company-intro .intro-v-left { grid-area: head; }
html body.home-page .home-company-intro .home-company-intro-copy { grid-area: copy; align-self: start !important; margin-top: 0 !important; }
html body.home-page .home-company-intro .intro-v-lead { max-width: 46ch; }
.home-intro-photo { grid-area: photo; margin: 0; align-self: stretch; display: flex; flex-direction: column; }
.home-intro-photo picture { display: block; flex: 1; min-height: 0; }
.home-intro-photo img { display: block; width: 100%; height: 100%; min-height: 420px; max-height: 560px; object-fit: cover; object-position: 50% 40%; border-radius: var(--r-lg); }
.home-intro-photo figcaption { margin-top: 10px; font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }
@media (max-width: 1120px) {
  html body.home-page .home-company-intro.intro-v { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "photo" "copy"; row-gap: 20px; }
  .home-intro-photo img { min-height: 0; max-height: none; height: auto; aspect-ratio: 4 / 3; }
}
/* Stacked steps on phones too */
@media (max-width: 720px) {
  html body ol.nw-steps.nw-steps--stack > .nw-step > :not(h3) { grid-column: 2 !important; }
  html body ol.nw-steps.nw-steps--stack > .nw-step { column-gap: 12px; }
}

/* Home: beige Childcare section holds white cards */
html body.home-page #services .home-service-body--care > .home-compare.mC--line { background: var(--white); }
@media (max-width: 720px) { html body.home-page #services .home-compare.mC--line .mC-table thead tr { background: var(--white); } }
html body.home-page #services .home-care-price-card { background: var(--white); border: 1px solid var(--rule); }

/* Regions: "How care starts" reads across in four columns on desktop */
@media (min-width: 1121px) {
  html body.region-page ol.nw-steps.nw-steps--stack { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 32px; border-top: 0; }
  html body.region-page ol.nw-steps.nw-steps--stack > .nw-step { display: grid; grid-template-columns: 36px minmax(0, 1fr); grid-template-rows: auto auto !important; align-content: start; align-items: start; column-gap: 12px; padding: 20px 0 0 !important; border: 0 !important; border-top: 2px solid var(--navy) !important; }
  html body.region-page ol.nw-steps.nw-steps--stack > .nw-step::after { display: none !important; }
  html body.region-page ol.nw-steps.nw-steps--stack > .nw-step > h3 { grid-column: 2; align-self: center; }
  html body.region-page ol.nw-steps.nw-steps--stack > .nw-step > :not(h3) { grid-column: 1 / -1 !important; grid-row: 2 !important; align-self: start !important; margin-top: 12px !important; }
  html body.region-page ol.nw-steps.nw-steps--stack + * { margin-top: 32px !important; }
}

/* Careers: training photos at a scannable height */
@media (min-width: 721px) {
  html body .careers-training .nw-photo img { height: 300px; aspect-ratio: auto; object-fit: cover; object-position: center 35%; }
}

/* ===== Polish (Oct 2026): Home opening 1a ===== */
.care-opening { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: 56px; row-gap: 40px; margin: 0 0 64px; }
.care-opening-text { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 22px; align-self: center; }
.care-opening-text .home-company-intro-title { margin: 0; font: 800 clamp(2rem, 3.6vw, 2.75rem)/1.06 var(--nw-display); letter-spacing: -0.035em; color: var(--navy); }
.care-opening-text .home-company-intro-title > span { display: block; }
.care-opening-lead { margin: 0; max-width: 34ch; font: 600 clamp(1.25rem, 1.9vw, 1.5rem)/1.4 var(--nw-display); letter-spacing: -0.01em; color: var(--navy); text-wrap: pretty; }
.care-opening-lead > span { color: var(--coral-ink); }
html body.home-page .care-opening .home-intro-photo { grid-area: auto; grid-column: 2; grid-row: 1; margin: 0; display: flex; flex-direction: column; gap: 8px; }
html body.home-page .care-opening .home-intro-photo img { display: block; width: 100%; height: 340px; min-height: 0; max-height: none; aspect-ratio: auto; object-fit: cover; object-position: 60% 40%; border-radius: var(--r-lg); }
html body.home-page .care-opening .home-intro-photo figcaption { margin: 0; font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }
.care-opening-cols { grid-column: 1 / -1; grid-row: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; padding-top: 24px; border-top: 1px solid var(--navy); }
.care-opening-cols > div { display: flex; flex-direction: column; gap: 8px; }
.care-opening-cols h3 { margin: 0; font: 700 var(--fs-body)/1.3 var(--nw-display); color: var(--navy); }
.care-opening-cols p { margin: 0; color: var(--slate); line-height: 1.6; }
@media (max-width: 1120px) {
  .care-opening { grid-template-columns: minmax(0, 1fr); row-gap: 24px; margin-bottom: 48px; }
  .care-opening > * { grid-column: 1 !important; grid-row: auto !important; }
  html body.home-page .care-opening .home-intro-photo img { height: auto; aspect-ratio: 4 / 3; }
  .care-opening-cols { grid-template-columns: minmax(0, 1fr); gap: 20px; padding-top: 20px; }
}
/* ===== Polish: An ordinary Thursday 2a ===== */
.day-intro { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 56px; align-items: start; margin: 0 0 40px; }
.day-intro h2 { margin: 0; }
.day-intro p { margin: 0; color: var(--slate); line-height: 1.6; padding-top: 6px; }
.thursday { --thu-bg: var(--white); --thu-ink: var(--navy); --thu-body: var(--navy); --thu-sub: var(--slate); --thu-rule: var(--rule); --thu-track: rgba(27, 42, 74, 0.07); background: var(--thu-bg); border: 1px solid var(--rule); border-radius: 28px; padding: 48px 56px 40px; display: flex; flex-direction: column; gap: 32px; transition: background-color .6s ease, border-color .6s ease; }
.thursday.is-ready[data-state="off"] { --thu-bg: var(--navy); --thu-ink: #fff; --thu-body: rgba(255, 255, 255, 0.84); --thu-sub: rgba(255, 255, 255, 0.72); --thu-rule: rgba(255, 255, 255, 0.16); --thu-track: rgba(255, 255, 255, 0.12); border-color: var(--navy); }
.thu-top { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px 40px; flex-wrap: wrap; }
.thu-head { display: flex; flex-direction: column; gap: 8px; }
.thu-head h3 { margin: 0; font: 800 clamp(2rem, 3.4vw, 3rem)/1 var(--nw-display); letter-spacing: -0.04em; color: var(--thu-ink); transition: color .5s; }
.thu-head p { margin: 0; color: var(--thu-sub); transition: color .5s; }
.thu-switch { display: grid; grid-template-columns: 1fr 1fr; padding: 5px; border-radius: var(--r-pill); background: var(--thu-track); min-width: min(420px, 100%); transition: background-color .5s; }
.thu-switch[hidden] { display: none; }
.thu-switch button { all: unset; box-sizing: border-box; cursor: pointer; min-height: 44px; display: flex; align-items: center; justify-content: center; text-align: center; padding: 10px 18px; border-radius: var(--r-pill); font: 700 var(--fs-body)/1.2 var(--nw-text); color: var(--thu-sub); transition: background-color .4s, color .4s; }
.thu-switch button[aria-pressed="true"] { background: var(--navy); color: #fff; }
.thursday[data-state="off"] .thu-switch button[aria-pressed="true"] { background: #fff; color: var(--navy); }
.thu-switch button:focus-visible { outline: 2px solid var(--coral); outline-offset: 2px; }
.thu-sky { position: relative; height: 140px; border-radius: 20px; overflow: hidden; background: linear-gradient(90deg, var(--coral-30) 0%, var(--paper) 30%, var(--periwinkle-20) 62%, var(--navy-deep-50) 92%); transition: filter .7s ease; }

.thu-sky { transition: filter .7s ease, opacity .7s ease; }
.thu-sky svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.thu-sky path { fill: none; stroke: rgba(27, 42, 74, 0.28); stroke-width: 1.5; stroke-dasharray: 3 7; vector-effect: non-scaling-stroke; }
.thu-sun { position: absolute; left: var(--x); top: var(--y); width: 32px; height: 32px; margin: -16px 0 0 -16px; background: var(--coral); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; transition: opacity .5s ease, transform .6s ease; }
.thu-sun--moon { background: var(--paper); }
.thursday.is-ready[data-state="off"] .thu-sun { opacity: 0; transform: translateY(14px) scale(.6); }
.thu-day { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.thu-moment { display: flex; flex-direction: column; gap: 10px; padding: 0 24px; min-width: 0; }
.thu-moment:first-child { padding-left: 0; }
.thu-moment:last-child { padding-right: 0; }
.thu-moment + .thu-moment { border-left: 1px solid var(--thu-rule); }
.thu-moment h4 { margin: 0; display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; font: 800 1.5rem/1.1 var(--nw-display); letter-spacing: -0.02em; color: var(--thu-ink); transition: color .5s; }
.thu-tag { font: 700 0.75rem/1.2 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--respite-ink); }
.thu-moment--nav .thu-tag { color: var(--navigation-ink); }
.thursday[data-state="off"] .thu-tag { color: var(--periwinkle); }
.thursday[data-state="off"] .thu-moment--nav .thu-tag { color: var(--sage-50); }
.thu-text { display: grid; }
.thu-text > p { margin: 0; color: var(--thu-body); line-height: 1.55; transition: opacity .45s ease, color .5s; }
.thu-label { display: block; margin-bottom: 4px; font: 700 var(--fs-label)/1.3 var(--nw-text); letter-spacing: 0.06em; text-transform: uppercase; color: var(--thu-sub); }
.thu-text > p + p { margin-top: 12px; }
.thursday.is-ready .thu-text > p { grid-area: 1 / 1; margin: 0; }
.thursday.is-ready .thu-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.thursday.is-ready[data-state="off"] .thu-on, .thursday.is-ready[data-state="on"] .thu-off { opacity: 0; visibility: hidden; }
.thu-foot { display: flex; justify-content: space-between; align-items: center; gap: 20px 32px; flex-wrap: wrap; padding-top: 8px; border-top: 1px solid var(--thu-rule); }
.thu-foot .thu-text { flex: 1 1 360px; }
.thu-foot-line { font: 600 1.125rem/1.4 var(--nw-display) !important; color: var(--thu-ink) !important; }
.thursday:not(.is-ready) .thu-foot .thu-off { display: none; }
@media (max-width: 1120px) {
  .day-intro { grid-template-columns: minmax(0, 1fr); row-gap: 14px; margin-bottom: 28px; }
  .thursday { padding: 32px 28px; gap: 24px; }
  .thu-day { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }
  .thu-moment:nth-child(odd) { padding-left: 0; border-left: 0; }
  .thu-moment:nth-child(even) { padding-right: 0; }
}
@media (max-width: 720px) {
  .thursday { padding: 26px 20px 24px; border-radius: 22px; gap: 20px; }
  .thu-switch { width: 100%; min-width: 0; }
  .thu-switch button { padding: 10px 8px; font-size: var(--fs-small); }
  .thu-sky { display: none; }
  .thu-day { display: flex; flex-direction: column; gap: 0; position: relative; padding-left: 26px; }
  .thu-day::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 8px; border-radius: 6px; background: linear-gradient(180deg, var(--coral), var(--coral-30) 30%, var(--periwinkle) 62%, var(--navy)); transition: filter .7s, opacity .7s; }
  .thursday.is-ready[data-state="off"] .thu-day::before { filter: grayscale(1); opacity: .25; }
  .thu-moment, .thu-moment:first-child, .thu-moment:last-child { padding: 0 0 20px; border-left: 0 !important; gap: 6px; }
  .thu-moment h4 { font-size: 1.1875rem; }
  .thu-text > p { font-size: var(--fs-small); }
  .thu-foot { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
  .thu-foot .thu-text { flex: none !important; }
  .thu-foot .btn { width: 100%; }
  .thu-foot .btn { justify-content: center; }
}
/* ===== Polish: sitewide ===== */
/* No coral left-bar quotes */
html body .mC-claim { padding-left: 0; border-left: 0; }
html body .region-note, html body .nw-doc-body .guide-note { border-left: 0; border-radius: var(--r); }
html body .nw-bio blockquote { border-left: 0; padding-left: 0; font-family: var(--nw-display); font-weight: 600; color: var(--navy); }
/* Program labels: small colored caps, no pill, no icon */
html body .region-programs .vx-prog-tag { display: block; padding: 0; border-radius: 0; background: none !important; font: 700 0.75rem/1.3 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; }
html body .region-programs .vx-prog-tag svg { display: none; }
html body .vx-prog-tag--dis { color: var(--slate); }
html body .vx-prog-tag--fs { color: var(--coral-ink); }
/* One card style for the Home cards */
html body.home-page #services .home-care-price-card { border-radius: var(--r-lg); }
/* Guides: template card spans the row */
html body .guide-hub-download { max-width: none; }
html body .region-programs > li > .vx-prog-tag { margin: 0 0 4px !important; align-self: end; }
html body .region-programs > li > h3 { align-self: start; margin-top: 0; }

/* ===== Comparison table rebuild (Oct 2026): navy header row, left-aligned columns, bolder marks ===== */
html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td) { background: var(--navy) !important; color: #fff !important; text-align: left !important; vertical-align: bottom; padding: 14px 12px !important; border: 0 !important; border-radius: 0 !important; font: 700 0.75rem/1.25 var(--nw-text) !important; letter-spacing: 0.06em !important; text-transform: uppercase !important; }
html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td):first-child { border-radius: 12px 0 0 12px !important; padding-left: 16px !important; }
html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td):last-child { border-radius: 0 12px 12px 0 !important; }
html body.home-page #services .home-compare.mC--line .mC-table thead th.us { color: #fff !important; font-size: 0.8125rem !important; font-weight: 800 !important; }
html body.home-page #services .home-compare.mC--line .mC-table tbody th { padding: 10px 12px 10px 16px !important; text-align: left; font: 600 0.9375rem/1.3 var(--nw-text) !important; color: var(--navy); border-top: 0 !important; border-bottom: 1px solid var(--rule) !important; }
html body.home-page #services .home-compare.mC--line .mC-table tbody td, html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child { padding: 10px 12px !important; text-align: left !important; background: none !important; border-radius: 0 !important; border-top: 0 !important; border-bottom: 1px solid var(--rule) !important; white-space: nowrap; }
html body.home-page #services .home-compare.mC--line .mC-table tbody tr:last-child :is(th, td) { border-bottom: 0 !important; }
html body.home-page #services .home-compare.mC--line .mC-table td .m-ic { display: inline-block; width: 18px !important; height: 18px !important; margin: 0 8px 0 0 !important; vertical-align: -4px; }
html body.home-page #services .home-compare.mC--line .mC-table td span { display: inline !important; margin: 0 !important; font: 600 0.875rem/1.3 var(--nw-text) !important; }
html body.home-page #services .home-compare.mC--line .mC-table .c-yes span { color: var(--navy) !important; opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .c-some span { color: var(--respite-ink) !important; opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .c-you span { color: var(--coral-ink) !important; opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .c-no span { color: var(--slate) !important; opacity: 1 !important; font-weight: 500 !important; }
html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child span { font-weight: 800 !important; color: var(--navy) !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--yes { opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--yes circle { fill: var(--navigation-deep) !important; stroke: none !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--yes path { fill: none !important; stroke: #fff !important; stroke-width: 2.2 !important; stroke-linecap: round; stroke-linejoin: round; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--some circle { fill: none !important; stroke: var(--respite-deep) !important; stroke-width: 2 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--some path { fill: var(--respite-deep) !important; stroke: none !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--you { opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--you circle { fill: none !important; stroke: var(--coral-ink) !important; stroke-width: 2 !important; stroke-dasharray: 3 2.6 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--no { opacity: 1 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--no circle { fill: none !important; stroke: var(--slate-light) !important; stroke-width: 1.6 !important; }
html body.home-page #services .home-compare.mC--line .mC-table .m-ic--no path { fill: none !important; stroke: var(--slate-light) !important; stroke-width: 2 !important; stroke-linecap: round; }
@media (max-width: 720px) {
  html body.home-page #services .home-compare.mC--line .mC-table thead tr { background: var(--navy) !important; border: 0 !important; border-radius: 10px; padding: 0 12px; margin-bottom: 4px; }
  html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td), html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td):first-child, html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td):last-child { padding: 10px 0 !important; border-radius: 0 !important; font-size: 0.75rem !important; background: none !important; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody tr { padding: 10px 12px !important; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody th { padding: 0 !important; border: 0 !important; font-size: 0.875rem !important; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody td, html body.home-page #services .home-compare.mC--line .mC-table tbody td:last-child { display: flex !important; align-items: center; gap: 6px; padding: 0 !important; border: 0 !important; white-space: normal; }
  html body.home-page #services .home-compare.mC--line .mC-table td .m-ic { width: 14px !important; height: 14px !important; margin: 0 !important; flex: none; vertical-align: 0; }
  html body.home-page #services .home-compare.mC--line .mC-table td span { font-size: 0.875rem !important; }
}

/* Home: "Childcare you can trust" is its own white section; Childcare Services follows on beige */
html body.home-page .home-opening .care-opening { margin-bottom: 0; }
html body.home-page #services { padding-top: clamp(56px, 7vw, 88px); }

/* ===== Final polish (Oct 2026) ===== */
/* Plan cards: one style on Pricing, Care (limited) and Home (mini); rows line up across cards */
@media (min-width: 721px) {
  html body .pr-plans { row-gap: 0 !important; align-items: stretch; }
  html body .pr-plans > .pr-plan { display: grid !important; grid-template-rows: subgrid; grid-row: span 6; align-content: start; }
  html body .pr-plans--preview > .pr-plan { grid-row: span 4; }
  html body .pr-plans--mini > .pr-plan { grid-row: span 2; }
  html body .pr-plans > .pr-plan > .pr-plan-facts { display: flex; flex-direction: column; justify-content: flex-start !important; align-content: start; gap: 0 !important; }
}
html body .pr-plans--preview { margin-top: 32px; }
html body .pr-plans--preview > .pr-plan > .nw-disclosure { margin-bottom: 10px; }
html body .pr-plans--mini { gap: 16px; }
html body .pr-plans--mini > .pr-plan > .pr-plan-price { padding-bottom: 20px; }
html body .pr-plans--mini .pr-plan-head { padding-top: 16px; }
html body .pr-plans--mini .pr-plan-rate { font-size: 2.25rem; }
/* Home: pricing row under the comparison card */
html body.home-page #services .home-service-footer { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 16px 24px; }
html body.home-page #services .home-care-pricing { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
html body.home-page #services .home-pricing-label { margin: 0; font: 700 var(--fs-label)/1.2 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; }
html body.home-page #services .home-pricing-label a { color: var(--navy); text-decoration: none; }
html body.home-page #services .home-pricing-label a:hover { color: var(--respite-ink); }
@media (max-width: 1120px) {
  html body.home-page #services .home-service-footer { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  html body .pr-plans--mini { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  html body .pr-plans--mini .pr-plan-head { padding: 12px 14px 10px; }
  html body .pr-plans--mini .pr-plan-head h3 { font-size: 1.0625rem; }
  html body .pr-plans--mini .pr-plan-head p { font-size: 0.75rem; }
  html body .pr-plans--mini .pr-plan-price { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 12px 14px 14px !important; }
  html body .pr-plans--mini .pr-plan-rate { font-size: 1.75rem; }
  html body .pr-plans--mini .pr-plan-fee { font-size: 0.8125rem; line-height: 1.35; margin: 0; }
}
/* Care: landscape photo opens the page under the hero */
.care-opening-photo { margin: 0 0 48px; display: flex; flex-direction: column; gap: 8px; }
.care-opening-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1088 / 495; object-fit: cover; border-radius: var(--r-lg); }
.care-opening-photo figcaption { font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }
@media (max-width: 720px) {
  .care-opening-photo { margin-bottom: 28px; }
  .care-opening-photo img { aspect-ratio: 4 / 3; border-radius: var(--r); }
}
/* No coral left bars anywhere */
html body .pull-line { border-left: 0 !important; padding-left: 0 !important; }
/* About: captioned photo */
html body .nw-art--photo.nw-photo { display: flex; flex-direction: column; gap: 8px; }
html body .nw-art--photo.nw-photo figcaption { margin: 0; font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }
html body.care-page .nw-care-pricing > * { grid-column: 1 / -1; }
html body.care-page .nw-care-pricing > .nw-supporting-note { margin-top: 16px; }
html body.home-page #services .home-service-footer > .home-service-actions { align-self: end !important; height: auto !important; }
html body.home-page #services .home-service-footer .home-service-button { height: auto !important; min-height: 52px; padding-block: 14px; }
html body .pr-plans--mini .pr-plan-price { display: flex !important; flex-direction: column; align-items: flex-start; gap: 2px; }
html body .pr-plans--mini .pr-plan-fee { margin: 0 !important; }

/* ===== Thursday: "all on you" state has its own picture (tasks piling up) ===== */
html body .thu-sky { background: rgba(255, 255, 255, 0.06); }
html body .thu-sky::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--coral-30) 0%, var(--paper) 30%, var(--periwinkle-20) 62%, var(--navy-deep-50) 92%); opacity: 1; transition: opacity .7s ease; }
html body .thursday.is-ready[data-state="off"] .thu-sky::before { opacity: 0; }
html body .thursday.is-ready[data-state="off"] .thu-sky path { stroke: rgba(255, 255, 255, 0.22); }
html body .thu-sky svg, html body .thu-sun { z-index: 1; }
.thu-pile { position: absolute; z-index: 1; left: var(--x); bottom: 16px; transform: translateX(-50%); display: flex; flex-direction: column-reverse; align-items: center; gap: 5px; transition: opacity .5s ease, transform .6s ease; }
.thu-pile i { display: block; width: 76px; height: 15px; border-radius: 5px; background: rgba(255, 255, 255, 0.2); }
.thu-pile i:nth-child(2) { transform: rotate(-3deg) translateX(4px); background: rgba(255, 255, 255, 0.28); }
.thu-pile i:nth-child(3) { transform: rotate(2.5deg) translateX(-5px); background: rgba(255, 255, 255, 0.36); }
.thu-pile i:nth-child(4) { transform: rotate(-4deg) translateX(6px); background: rgba(255, 255, 255, 0.44); }
.thu-pile i:last-child { background: var(--coral); }
.thursday:not(.is-ready) .thu-pile, .thursday.is-ready[data-state="on"] .thu-pile { opacity: 0; transform: translateX(-50%) translateY(24px); }

/* ===== Childcare page: service color (c1 accents, c2 photo blocks, c3 panel) ===== */
.care-page { --care-field: var(--respite-field); }
/* c1 */
html body.care-page .mt-bar button[aria-selected="true"] { background: var(--care-field) !important; color: #fff !important; }
html body.care-page .nw-step::before { background: var(--care-field) !important; color: #fff !important; }
html body.care-page .nw-step:last-child::before { background: var(--coral) !important; color: var(--navy) !important; }
html body.care-page .nw-support-topic .nw-support-topic-icon { color: var(--respite-deep); }
html body.care-page .nw-support-topic { border-top-color: var(--respite-deep-50) !important; }
html body.care-page .nw-pin-list li > .nw-pin { background: var(--navy) !important; color: #fff !important; }
/* c2: photos sit on an offset periwinkle block */
.care-opening-photo picture, .care-sensory-photo { position: relative; }
.care-opening-photo picture { display: block; }

.care-opening-photo img { position: relative; }
/* c3: one solid Childcare panel, with the sensory photo */
.care-panel { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px 56px; align-items: center; margin: 48px 0 0; padding: 40px 48px; border-radius: 24px; background: var(--respite-field); color: #fff; }
.care-panel-text { display: flex; flex-direction: column; gap: 14px; max-width: 46ch; }
.care-panel-text > p { margin: 0; font-size: var(--fs-body); line-height: 1.6; color: rgba(255, 255, 255, 0.9); }
.care-panel-text > .care-panel-title { font: 800 clamp(1.5rem, 2.4vw, 2rem)/1.12 var(--nw-display); letter-spacing: -0.03em; color: #fff; }
.care-sensory-photo { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.care-sensory-photo img { display: block; width: 100%; height: 240px; object-fit: cover; object-position: 50% 35%; border-radius: var(--r-lg); }
.care-sensory-photo figcaption { font: 400 var(--fs-label)/1.45 var(--nw-text); color: rgba(255, 255, 255, 0.85); }
@media (max-width: 720px) {
  .care-panel { grid-template-columns: minmax(0, 1fr); padding: 26px 22px; margin-top: 28px; border-radius: 20px; }
  .care-sensory-photo img { height: auto; aspect-ratio: 4 / 3; }
}
html body.care-page #care-child ~ * .split-head-row, html body.care-page .split-head:has(#care-child) .split-head-row { grid-template-columns: minmax(0, 1fr); }
html body.care-page .split-head:has(#care-child) .nw-lede { max-width: 64ch; }

/* ===== Service color pass (Oct 2026) ===== */
/* Home: price strips replace the mini plan cards; Explore button on its own line */
html body.home-page :is(#services, #services-navigation) .home-service-footer { display: flex !important; flex-direction: column; align-items: flex-start; gap: 20px; grid-template-columns: none !important; }
.home-price-strip { width: 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 40px; padding: 18px 28px; border-radius: 16px; background: var(--respite-field); color: #fff; }
.home-price-strip--navigation { background: var(--navigation-field); }
.home-price-strip > * { margin: 0; }
.home-price-label { font: 700 var(--fs-label)/1.2 var(--nw-text) !important; letter-spacing: 0.1em; text-transform: uppercase; color: var(--periwinkle) !important; }
.home-price-strip--navigation .home-price-label { color: var(--sage-50) !important; }
.home-price-item { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; font: 400 var(--fs-small)/1.4 var(--nw-text); color: rgba(255, 255, 255, 0.85); }
.home-price-item strong { font: 700 var(--fs-body)/1.3 var(--nw-display); color: #fff; }
.home-price-rate { font: 800 1.25rem/1.2 var(--nw-display); color: #fff; letter-spacing: -0.01em; }
.home-price-link { margin-left: auto !important; font: 700 var(--fs-small)/1.3 var(--nw-text); color: #fff; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.home-price-link:hover { color: var(--coral-30); }
@media (max-width: 720px) {
  .home-price-strip { flex-direction: column; align-items: flex-start; gap: 10px; padding: 18px 20px; }
  .home-price-link { margin-left: 0 !important; }
}
/* Home: Childcare 2x2 on a periwinkle field */
html body.home-page #services .home-care-points { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; background: var(--periwinkle-20); border-radius: 24px; padding: 8px 36px; }
html body.home-page #services .home-care-points > .home-care-specialty { display: contents !important; }
html body.home-page #services .home-care-points .home-service-summary { grid-area: auto !important; margin: 0 !important; padding: 24px 0 !important; border: 0 !important; }
html body.home-page #services .home-care-points .home-service-summary:nth-of-type(odd), html body.home-page #services .home-care-points > .home-care-life { padding-right: 32px !important; }
html body.home-page #services .home-care-points > .home-care-support, html body.home-page #services .home-care-points > .home-care-specialty > section + section { padding-left: 32px !important; border-left: 1px solid var(--respite-deep-30) !important; }
html body.home-page #services .home-care-points > .home-care-specialty > section { border-top: 1px solid var(--respite-deep-30) !important; }
html body.home-page #services .home-care-points .home-service-summary h4 { display: flex; align-items: center; gap: 8px; color: var(--navy); }
html body.home-page #services .home-care-points .home-service-summary h4::before { content: ""; flex: none; width: 13px; height: 13px; background: var(--respite-deep); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
html body.home-page #services .home-service-body--care > .home-compare.mC--line { margin-top: 28px; }
html body.home-page #services .home-service-body--care > .home-service-footer { margin-top: 24px; }
@media (max-width: 720px) {
  html body.home-page #services .home-care-points { grid-template-columns: minmax(0, 1fr); padding: 4px 20px; border-radius: 20px; }
  html body.home-page #services .home-care-points .home-service-summary { padding: 18px 0 !important; border-left: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
  html body.home-page #services .home-care-points .home-service-summary + .home-service-summary, html body.home-page #services .home-care-points > .home-care-specialty > section { border-top: 1px solid var(--respite-deep-30) !important; }
}
/* Home: Navigation lists on a sage field */
html body.home-page #services-navigation .home-navigation-scope { background: var(--sage-20); border-radius: 20px; padding: 24px 28px; align-self: start; }
html body.home-page #services-navigation .home-navigation-scope h4 { color: var(--navigation-ink); }
html body.home-page #services-navigation .home-navigation-scope ul { list-style: none; padding-left: 0; }
html body.home-page #services-navigation .home-navigation-scope li { display: flex; gap: 10px; align-items: baseline; color: var(--navy); }
html body.home-page #services-navigation .home-navigation-scope li::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 2px; background: var(--navigation-deep); transform: rotate(45deg) translateY(-1px); }
@media (max-width: 720px) {
  html body.home-page #services .home-service-body--care.home-service-body--refined { padding: 22px 18px 24px; border-radius: 20px; }
  html body.home-page #services-navigation .home-navigation-scope { padding: 18px 20px; }
}
/* Providers: photo beside the section heading */
.pv-head-photo { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 28px 56px; align-items: center; margin-bottom: 40px; }
.pv-head-photo > .nw-head { margin: 0 !important; }
.pv-photo { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.pv-photo img { display: block; aspect-ratio: 16 / 10; height: auto; object-fit: cover; border-radius: var(--r-lg); }
.pv-photo figcaption { font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }
@media (max-width: 1120px) { .pv-head-photo { grid-template-columns: minmax(0, 1fr); margin-bottom: 28px; } }
/* Navigation page: sage accents and one solid sage panel */
html body.navigation-page .nw-step::before { background: var(--navigation-field) !important; color: #fff !important; }
html body.navigation-page .nw-step:last-child::before { background: var(--coral) !important; color: var(--navy) !important; }
html body.navigation-page .nw-tablist [role="tab"][aria-selected="true"] { background: var(--navigation-field) !important; color: #fff !important; border-color: var(--navigation-field) !important; }
html body.navigation-page .nw-list li::marker { color: var(--navigation-deep); }
html body.navigation-page #navigation-begins .nw-quote-row { background: var(--navigation-field); border-radius: 24px; padding: 40px 48px; color: #fff; }
html body.navigation-page #navigation-begins .nw-quote-row :is(.nw-heading, p, .nw-lede) { color: #fff !important; }
html body.navigation-page #navigation-begins .nw-quote-row p:not(.nw-lede) { color: rgba(255, 255, 255, 0.88) !important; }
html body.navigation-page #navigation-begins .nw-quote-row a { color: #fff !important; text-decoration-color: var(--coral) !important; }
@media (max-width: 720px) { html body.navigation-page #navigation-begins .nw-quote-row { padding: 26px 22px; border-radius: 20px; } }
/* Providers, Careers, About: coral accents */
html body:is(.providers-page, .careers-page, .about-page) .nw-step::before { background: var(--coral) !important; color: var(--navy) !important; }
/* Mobile: long centered paragraphs read as a centered block with left-aligned lines (titles stay centered) */
@media (max-width: 720px) {

  html body .hero-lede > span { display: block; text-align: left !important; }
}

html body.home-page .home-price-strip { display: grid; grid-template-columns: auto repeat(var(--n, 2), max-content) minmax(0, 1fr) auto; align-items: center; gap: 12px 48px; }
html body.home-page .home-price-strip > * { margin: 0 !important; }
html body.home-page .home-price-link { grid-column: -2; }
html body.home-page .home-price-strip--navigation { --n: 1; }
html body.home-page .home-price-item { display: grid; gap: 2px; }
html body.home-page .home-price-item > span { color: rgba(255, 255, 255, 0.82) !important; font: 400 var(--fs-small)/1.4 var(--nw-text) !important; }
html body.home-page .home-price-item > strong { display: flex; align-items: baseline; gap: 10px; }
html body.home-page .home-price-item .home-price-rate { font: 800 1.25rem/1.2 var(--nw-display) !important; color: #fff !important; }
html body.home-page :is(#services, #services-navigation) .home-service-footer > .home-service-actions { align-self: flex-start !important; margin: 0 !important; justify-content: flex-start !important; width: auto !important; }
@media (max-width: 720px) {
  html body.home-page .home-price-strip { grid-template-columns: minmax(0, 1fr); }
}
html body.navigation-page #navigation-begins .nw-pricebox { background: rgba(255, 255, 255, 0.12) !important; border: 1px solid rgba(255, 255, 255, 0.22) !important; box-shadow: none !important; }
html body.navigation-page #navigation-begins .nw-pricebox * { color: #fff !important; }
html body.navigation-page #navigation-begins .nw-pricebox p:not(:first-child):not(:nth-child(2)) { color: rgba(255, 255, 255, 0.88) !important; }
html body.navigation-page #navigation-begins .nw-pricebox > :first-child { color: var(--sage-50) !important; letter-spacing: 0.1em; text-transform: uppercase; font-size: var(--fs-label); font-weight: 700; }
@media (max-width: 720px) {
  html body.home-page #services .home-care-points > .home-care-support, html body.home-page #services .home-care-points > .home-care-specialty > section + section { padding-left: 0 !important; border-left: 0 !important; }
  html body.home-page #services .home-care-points .home-service-summary:nth-of-type(odd), html body.home-page #services .home-care-points > .home-care-life { padding-right: 0 !important; }
}

/* ===== Home hero, bolder (Oct 2026): one left-aligned column, ~1.5x type, taller ===== */
html body.home-page .home-hero-secondary::before { display: none !important; }
@media (min-width: 721px) {
  html body.home-page .hero--home .hero-copy { display: flex !important; flex-direction: column; align-items: flex-start !important; justify-content: flex-start !important; gap: 28px; max-width: 980px; padding-top: 0 !important; text-align: left !important; }
  html body.home-page .hero--home :is(.home-hero-primary, .home-hero-secondary) { width: 100%; text-align: left !important; align-items: flex-start !important; justify-items: start !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
  html body.home-page .hero--home .hero-audience { font-size: clamp(1.25rem, 1.9vw, 1.5rem) !important; margin: 0 0 18px !important; text-align: left !important; }
  html body.home-page .hero--home h1 { font-size: clamp(3.25rem, 5.7vw, 4.75rem) !important; line-height: 1.02 !important; letter-spacing: -0.045em !important; text-align: left !important; margin: 0 !important; }
  html body.home-page .hero--home h1 .hero-line { display: block; }
  html body.home-page .hero--home .family-underline::after { top: auto !important; bottom: -0.08em; height: 0.16em !important; }
  html body.home-page .hero--home .home-service-area { font-size: 1.125rem !important; margin-top: 22px !important; justify-content: flex-start !important; }
  html body.home-page .hero--home .home-service-area svg { width: 22px; height: 22px; }
  html body.home-page .hero--home .hero-lede { font-size: clamp(1.25rem, 1.75vw, 1.5rem) !important; line-height: 1.5 !important; max-width: 44ch !important; text-align: left !important; margin: 0 !important; }
  html body.home-page .hero--home .hero-lede > span { text-align: left !important; }
  html body.home-page .hero--home .btn-row { justify-content: flex-start !important; margin-top: 26px !important; }
  html body.home-page .hero--home .btn-row .btn { font-size: 1.1875rem; padding: 18px 30px; min-height: 60px; }
  html body.home-page .hero--home .hero-grid { padding-top: clamp(48px, 5vw, 72px) !important; padding-bottom: clamp(48px, 5vw, 80px) !important; }
  html body.home-page .hero--home .hero-audience { max-width: none !important; white-space: nowrap; }
}
@media (max-width: 720px) {
  html body.home-page .hero--home h1 { font-size: clamp(1.875rem, 8.6vw, 2.25rem) !important; line-height: 1.06 !important; }
  html body.home-page .hero--home h1 .hero-line { display: block; text-wrap: balance; }
  html body.home-page .hero--home .hero-audience { font-size: 1.0625rem !important; }
  html body.home-page .hero--home .hero-lede { font-size: 1.125rem !important; }
}

/* Childcare panel: full-width photo with a periwinkle fade behind the text */
html body .care-panel--photo { position: relative; display: flex !important; align-items: center; min-height: 380px; padding: 48px 56px !important; overflow: hidden; isolation: isolate; }
html body .care-panel--photo .care-panel-bg { position: absolute; inset: 0; z-index: -2; }
html body .care-panel--photo .care-panel-bg img { display: block; width: 100% !important; height: 100%; object-fit: cover; object-position: 70% 40%; margin: 0 !important; box-shadow: none !important; border-radius: 0; }
html body .care-panel--photo .care-panel-fade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--respite-field) 0%, var(--respite-field) 34%, color-mix(in srgb, var(--respite-field) 70%, transparent) 52%, transparent 74%); }
html body .care-panel--photo .care-panel-text { max-width: 30ch; }
@media (max-width: 720px) {
  html body .care-panel--photo { flex-direction: column; justify-content: flex-end; min-height: 460px; padding: 24px 22px 26px !important; }
  html body .care-panel--photo .care-panel-bg img { object-position: 50% 20%; }
  html body .care-panel--photo .care-panel-fade { background: linear-gradient(180deg, transparent 0%, transparent 30%, color-mix(in srgb, var(--respite-field) 80%, transparent) 52%, var(--respite-field) 68%); }
  html body .care-panel--photo .care-panel-text { max-width: none; }
}
/* Navigation: price box inside the sage panel is white */
html body.navigation-page #navigation-begins .nw-pricebox { background: #fff !important; border: 0 !important; }
html body.navigation-page #navigation-begins .nw-pricebox * { color: var(--navy) !important; }
html body.navigation-page #navigation-begins .nw-pricebox p:not(:first-child):not(:nth-child(2)) { color: var(--slate) !important; }
html body.navigation-page #navigation-begins .nw-pricebox > :first-child { color: var(--navigation-ink) !important; }
html body.navigation-page #navigation-begins .nw-pricebox a { color: var(--navigation-ink) !important; text-decoration-color: var(--coral) !important; }

html body.navigation-page #navigation-begins .nw-quote-row .nw-pricebox p.nw-pricebox-label { color: var(--navigation-ink) !important; }
html body.navigation-page #navigation-begins .nw-quote-row .nw-pricebox p.nw-price-rate { color: var(--navy) !important; }
html body .care-panel--photo .care-panel-fade { background: linear-gradient(90deg, var(--respite-field) 0%, var(--respite-field) 30%, color-mix(in srgb, var(--respite-field) 55%, transparent) 46%, transparent 62%) !important; }
@media (max-width: 720px) { html body .care-panel--photo .care-panel-fade { background: linear-gradient(180deg, transparent 0%, transparent 34%, color-mix(in srgb, var(--respite-field) 80%, transparent) 54%, var(--respite-field) 70%) !important; } }
/* Home hero order: audience, H1, lede, location, button; skyline tucks up under the text */
@media (min-width: 721px) {
  html body.home-page .hero--home :is(.home-hero-primary, .home-hero-secondary) { display: contents !important; }
  html body.home-page .hero--home .hero-copy { gap: 0 !important; }
  html body.home-page .hero--home .hero-audience { order: 1; margin: 0 0 18px !important; }
  html body.home-page .hero--home h1 { order: 2; }
  html body.home-page .hero--home .hero-lede { order: 3; margin: 30px 0 0 !important; }
  html body.home-page .hero--home .home-service-area { order: 4; margin: 22px 0 0 !important; }
  html body.home-page .hero--home .btn-row { order: 5; margin: 28px 0 0 !important; }
  html body.home-page .hero--home .hero-grid { padding-bottom: 0 !important; }
  html body.home-page .hero--home .hero-skyline { margin-top: -150px !important; position: relative; z-index: 1; }
  html body.home-page .hero--home .hero-grid { position: relative; z-index: 2; }
}

/* ===== Mobile reading rule (Oct 2026): body copy left-aligned; only short headlines, labels and buttons stay centered ===== */
@media (max-width: 720px) {
  html body :is(main, .cta, footer) :is(p, li, dd, blockquote, figcaption) { text-align: left !important; }
  html body :is(.hero, .nw-hero-compact, .cta) :is(.page-lede, .hero-lede, .cta-inner p) { width: auto !important; max-width: none !important; margin-inline: 0 !important; }
  html body .hero-lede > span { text-align: left !important; }
  html body :is(main, .cta, footer) :is([class*="label"], [class*="eyebrow"], [class*="kicker"], [class*="audience"], .home-service-area, .btn-row, .cta-action, .cta-action p, .thu-tag, .svc-label-name) { text-align: center !important; }
  html body.home-page .hero--home .btn-row { display: flex !important; justify-content: center !important; width: 100%; }
  html body :is(main, .cta, footer) :is([class*="label"], [class*="eyebrow"], [class*="audience"]):is(dt, span) { text-align: inherit !important; }
}

/* Home hero H1 on phones: exactly three lines ("Flexible in-home childcare." is the longest) */
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-copy { container-type: inline-size; }
  html body.home-page .hero--home h1 { font-size: min(2.125rem, calc(100cqw / 12.8)) !important; line-height: 1.12 !important; letter-spacing: -0.035em !important; }
  html body.home-page .hero--home h1 .hero-line { display: block !important; text-wrap: nowrap !important; white-space: nowrap !important; text-wrap-mode: nowrap !important; }
}

/* Mobile: short headings stay on one line */
@media (max-width: 720px) {
  html body.home-page #services-navigation .home-navigation-scope { padding: 18px 20px !important; }
  html body.home-page #services-navigation .home-navigation-scope h4 { white-space: nowrap; }
  html body.home-page .home-price-strip .home-price-label { text-align: left !important; }
  html body.home-page .thu-head h3 { font-size: 1.75rem !important; }
  html body.home-page #services .home-care-points .home-service-summary h4,
  html body.care-page .nw-support-topic > h3,
  html body .pv-coord-list h4 { font-size: 1rem !important; letter-spacing: -0.01em; }
  html body .pv-coord-list h4 { font-size: 0.9375rem !important; }
  html body.home-page #services .home-care-points .home-service-summary h4 { font-size: 0.9375rem !important; gap: 6px; }
  html body.home-page #services .home-care-points .home-service-summary h4 .mc-btn { white-space: nowrap; }
}

/* Desktop hero: CTA button centered on the location strip's center axis */
@media (min-width: 721px) {
  html body.home-page .hero--home .home-service-area { width: fit-content !important; }
  html body.home-page .hero--home .btn-row { width: var(--loc-w, 400px) !important; justify-content: center !important; }
}

/* Childcare panel v2: whole child visible on the right, color fades into the photo's left edge */
html body .care-panel--photo { min-height: 440px; }
html body .care-panel--photo .care-panel-bg { left: auto !important; right: 0; width: 48%; }
html body .care-panel--photo .care-panel-bg img { object-position: 50% 55% !important; }
html body .care-panel--photo .care-panel-fade { background: linear-gradient(90deg, var(--respite-field) 0%, var(--respite-field) 52%, color-mix(in srgb, var(--respite-field) 60%, transparent) 60%, transparent 72%) !important; }
html body .care-panel--photo .care-panel-text { max-width: min(30ch, 46%); }
@media (max-width: 720px) {
  html body .care-panel--photo { display: flex !important; flex-direction: column; justify-content: flex-start; min-height: 0; padding: 0 0 24px !important; }
  html body .care-panel--photo .care-panel-bg { position: relative; inset: auto; width: 100%; z-index: 0; }
  html body .care-panel--photo .care-panel-bg img { height: auto; aspect-ratio: 720 / 687; object-position: 50% 50% !important; }
  html body .care-panel--photo .care-panel-fade { display: none; }
  html body .care-panel--photo .care-panel-text { max-width: none; padding: 22px 22px 0; }
}

/* Childcare panel v3: no fade; photo shown as-is on the right half */
html body .care-panel--photo .care-panel-fade { display: none !important; }
html body .care-panel--photo .care-panel-bg { width: 52% !important; }
html body .care-panel--photo .care-panel-text { max-width: min(32ch, 42%) !important; }
@media (max-width: 720px) { html body .care-panel--photo .care-panel-bg { width: 100% !important; } html body .care-panel--photo .care-panel-text { max-width: none !important; } }

/* Care: "How we prepare for care" with fewer rules */
html body.care-page #family-care-plan .nw-training-observation { border-top: 0 !important; border-bottom: 0 !important; padding-block: 8px 0 !important; }
html body.care-page #family-care-plan ol.nw-steps { border-top: 0 !important; }
html body.care-page #family-care-plan ol.nw-steps > .nw-step { border-top: 0 !important; }
html body.care-page #family-care-plan .nw-plan-detail { border-top: 0 !important; }
html body.care-page #family-care-plan .nw-plan-sheet li { border-top: 0 !important; padding-block: 6px !important; }
html body.care-page #family-care-plan .nw-plan-sheet li svg, html body.care-page #family-care-plan .nw-plan-sheet li::before { color: var(--respite-deep) !important; }

/* Navigation: real photo beside "Start with the part you want help with." */
html body.navigation-page .nav-start-photo { margin: 0; display: flex; flex-direction: column; gap: 8px; align-self: center; }
html body.navigation-page .nav-start-photo img { display: block; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-lg); }
html body.navigation-page .nav-start-photo figcaption { font: 400 var(--fs-label)/1.45 var(--nw-text); color: var(--slate); }

/* Captions sit 8px under their photo everywhere */
html body main figure:has(> img, > picture, > a) > figcaption { margin-top: 0 !important; }

/* ===== Home hero fits the viewport (Oct 2026, v2) =====
   Type scale (desktop): H1 max 64px, audience/lede max 20px, location 16px, button 17px.
   Every size and gap scales with min(vw, svh) so short laptop screens shrink the hero instead of cutting it off.
   Skyline: capped at 44svh, anchored to its bottom; it overlaps the text only by (visible height - 45% of its
   natural height - 28px), so the bridge always sits below the button and the trust badges are never cropped. */
@media (min-width: 721px) {
  html body.home-page .hero--home h1 { font-size: clamp(2.125rem, min(4.4vw, 6.4svh), 4rem) !important; line-height: 1.03 !important; }
  html body.home-page .hero--home .hero-audience { font-size: clamp(0.9375rem, min(1.4vw, 2.1svh), 1.25rem) !important; margin: 0 0 min(16px, 1.7svh) !important; }
  html body.home-page .hero--home .hero-lede { font-size: clamp(0.9375rem, min(1.35vw, 2.1svh), 1.25rem) !important; line-height: 1.5 !important; max-width: 46ch !important; margin: min(26px, 2.8svh) 0 0 !important; }
  html body.home-page .hero--home .home-service-area { font-size: clamp(0.875rem, 1.7svh, 1rem) !important; margin: min(18px, 2svh) 0 0 !important; }
  html body.home-page .hero--home .home-service-area svg { width: 1.2em; height: 1.2em; }
  html body.home-page .hero--home .btn-row { margin: min(24px, 2.6svh) 0 0 !important; }
  html body.home-page .hero--home .btn-row .btn { font-size: clamp(0.9375rem, 1.8svh, 1.0625rem) !important; padding: min(15px, 1.6svh) 26px !important; min-height: clamp(44px, 5.6svh, 52px) !important; }
  html body.home-page .hero--home .hero-grid { padding-top: clamp(20px, 4.5svh, 64px) !important; }
  html body.home-page .hero--home .hero-skyline { --sky-r: 0.2647; --sky-nat: calc(100vw * var(--sky-r)); --sky-h: var(--sky-nat); height: var(--sky-h); overflow: hidden; margin-top: calc(-1 * max(0px, var(--sky-h) - 0.45 * var(--sky-nat) - 28px)) !important; }
  html body.home-page .hero--home .hero-skyline > picture { display: block; height: 100%; }
  html body.home-page .hero--home .hero-skyline > picture > img { width: 100% !important; height: 100% !important; max-width: none; margin-left: 0 !important; object-fit: cover; object-position: 50% 100%; }
}
@media (min-width: 1121px) {
  html body.home-page .hero--home .hero-skyline { --sky-r: 0.2371; }
  html body.home-page .hero--home .hero-skyline .trust-strip--overlay { height: calc(var(--sky-nat) * 0.278) !important; }
}
/* Trust badges keep their own proportions (they sit inside the skyline) */
html body.home-page .hero--home .trust-badge img { width: auto !important; height: auto !important; max-width: 100%; object-fit: contain !important; }

@media (min-width: 721px) {
  html body.home-page .hero--home .hero-copy > * > .hero-audience { order: 1 !important; }
  html body.home-page .hero--home .hero-copy > * > h1 { order: 2 !important; }
  html body.home-page .hero--home .hero-copy > * > .hero-lede { order: 3 !important; }
  html body.home-page .hero--home .hero-copy > * > .home-service-area { order: 4 !important; }
  html body.home-page .hero--home .hero-copy > * > .btn-row { order: 5 !important; }
  html body.home-page .hero--home .hero-copy { padding-bottom: 0 !important; }
}

@media (min-width: 721px) {
  html body.home-page .hero--home .btn-row { min-width: max-content; }
  html body.home-page .hero--home .btn-row .btn { white-space: nowrap; }
}

/* ===== Visual review build (Oct 2026) ===== */
/* Rhythm: deeper beige; service tints on a few sections of the Childcare, Navigation and Pricing pages */
:root { --paper-deep: #f6ece6; }
html body main > section.tone-paper { background-color: var(--paper-deep) !important; }
html body main > section.tone-care { background-color: var(--periwinkle-20) !important; }
html body main > section.tone-nav { background-color: var(--sage-20) !important; }
html body main > section:is(.tone-care, .tone-nav) .nw-disclosure, html body main > section:is(.tone-care, .tone-nav) .pr-plan { background-color: #fff; }
/* Type scale */
html body main :is(.nw-lede, .mC-lede, .split-head-row > p:not(.pull-line), .day-intro > p) { font-size: 1.25rem !important; line-height: 1.5 !important; color: var(--navy) !important; }
html body main :is(.nw-subhead, .nw-col-title, .nw-training-observation h3) { font-size: 1.375rem !important; line-height: 1.25 !important; letter-spacing: -0.015em; }
html body :is(.hero--interior, .nw-hero-compact) h1 { font-size: clamp(2.375rem, 4vw, 3.25rem) !important; line-height: 1.05 !important; }
html body main figcaption { font-size: 0.875rem !important; line-height: 1.45 !important; }
html body main figcaption strong { font-weight: 600; color: var(--navy); }
html body main .care-panel figcaption strong { color: #fff; }
@media (max-width: 720px) {
  html body main :is(.nw-lede, .mC-lede, .split-head-row > p:not(.pull-line), .day-intro > p) { font-size: 1.125rem !important; }
  html body main :is(.nw-subhead, .nw-col-title, .nw-training-observation h3) { font-size: 1.25rem !important; }
  html body main :is(h2.nw-heading, h2.svc-label-title), html body.home-page main h2:not([class]) { font-size: 1.875rem !important; line-height: 1.1 !important; }
}
/* Emphasis: italic voices, one link style */
html body main .pv-situation h3, html body.home-page .specialists-panel .specialist-voice.quote-treatment { font-family: var(--nw-text) !important; font-style: italic !important; font-weight: 400 !important; letter-spacing: 0 !important; color: var(--navy) !important; }
html body main .pv-situation h3 { font-size: 1.25rem !important; line-height: 1.4 !important; }
html body.home-page .specialists-panel .specialist-voice.quote-treatment { font-size: 1.0625rem !important; line-height: 1.55 !important; }
html body main :is(p, li, dd) a:not(.btn):not(.alink):not(.home-price-link) { color: var(--navy); font-weight: 600; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; }
html body main :is(p, li, dd) a:not(.btn):not(.alink):not(.home-price-link):hover { color: var(--coral-ink); }
html body main .care-panel a, html body.navigation-page #navigation-begins .nw-quote-row a { color: #fff !important; }
/* Wayfinding: "On this page" row */
.page-toc { background: #fff; border-bottom: 1px solid var(--rule); }
.page-toc-inner { display: flex; align-items: center; gap: 6px 22px; flex-wrap: wrap; padding-block: 14px; }
.page-toc-label { flex: none; white-space: nowrap; font: 700 var(--fs-label)/1.2 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--slate); margin-right: 4px; }
.page-toc a { flex: none; white-space: nowrap; font: 600 var(--fs-small)/1.3 var(--nw-text); color: var(--navy); text-decoration: none; padding: 6px 0; border-bottom: 2px solid transparent; }
.page-toc a:hover { border-bottom-color: var(--coral); }
.care-page .page-toc a:hover { border-bottom-color: var(--respite-deep); }
html body main :is(section[id], div[id], h2[id], h3[id]) { scroll-margin-top: calc(var(--header-height, 74px) + 20px); }
@media (max-width: 720px) {
  .page-toc-inner { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; gap: 18px; padding-block: 10px; }
  .page-toc-inner::-webkit-scrollbar { display: none; }
  .page-toc a { white-space: nowrap; min-height: 44px; display: inline-flex; align-items: center; }
  .page-toc-label { white-space: nowrap; }
}
/* Pricing: calculator in its own section, folded on phones; service-colored plan heads */
html body .pr-calc-fold > summary { display: none; }
@media (max-width: 720px) {
  html body .pr-calc-fold > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; padding: 14px 20px; border-radius: 14px; background: var(--respite-field); color: #fff; font: 700 1.0625rem/1.3 var(--nw-display); cursor: pointer; list-style: none; }
  html body .pr-calc-fold > summary::-webkit-details-marker { display: none; }
  html body .pr-calc-fold > summary::after { content: "+"; font: 400 1.5rem/1 var(--nw-text); }
  html body .pr-calc-fold[open] > summary { margin-bottom: 18px; }
  html body .pr-calc-fold[open] > summary::after { content: "−"; }
}
html body .pr-calc-section .pr-step { margin-top: 0 !important; }
html body .pr-plan-head { background: var(--periwinkle-20); }
html body main .pr-plans > .pr-plan.pr-plan--flex > .pr-plan-head, html body main .pr-plans > .pr-plan > .pr-plan-head { background: var(--periwinkle-20) !important; }
html body .pr-plan-head h3 { color: var(--respite-ink) !important; }
/* Regions: programs as separate cards with a service-color label */
html body.region-page .region-programs { gap: 16px !important; }
html body.region-page .region-programs > li { background: #fff; border: 1px solid var(--rule) !important; border-radius: 16px; padding: 20px 22px !important; }
html body .region-programs .vx-prog-tag--rs { color: var(--respite-ink) !important; }
html body .region-programs :is(.vx-prog-tag--ei, .vx-prog-tag--dis, .vx-prog-tag--fs) { color: var(--navigation-ink) !important; }
/* Contact: "What happens next" above the form on phones */
@media (max-width: 720px) {
  html body .nw-contact { display: flex !important; flex-direction: column; gap: 28px; }
  html body .nw-contact > .nw-contact-intro { order: 1; }
  html body .nw-contact > .nw-aside { order: 2; margin: 0 !important; }
  html body .nw-contact > .nw-formcard { order: 3; }
}
/* Home: larger Care Specialist portraits */
html body.home-page .specialists-panel .person-identity { grid-template-columns: 128px minmax(0, 1fr) !important; gap: 18px !important; align-items: center; }
html body.home-page .specialists-panel .person-identity .person-photo { width: 128px !important; height: 128px !important; }
html body.home-page .specialists-panel .person-identity .person-photo img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 720px) {
  html body.home-page .specialists-panel .person-identity { grid-template-columns: 120px minmax(0, 1fr) !important; }
  html body.home-page .specialists-panel .person-identity .person-photo { width: 120px !important; height: 120px !important; }
}
/* Home: "What comes with every visit" on a white card with numbered markers */
html body.home-page .home-support-grid { background: #fff; border-radius: 24px; padding: 32px 36px; counter-reset: sup; }
html body.home-page .home-support-item { counter-increment: sup; padding-left: 0 !important; border-top: 0 !important; padding-top: 0 !important; }
html body.home-page .home-support-grid { row-gap: 28px !important; }
html body.home-page .home-support-item > svg { display: none !important; }
html body.home-page .home-support-item > h3 { display: flex; align-items: center; gap: 12px; }
html body.home-page .home-support-item > h3::before { content: counter(sup); flex: none; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--respite-field); color: #fff; font: 800 0.875rem/1 var(--nw-display); }
@media (max-width: 720px) { html body.home-page .home-support-grid { padding: 22px 20px; border-radius: 20px; } }
@media (min-width: 721px) { html body main .alink { text-wrap: nowrap; white-space: nowrap; } }
@media (max-width: 720px) { html body main > section.pr-calc-section { padding-block: 28px !important; } }

/* Reading measure (Oct 2026): no paragraph runs the full 1160px */
@media (min-width: 721px) {
  html body main :is(p.nw-kicker, p.pr-intake-benefit, p.pv-sequence-note, p.nw-body-text) { max-width: 68ch; }
}

/* ===== All-white backgrounds (Oct 2026) =====
   Every section is white except a few deliberate periwinkle (tone-care) or sage (tone-nav) sections, which always sit between white ones.
   Adjacent white sections are separated by a thin full-width rule. */
html body main > section:is(.tone-paper, .tone-white):not(.tone-care):not(.tone-nav) { background-color: #fff !important; }
html body main > section:is(.tone-white, .tone-paper):not(.tone-care):not(.tone-nav) + section:is(.tone-white, .tone-paper):not(.tone-care):not(.tone-nav):not(#care-specialists) { border-top: 1px solid var(--rule); }
html body main > section.tone-care { background-color: var(--periwinkle-20) !important; border-top: 0 !important; }
html body main > section.tone-nav { background-color: var(--sage-20) !important; border-top: 0 !important; }
html body.home-page .home-support-grid, html body.home-page #services .home-service-body--care > .home-compare.mC--line { border: 1px solid var(--rule) !important; }

/* ===== Cards on white (Oct 2026) =====
   White cards get a 1px rule, a soft lift and a 4px top edge in their service color:
   periwinkle-deep = Childcare, sage-deep = Navigation, coral = shared/company. Tinted panels and solid navy/color panels are unchanged. */
:root { --card-lift: 0 1px 2px rgba(27, 42, 74, 0.05), 0 10px 28px -14px rgba(27, 42, 74, 0.18); }
html body main :is(
  .home-compare.mC--line, .home-support-grid, .specialists-panel .person,
  .pr-plan, .pr-intake, .nw-calc, .nw-plan-sheet, .pv-service--care,
  .nw-sample, .nw-navigation-quote, .pr-nav-examples > li, .pv-service--nav,
  .guide-card, .nw-person, .pv-audience, .pv-coord, .nw-formcard, .region-programs > li
) {
  background-color: #fff;
  border: 1px solid var(--rule) !important;
  border-top: 4px solid var(--card-accent) !important;
  box-shadow: var(--card-lift) !important;
}
:where(html body main) :where(.guide-card, .nw-person, .pv-audience, .pv-coord, .nw-formcard, .region-programs > li, .home-compare, .home-support-grid, .person, .pr-plan, .pr-intake, .nw-calc, .nw-plan-sheet, .pv-service, .nw-sample, .nw-navigation-quote, .pr-nav-examples > li) { --card-accent: var(--coral); }
html body main :is(.home-compare.mC--line, .home-support-grid, .specialists-panel .person, .pr-plan, .pr-intake, .nw-calc, .nw-plan-sheet, .pv-service--care) { --card-accent: var(--respite-deep); }
html body main :is(.nw-sample.nw-sample, .nw-navigation-quote.nw-navigation-quote, ul.pr-nav-examples > li, .pv-service.pv-service--nav) { --card-accent: var(--navigation-deep) !important; }
html body.region-page main .region-programs > li { --card-accent: var(--navigation-deep); }
html body.region-page main .region-programs > li:has(.vx-prog-tag--rs) { --card-accent: var(--respite-deep); }
/* Card corners: one radius family (16px small cards, 24px large panels) */
html body main :is(.specialists-panel .person, .pr-plan, .pr-intake, .nw-plan-sheet, .nw-sample, .nw-navigation-quote, .pr-nav-examples > li, .guide-card, .nw-person, .pv-audience, .pv-coord, .pv-service, .region-programs > li) { border-radius: 16px !important; }
html body main :is(.home-compare.mC--line, .home-support-grid, .nw-calc, .nw-formcard) { border-radius: 24px !important; }
/* Leftover beige fills become light neutral/service tints on white */
html body main .pr-receipt { background: var(--periwinkle-10) !important; border-color: var(--respite-deep-20) !important; }
html body main .pv-share { background: var(--coral-10, #fdf1ef) !important; border-color: var(--coral-30) !important; }
html body main .thursday:not([data-state="off"]) { box-shadow: var(--card-lift); }

/* Plan cards: no squeezed head, fee on one line (drops below the rate when there's no room), summaries on one line */
html body main .pr-plan-head > div { flex: 1 1 auto !important; width: 100% !important; min-width: 0; }
html body main .pr-plan-price { flex-wrap: wrap; align-items: baseline; column-gap: 12px; }
html body main .pr-plan-fee { white-space: nowrap; }
html body main .pr-plan-feenote { flex-basis: 100%; margin-top: 6px !important; }
html body main .nw-disclosure > summary { text-wrap: wrap !important; }
html body main .pr-plan .nw-disclosure > summary::after { margin-left: auto !important; }

html body.home-page #services .home-service-body--care > .home-compare.mC--line { border: 1px solid var(--rule) !important; border-top: 4px solid var(--respite-deep) !important; box-shadow: var(--card-lift) !important; }
html body.home-page .specialists-panel .person .person-identity { background: var(--periwinkle-10) !important; }
html body.home-page .home-support-grid { justify-items: start; }
html body.home-page .home-support-grid > .home-support-item { margin: 0 !important; }

/* ===== Sitewide fix pass (Oct 2026) ===== */
html body.home-page .home-price-strip .home-price-label { color: var(--periwinkle-30) !important; }
html body.home-page .home-price-strip--navigation .home-price-label { color: var(--sage-20) !important; }
html body main .region-note { background: var(--periwinkle-10) !important; border: 1px solid var(--respite-deep-20) !important; }
html body main .guide-card .vx-thumb { background: var(--periwinkle-10) !important; }
/* Thursday: no white-to-navy flash on load (transitions only after the first state is set) */
.thursday:not(.is-animated), .thursday:not(.is-animated) * { transition: none !important; }
@media (max-width: 720px) {
  html body.home-page .home-support-item > h3 { font-size: 0.9375rem !important; gap: 10px !important; }
  html body.home-page .home-support-item > h3::before { width: 26px !important; height: 26px !important; font-size: 0.8125rem !important; }
  html body.home-page .home-support-grid { padding: 22px 18px !important; }
  html body.home-page .thu-moment h4 { flex-wrap: nowrap !important; white-space: nowrap; }
  html body.home-page .preparation-point h3, html body.home-page .preparation-point h3 * { white-space: nowrap; }
}

/* Home phones: "What comes with every visit" as a tidy tap list */
@media (max-width: 720px) {
  html body.home-page .home-support-grid { display: block !important; padding: 6px 18px !important; justify-items: initial !important; }
  html body.home-page .home-support-grid > .home-support-item { display: block !important; width: 100%; margin: 0 !important; padding: 0 !important; }
  html body.home-page .home-support-grid > .home-support-item + .home-support-item { border-top: 1px solid var(--rule) !important; }
  html body.home-page .home-support-item > h3 { width: 100%; margin: 0 !important; }
  html body.home-page .home-support-item > h3 > .mc-btn { flex: 1 1 auto; width: 100%; min-height: 56px; padding: 12px 0 !important; text-align: left; }
  html body.home-page .home-support-item > .mc-part { padding: 0 0 16px 36px; margin: 0 !important; }
}

/* Phones: step text lines up under its heading, not under the number */
@media (max-width: 720px) {
  html body main ol.nw-steps > .nw-step { column-gap: 12px; }
  html body main ol.nw-steps > .nw-step > :not(h3):not(.nw-pin) { grid-column: 2 !important; }
}

/* ===== Home hero speech bubble (Oct 2026) ===== */
html body.home-page .hero--home .hero-copy { --hero-h1: clamp(2.125rem, min(4.4vw, 6.4svh), 4rem); }
@media (min-width: 721px) { html body.home-page .hero--home h1 { font-size: var(--hero-h1) !important; } }
@media (max-width: 720px) { html body.home-page .hero--home .hero-copy { --hero-h1: min(2.125rem, calc(100cqw / 12.8)); } }
.hero-bubble { position: relative; z-index: 2; align-self: flex-start; order: 1; width: fit-content; margin: 0 0 calc(var(--hero-h1) * 0.3) calc(var(--hero-h1) * 3.15) !important; padding: 0.3em 0.8em 0.36em; border-radius: 999px; background: var(--coral); color: var(--navy); font: 700 max(0.9375rem, calc(var(--hero-h1) * 0.4))/1.15 var(--nw-display); letter-spacing: -0.01em; white-space: nowrap !important; box-shadow: 0 6px 18px -8px rgba(232, 153, 141, 0.55), 0 2px 0 rgba(27, 42, 74, 0.12); transform-origin: 40% 100%; animation: heroBubbleIn .55s cubic-bezier(.2, 1.4, .4, 1) .25s both; }
.hero-bubble::after { content: ""; position: absolute; left: 50%; bottom: -0.32em; width: 0.62em; height: 0.62em; background: inherit; border-radius: 0 0 0.14em 0; transform: translateX(-50%) rotate(45deg); }
@keyframes heroBubbleIn { from { opacity: 0; transform: translateY(8px) scale(.86); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .hero-bubble { animation: none; } }
@media (min-width: 721px) { html body.home-page .hero--home .hero-copy > * > .hero-bubble { order: 1 !important; } }
@media (max-width: 720px) {
  .hero-bubble { align-self: center; margin: 0 auto calc(var(--hero-h1) * 0.34) !important; font-size: max(0.9375rem, calc(var(--hero-h1) * 0.5)); text-align: center !important; }
}
/* Header: Home link */
.nav-desktop .nav-home[aria-current="page"] { color: #fff; text-decoration: none !important; }

/* Hero bubble v2: tighter to the H1, bold white text, pointy comic-style tail */
.hero-bubble { margin-bottom: calc(var(--hero-h1) * 0.12) !important; color: #fff !important; font-weight: 800 !important; letter-spacing: 0 !important; padding: 0.34em 0.9em 0.4em !important; box-shadow: 0 4px 0 rgba(27, 42, 74, 0.35), 0 10px 22px -10px rgba(232, 153, 141, 0.6) !important; }
.hero-bubble::after { left: 34% !important; bottom: -0.5em !important; width: 0.9em !important; height: 0.6em !important; border-radius: 0 !important; transform: none !important; clip-path: polygon(0 0, 100% 0, 18% 100%); }
@media (max-width: 720px) { .hero-bubble { margin-bottom: calc(var(--hero-h1) * 0.22) !important; } }

/* Hero bubble: plain white text (outline removed) */
.hero-bubble { -webkit-text-stroke: 0; text-shadow: 0 1.5px 2px rgba(27, 42, 74, 0.28); }

/* ===== Speech-bubble eyebrows (Oct 2026) =====
   The Home hero bubble is the signature; section and card eyebrows use the same shape in their service color:
   Childcare = respite-deep, Navigation = navigation-deep, everything else = coral. White bold text with a soft shadow. */
:is(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label, .thu-tag) {
  position: relative; display: inline-block !important; width: fit-content !important; max-width: 100%;
  margin-bottom: 0.7em !important; padding: 0.32em 0.8em 0.38em !important; border-radius: 999px !important;
  background: var(--bubble) !important; color: #fff !important;
  font: 800 0.875rem/1.15 var(--nw-display) !important; letter-spacing: 0 !important; text-transform: none !important;
  text-shadow: 0 1.5px 2px rgba(27, 42, 74, 0.28); white-space: nowrap;
  box-shadow: 0 3px 0 rgba(27, 42, 74, 0.22);
}
:is(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label, .thu-tag)::after {
  content: "" !important; position: absolute; left: 24%; bottom: -0.45em; width: 0.85em; height: 0.5em; background: var(--bubble); clip-path: polygon(0 0, 100% 0, 18% 100%); display: block !important; mask: none !important; -webkit-mask: none !important;
}
.svc-label-name::before { display: none !important; }
/* service colors (default coral at zero specificity so the service rules win) */
:where(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .label, .nw-chapter-label, .nw-value-label, .guide-card-label, .thu-tag) { --bubble: var(--coral); }
.svc-label--care .svc-label-name, .care-page .eyebrow-bubble, .pv-service--care .pv-service-label, .pv-situation--care .pv-situation-tag, .vx-prog-tag--rs, .nw-plan-label, .specialists-panel .person .label, .nw-role:not(.nw-role--navigation) .nw-chapter-label, .thu-moment:not(.thu-moment--nav) .thu-tag { --bubble: var(--respite-deep); }
.svc-label--navigation .svc-label-name, .navigation-page .eyebrow-bubble, .pv-service--nav .pv-service-label, .pv-situation--nav .pv-situation-tag, .vx-prog-tag:is(.vx-prog-tag--ei, .vx-prog-tag--dis, .vx-prog-tag--fs), .nw-role--navigation .nw-chapter-label, .thu-moment--nav .thu-tag { --bubble: var(--navigation-deep); }
/* Thursday tags sit beside the moment name: smaller, no extra bottom gap */
.thu-tag { font-size: 0.75rem !important; margin-bottom: 0 !important; padding: 0.26em 0.65em 0.3em !important; }
.thu-tag::after { display: none !important; }
/* interior hero label: bubble, then the descriptive text after it */
.nw-hero-label { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em 0.75em; }
.nw-hero-label > .eyebrow-bubble { margin-bottom: 0.45em !important; font-size: 0.9375rem !important; }
.nw-hero-label .nw-hero-label-more { color: rgba(255, 255, 255, 0.78); }
@media (max-width: 720px) {
  html body .nw-hero-label { justify-content: center; }
  html body .svc-label .svc-label-name { margin-inline: auto !important; }
  html body .svc-label { text-align: center; }
}
html body .btn { white-space: nowrap; }
@media (max-width: 360px) { html body .btn { white-space: normal; } }
html body .pv-moments li { white-space: nowrap; text-wrap: nowrap; }
@media (max-width: 720px) { html body .pv-moments li { white-space: normal; text-wrap: pretty; } }

/* Bubbles everywhere match the hero bubble: same weight, padding, tail, shadow, lowercase, tight to the heading */
html body :is(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label) {
  font: 800 1.0625rem/1.15 var(--nw-display) !important; text-transform: lowercase !important; letter-spacing: 0 !important;
  padding: 0.3em 0.8em 0.36em !important; margin-bottom: 0.32em !important;
  box-shadow: 0 4px 0 rgba(27, 42, 74, 0.35), 0 10px 22px -10px rgba(27, 42, 74, 0.35) !important;
  text-shadow: 0 1.5px 2px rgba(27, 42, 74, 0.28) !important;
}
html body :is(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label)::after { left: 34% !important; bottom: -0.5em !important; width: 0.9em !important; height: 0.6em !important; }
html body .hero-bubble { text-transform: lowercase; }
html body .thu-tag { text-transform: lowercase !important; font-weight: 800 !important; }
html body .svc-label--lead .svc-label-title, html body .svc-label .svc-label-tag { margin-top: 0 !important; }
html body .svc-label--lead .svc-label-tag { margin-top: 8px !important; }
html body .nw-hero-label { margin-bottom: 0.2em !important; }
html body .nw-hero-label > .eyebrow-bubble { font-size: 1.0625rem !important; margin-bottom: 0 !important; }
html body :is(.pv-service, .pv-situation, .nw-role, .guide-card, .region-programs > li) :is(.pv-service-label, .pv-situation-tag, .nw-chapter-label, .guide-card-label, .vx-prog-tag) + * { margin-top: 0 !important; }
@media (max-width: 720px) { html body :is(.svc-label-name, .eyebrow-bubble, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label) { font-size: 0.9375rem !important; } }

/* Hero bubble points at "childcare": bubble shifted right, tail near its right end aimed at the word's center */
@media (min-width: 721px) {
  html body.home-page .hero--home .hero-bubble { margin-left: calc(var(--hero-h1) * 5.3) !important; }
  html body.home-page .hero--home .hero-bubble::after { left: auto !important; right: 26% !important; clip-path: polygon(0 0, 100% 0, 30% 100%) !important; }
}
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { align-self: flex-start !important; margin-left: calc(var(--hero-h1) * 5.2) !important; margin-right: 0 !important; }
  html body.home-page .hero--home .hero-bubble::after { left: auto !important; right: 30% !important; clip-path: polygon(0 0, 100% 0, 30% 100%) !important; }
}

/* Body bubbles: larger, no drop shadow on white (hero bubble unchanged) */
html body main :is(.svc-label-name, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label) {
  font-size: 1.25rem !important; padding: 0.32em 0.85em 0.38em !important; box-shadow: none !important;
}
html body main .nw-hero-label > .eyebrow-bubble { box-shadow: 0 4px 0 rgba(0, 0, 0, 0.18) !important; }
@media (max-width: 720px) {
  html body main :is(.svc-label-name, .pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label) { font-size: 1.0625rem !important; }
}

/* Home hero CTA: left-aligned with the text column (desktop) */
@media (min-width: 721px) {
  html body.home-page .hero--home .btn-row { width: auto !important; justify-content: flex-start !important; }
}

/* ===== Bubbles only where they mean "this is what we are" (Oct 2026) =====
   Keep: Home hero, Home service labels, one bubble per interior hero. Card labels return to small colored caps. */
html body main :is(.pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label) {
  display: block !important; padding: 0 !important; margin: 0 0 6px !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; text-shadow: none !important; white-space: normal;
  font: 700 0.8125rem/1.25 var(--nw-text) !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; color: var(--bubble, var(--coral-ink)) !important;
}
html body main :is(.pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .specialists-panel .person .label, .nw-chapter-label, .nw-value-label, .guide-card-label)::after { display: none !important; content: none !important; }
:where(.pv-service-label, .pv-situation-tag, .vx-prog-tag, .nw-plan-label, .label, .nw-chapter-label, .nw-value-label, .guide-card-label) { --bubble: var(--coral-ink); }
html body main :is(.pv-service--care .pv-service-label, .pv-situation--care .pv-situation-tag, .vx-prog-tag--rs, .nw-plan-label, .specialists-panel .person .label, .nw-role:not(.nw-role--navigation) .nw-chapter-label) { --bubble: var(--respite-ink); }
html body main :is(.pv-service--nav .pv-service-label, .pv-situation--nav .pv-situation-tag, .vx-prog-tag--ei, .vx-prog-tag--dis, .vx-prog-tag--fs, .nw-role--navigation .nw-chapter-label) { --bubble: var(--navigation-ink); }
/* Interior hero bubble sits tight above the H1, like the Home hero */
html body .nw-hero-label { margin: 0 0 calc(var(--hero-h1i, 3rem) * 0.12) !important; }
html body :is(.hero--interior, .nw-hero-compact) { --hero-h1i: clamp(2.375rem, 4vw, 3.25rem); }

/* ===== Service bands (Oct 2026, v1): full-bleed service-color opener with contour lines and icon ===== */
html body main { overflow-x: clip; }
html body.home-page :is(#services, #services-navigation) { padding-top: 0 !important; border-top: 0 !important; }
.svc-band { grid-column: 1 / -1; position: relative; width: 100vw; margin: 0 calc(50% - 50vw) clamp(32px, 4vw, 48px); overflow: hidden; background: var(--respite-field); color: #fff; }
.svc-band--nav { background: var(--navigation-field); }
.svc-band::before { content: ""; position: absolute; right: -140px; top: -120px; width: min(760px, 70vw); aspect-ratio: 1400 / 800; background: url(images/home-2026/contour-white.png) center / contain no-repeat; opacity: 0.22; pointer-events: none; }
.svc-band-inner { position: relative; max-width: var(--shell, 1240px); margin: 0 auto; padding: clamp(40px, 5vw, 60px) var(--gutter, 40px); display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 28px; align-items: center; }
.svc-band-icon { width: 72px; height: 72px; border-radius: 20px; background: rgba(255, 255, 255, 0.14); position: relative; }
.svc-band-icon::after { content: ""; position: absolute; inset: 16px; background: #fff; -webkit-mask: var(--svc-icon) center / contain no-repeat; mask: var(--svc-icon) center / contain no-repeat; }
.svc-band--care { --svc-icon: url(images/icons/care-details-matching.svg); }
.svc-band--nav { --svc-icon: url(images/icons/care-details-scheduling.svg); }
.svc-band-text { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.svc-band-name { margin: 0; font: 700 0.8125rem/1.2 var(--nw-text); letter-spacing: 0.12em; text-transform: uppercase; color: var(--periwinkle-30); }
.svc-band--nav .svc-band-name { color: var(--sage-20); }
.svc-band-title { margin: 0; font: 800 clamp(2rem, 3.6vw, 2.75rem)/1.05 var(--nw-display); letter-spacing: -0.035em; color: #fff; }
.svc-band-tag { margin: 0; font: 500 clamp(1.0625rem, 1.5vw, 1.25rem)/1.4 var(--nw-text); color: rgba(255, 255, 255, 0.9); }
.svc-band-link { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: 999px; border: 1.5px solid rgba(255, 255, 255, 0.55); color: #fff; font: 700 var(--fs-small)/1 var(--nw-text); text-decoration: none; white-space: nowrap; }
.svc-band-link:hover { background: rgba(255, 255, 255, 0.12); border-color: #fff; color: #fff; }
@media (max-width: 720px) {
  .svc-band-inner { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 32px 22px 30px; text-align: left; }
  .svc-band-icon { width: 52px; height: 52px; border-radius: 16px; }
  .svc-band-icon::after { inset: 12px; }
  .svc-band-link { justify-self: start; margin-top: 6px; }
  .svc-band::before { right: -180px; top: -80px; width: 520px; }
  html body .svc-band :is(.svc-band-name, .svc-band-title, .svc-band-tag) { text-align: left !important; }
}

/* Service bands: contour lines cover the whole band, with a different map on each */
.svc-band::before { inset: 0 !important; right: auto !important; top: auto !important; width: auto !important; aspect-ratio: auto !important; background-image: url(images/home-2026/contour-white.png) !important; background-repeat: no-repeat !important; background-size: cover !important; opacity: 0.22 !important; }
.svc-band--care::before { background-position: 20% 30% !important; }
.svc-band--nav::before { background-position: 75% 80% !important; transform: scale(-1, -1); }
@media (max-width: 720px) { .svc-band::before { background-size: 260% auto !important; } }

/* Contour layer as a real element (full band, different map per service) */
.svc-band::before { display: none !important; }
.svc-band-topo { position: absolute; inset: 0; pointer-events: none; opacity: 0.22; background: url(images/home-2026/contour-white.png) no-repeat; background-size: cover; }
.svc-band--care .svc-band-topo { background-position: 20% 30%; }
.svc-band--nav .svc-band-topo { background-position: 75% 80%; transform: scale(-1, -1); }
@media (max-width: 720px) { .svc-band-topo { background-size: 260% auto; } }
html body.home-page .service-overview > .svc-band { max-width: none !important; width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; }

/* Pricing: slim service bands open the Care and Navigation pricing sections */
html body.pricing-page main > section:has(> .svc-band) { padding-top: 0 !important; border-top: 0 !important; }
html body.pricing-page main > section > .svc-band { width: 100%; margin: 0 0 clamp(32px, 4vw, 48px); }
.svc-band--slim .svc-band-inner { padding-block: clamp(28px, 3.4vw, 40px); grid-template-columns: 64px minmax(0, 1fr); }
.svc-band--slim .svc-band-icon { width: 64px; height: 64px; }
.svc-band--slim .svc-band-tag { font: 700 clamp(1.25rem, 2vw, 1.625rem)/1.3 var(--nw-display); letter-spacing: -0.015em; color: #fff; }
@media (max-width: 720px) { .svc-band--slim .svc-band-inner { grid-template-columns: minmax(0, 1fr); } .svc-band--slim .svc-band-icon { width: 48px; height: 48px; } }

/* Navigation "What it looks like": one white card on the sage section (no tinted inner panel), with real top padding */
html body.navigation-page .nw-examples .nw-panel-tint.split-head-tabs { background: #fff !important; border: 1px solid var(--rule) !important; border-top: 4px solid var(--navigation-deep) !important; box-shadow: var(--card-lift) !important; padding: clamp(32px, 4vw, 48px) clamp(24px, 4vw, 48px) !important; border-radius: 24px !important; }
html body.navigation-page .nw-examples .nw-panel-tint .nw-sample { box-shadow: none !important; border: 1px solid var(--rule) !important; border-top: 4px solid var(--navigation-deep) !important; background: var(--sage-20) !important; }
html body.navigation-page main > section.nw-examples { padding-block: clamp(48px, 6vw, 80px) !important; }
@media (max-width: 720px) { html body.navigation-page .nw-examples .nw-panel-tint.split-head-tabs { padding: 26px 18px !important; border-radius: 20px !important; } }

/* Home phones: Care points tighter, even spacing; comparison chart uses the full card width */
@media (max-width: 720px) {
  html body.home-page .service-overview > .svc-band { margin-bottom: 24px !important; }
  html body.home-page #services .home-care-points { margin-top: 0 !important; padding: 4px 16px !important; border-radius: 18px !important; }
  html body.home-page #services .home-care-points .home-service-summary { padding: 0 !important; }
  html body.home-page #services .home-care-points .home-service-summary h4 { margin: 0 !important; }
  html body.home-page #services .home-care-points .home-service-summary h4 .mc-btn { min-height: 52px; padding: 12px 0 !important; gap: 12px; }
  html body.home-page #services .home-care-points .home-service-summary h4 .mc-label { font-size: 0.9375rem; line-height: 1.3; }
  html body.home-page #services .home-care-points .mc-part { padding: 0 0 14px 21px !important; margin: 0 !important; }
  html body.home-page #services .home-service-body--care > .home-compare.mC--line { margin-top: 24px !important; padding: 20px 14px 10px !important; }
  html body.home-page #services .home-compare.mC--line .mC-head { padding-inline: 4px; }
  html body.home-page #services .home-compare.mC--line .mC-table { width: 100% !important; margin: 0 !important; }
  html body.home-page #services .home-compare.mC--line .mC-table thead tr { padding: 0 10px !important; column-gap: 10px !important; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody tr { padding: 10px !important; column-gap: 10px !important; row-gap: 6px !important; }
  html body.home-page #services .home-compare.mC--line .mC-table tbody th { font-size: 0.9375rem !important; line-height: 1.3 !important; }
  html body.home-page #services .home-compare.mC--line .mC-table td span { font-size: 0.875rem !important; line-height: 1.25 !important; }
  html body.home-page #services .home-compare.mC--line .m-foot { padding-inline: 4px; }
}
@media (max-width: 720px) {
  html body.home-page .service-overview > .svc-band { margin-bottom: 0 !important; }
  html body.home-page #services .service-overview > .home-service-body--care.home-service-body--refined { padding: 0 !important; background: none !important; border-radius: 0 !important; }
  html body.home-page #services .home-service-body--care > .home-compare.mC--line { margin-inline: 0 !important; padding-inline: 10px !important; }
}

/* Home: Care points as an editorial 2x2 (desktop): large numbers, bigger titles, no inner rules */
@media (min-width: 721px) {
  html body.home-page #services .home-care-points { counter-reset: cp; padding: 44px 48px !important; gap: 40px 56px !important; background: linear-gradient(135deg, var(--periwinkle-20), var(--periwinkle-10)) !important; }
  html body.home-page #services .home-care-points .home-service-summary { counter-increment: cp; position: relative; padding: 0 0 0 72px !important; border: 0 !important; }
  html body.home-page #services .home-care-points .home-service-summary::before { content: counter(cp, decimal-leading-zero); position: absolute; left: 0; top: -4px; font: 800 2.5rem/1 var(--nw-display); letter-spacing: -0.04em; color: var(--respite-deep); opacity: 0.85; }
  html body.home-page #services .home-care-points .home-service-summary h4 { font-size: 1.3125rem !important; line-height: 1.25 !important; margin: 0 0 10px !important; }
  html body.home-page #services .home-care-points .home-service-summary h4::before { display: none !important; }
  html body.home-page #services .home-care-points :is(.home-care-support, .home-care-specialty > section) { border: 0 !important; padding-left: 72px !important; }
  html body.home-page #services .home-care-points > .home-care-life, html body.home-page #services .home-care-points .home-service-summary:nth-of-type(odd) { padding-right: 0 !important; }
}
/* Home: breathing room and a clear opener before the Thursday showcase */
html body.home-page main > section.home-possibilities { padding-top: clamp(72px, 9vw, 120px) !important; border-top: 1px solid var(--rule); }
html body.home-page .home-possibilities .day-intro h2 { font-size: clamp(2.25rem, 4vw, 3rem) !important; letter-spacing: -0.035em; }
@media (min-width: 721px) {
  html body.home-page #services .home-care-points > .home-care-specialty > section.home-service-summary + section.home-service-summary,
  html body.home-page #services .home-care-points > section.home-service-summary.home-care-support { padding-left: 72px !important; border-left: 0 !important; border-top: 0 !important; }
  html body.home-page #services .home-care-points > .home-care-specialty > section.home-service-summary { border-top: 0 !important; }
}

/* Mobile hero bubble: always one line; sized to fit, nudged so it never overflows */
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { white-space: nowrap !important; text-wrap: nowrap !important; width: max-content !important; max-width: none !important; font-size: clamp(0.8125rem, 4vw, 1rem) !important; margin-left: min(calc(var(--hero-h1) * 5.2), calc(100% - 13.5em)) !important; }
}

/* Mobile hero: bubble centered, tail repositioned to point at "childcare"; lede is a centered block with left-aligned lines */
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { align-self: center !important; margin-left: auto !important; margin-right: auto !important; }
  html body.home-page .hero--home .hero-bubble::after { left: var(--tail-x, 70%) !important; right: auto !important; }
  html body.home-page .hero--home .hero-lede { width: fit-content !important; max-width: min(100%, 29ch) !important; margin-inline: auto !important; text-align: left !important; }
  html body.home-page .hero--home .hero-lede > span { text-align: left !important; }
}

/* ===== Home Care points as photo tiles (p1, Oct 2026) ===== */
.care-tiles { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin: 0; }
.care-tile { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.care-tile img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; border-radius: 18px; }
.care-tile h3 { margin: 6px 0 0; font: 700 1.1875rem/1.25 var(--nw-display); letter-spacing: -0.01em; color: var(--navy); text-wrap: balance; }
.care-tile p { margin: 0; font-size: var(--fs-small); line-height: 1.55; color: var(--slate); }
@media (max-width: 1120px) { .care-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; } }
@media (max-width: 720px) {
  .care-tiles { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: calc(-1 * var(--gutter, 22px)) !important; padding: 2px var(--gutter, 22px) 8px; scrollbar-width: none; }
  .care-tiles::-webkit-scrollbar { display: none; }
  .care-tile { flex: 0 0 78%; scroll-snap-align: start; }
  .care-tile img { aspect-ratio: 4 / 3; border-radius: 16px; }
  .care-tile h3 { font-size: 1.0625rem; text-align: left !important; }
  .care-tile p { text-align: left !important; }
}
@media (min-width: 721px) { .care-tile h3 { min-height: 2.5em; } }
@media (max-width: 720px) {
  html body.home-page .care-tiles { margin-inline: -18px !important; padding: 2px 18px 8px !important; scroll-padding-inline: 18px; }
  html body.home-page .care-tile { flex: 0 0 80%; }
  html body.home-page .care-tile:last-child { margin-right: 18px; }
}

/* Care tiles swipe cue (phones): label + arrow, edge fade, page dots */
.care-tiles-wrap { grid-column: 1 / -1; position: relative; }
.care-tiles-cue, .care-tiles-dots { display: none; }
@media (max-width: 720px) {
  .care-tiles-cue { display: flex; align-items: center; justify-content: flex-end; gap: 6px; margin: 0 0 10px; font: 700 0.8125rem/1.2 var(--nw-text); color: var(--respite-ink); text-align: right !important; }
  .care-tiles-cue svg { animation: careNudge 1.6s ease-in-out 3; }
  @keyframes careNudge { 0%, 100% { transform: none; } 50% { transform: translateX(5px); } }
  .care-tiles-wrap::after { content: ""; position: absolute; right: -18px; top: 28px; bottom: 30px; width: 36px; background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 85%); pointer-events: none; transition: opacity .25s; }
  .care-tiles-wrap.at-end::after { opacity: 0; }
  .care-tiles-dots { display: flex; justify-content: center; gap: 8px; margin-top: 10px; }
  .care-tiles-dots i { width: 8px; height: 8px; border-radius: 999px; background: var(--respite-deep-30); transition: width .25s, background .25s; }
  .care-tiles-dots i.on { width: 22px; background: var(--respite-deep); }
}
@media (prefers-reduced-motion: reduce) { .care-tiles-cue svg { animation: none; } }

/* ===== Service bands s1 (Oct 2026): slim, label + headline on one line, text link ===== */
.svc-band--s1 .svc-band-inner { display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 6px 20px; padding-block: clamp(22px, 2.4vw, 28px) !important; grid-template-columns: none !important; }
.svc-band--s1 .svc-band-icon { display: none !important; }
.svc-band--s1 .svc-band-name { flex: none; }
.svc-band--s1 .svc-band-title { flex: 0 1 auto; font: 800 clamp(1.5rem, 2.4vw, 1.875rem)/1.15 var(--nw-display) !important; letter-spacing: -0.03em !important; color: #fff !important; margin: 0 !important; }
.svc-band--s1 .svc-band-link { margin-left: auto; min-height: 0; padding: 0 0 2px; border: 0; border-radius: 0; border-bottom: 2px solid var(--coral); background: none !important; }
.svc-band--s1 .svc-band-link:hover { border-bottom-color: #fff; background: none; }
.svc-band--s1 .svc-band-topo { opacity: 0.18; }
.svc-band--s1 { margin-bottom: 0 !important; }
.svc-band-lede { grid-column: 1 / -1; margin: clamp(24px, 3vw, 32px) 0 clamp(20px, 2.4vw, 28px) !important; font: 500 clamp(1.125rem, 1.6vw, 1.25rem)/1.4 var(--nw-text); color: var(--navy); }
html body.pricing-page main > section > .svc-band--s1 { margin-bottom: clamp(28px, 3.4vw, 40px) !important; }
@media (max-width: 720px) {
  .svc-band--s1 .svc-band-inner { flex-direction: column; align-items: flex-start; gap: 6px; padding: 22px 22px 20px !important; }
  .svc-band--s1 .svc-band-link { margin: 8px 0 0; }
  .svc-band-lede { margin: 20px 0 16px !important; font-size: 1.0625rem; text-align: left !important; }
}
html body.home-page .service-overview > .svc-band { grid-row: 1 !important; }
html body.home-page .service-overview > .svc-band-lede { grid-row: 2 !important; }
html body.home-page .service-overview > .home-service-body { grid-row: 3 !important; }
html body.home-page .service-overview { row-gap: 0 !important; }
/* s1 band text aligns with the page content edge */
.svc-band--s1 .svc-band-inner { box-sizing: border-box !important; max-width: var(--shell, 1240px) !important; margin-inline: auto !important; padding-inline: var(--gutter, 48px) !important; }
@media (max-width: 720px) { .svc-band--s1 .svc-band-inner { padding-inline: var(--gutter, 18px) !important; } }
html body .svc-band.svc-band--s1 > .svc-band-inner { padding-inline: 0 !important; }
@media (max-width: 1240px) { html body .svc-band.svc-band--s1 > .svc-band-inner { max-width: none !important; margin-inline: 0 !important; padding-inline: var(--gutter, 22px) !important; } }
@media (max-width: 720px) { html body .svc-band.svc-band--s1 > .svc-band-inner { padding-inline: 18px !important; } }
/* Pricing: "Paying for care and help" heading reads in flow, not sticky */
html body.pricing-page .nw-split--faq > div:first-child { position: static !important; top: auto !important; }
/* Home: Care pricing strip now closes "What comes with every visit" */
html body.home-page .home-support .home-price-strip--after-visit { margin-top: clamp(32px, 4vw, 48px) !important; }
html body.home-page .home-price-link { white-space: nowrap !important; flex: none; }

/* ===== Spacing consistency pass (Oct 2026) =====
   Sections: 64px top/bottom desktop, 36px phones. Heading > lede: 16px. Heading > grid: 28px desktop / 20px phones.
   Page margin on phones: 22px on every page. */
html body main h2:is(:has(+ p), :has(+ .split-head-row)) { margin-bottom: 0 !important; }
html body main h2 + :is(p, .split-head-row) { margin-top: 16px !important; }
html body.home-page .care-opening-text { gap: 0 !important; }
html body.home-page .care-opening-text .care-opening-lead { margin-top: 20px !important; }
html body .vx-icons { margin-top: 28px !important; }
html body .nw-quote-row > h2 { margin-bottom: 0 !important; }
html body .nw-quote-row { row-gap: 16px !important; }
html body .nw-photos { margin-bottom: 0 !important; }
@media (min-width: 721px) {
  html body.home-page .home-opening { padding-bottom: 64px !important; }
  html body.home-page #services { padding-bottom: 64px !important; }
  html body.home-page .home-possibilities { padding-top: 64px !important; }
  html body.navigation-page main > section.tone-nav { padding-block: 64px !important; }
  html body.region-page main > section:has(.nw-faq) { padding-top: 64px !important; }
}
@media (max-width: 720px) {
  html body.home-page { --gutter: 22px; }
  html body.home-page main .shell { padding-inline: 0 !important; margin-inline: 22px !important; width: auto !important; max-width: none !important; }
  html body.home-page .care-tiles { margin-inline: -22px !important; padding-inline: 22px !important; scroll-padding-inline: 22px; }
  html body.home-page .care-tile:last-child { margin-right: 22px; }
  html body .svc-band.svc-band--s1 > .svc-band-inner { padding-inline: 22px !important; }
  html body.home-page .home-opening { padding-top: 21px !important; }
  html body.navigation-page main > section.tone-nav { padding-block: 36px !important; }
  html body .pr-calc-section { padding-block: 36px !important; }
  html body .vx-icons { margin-top: 20px !important; }
}

/* Pricing: Navigation quote card gets its own button, styled like the plan buttons */
html body.pricing-page .nw-navigation-quote { display: flex; flex-direction: column; }
html body.pricing-page .nw-navigation-quote .pr-nav-cta { margin-top: auto; align-self: stretch; justify-content: center; text-align: center; }
html body.pricing-page .nw-navigation-quote > p + .pr-nav-cta { margin-top: 20px; }
/* Home: "A day with room for you, too." uses the standard 64px top */
@media (min-width: 721px) { html body.home-page main > section.band.home-possibilities { padding-top: 64px !important; } }
@media (max-width: 720px) { html body .vx-icons { margin-top: 8px !important; } }
html body.pricing-page main .nw-lede { margin-top: 16px !important; }
html body.pricing-page .nw-navigation-quote .btn.pr-nav-cta { width: 100% !important; margin-inline: 0 !important; display: flex !important; }

/* ===== Home Navigation body (Oct 2026): copy in two columns, one sage panel for "bring us your list", pricing strip ===== */
.navx { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 28px; }
.navx-copy { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.navx-copy p { margin: 0; color: var(--slate); line-height: 1.6; }
.navx-panel { background: var(--sage-20); border-radius: var(--r-lg); padding: 32px 36px 34px; display: flex; flex-direction: column; gap: 26px; }
.navx-bring { display: flex; align-items: center; justify-content: space-between; gap: 20px 40px; padding-bottom: 24px; border-bottom: 1px solid rgba(67, 90, 92, 0.22); }
.navx-bring h3 { margin: 0; font: 800 clamp(1.375rem, 2.2vw, 1.75rem)/1.15 var(--nw-display); letter-spacing: -0.025em; color: var(--navy); }
.navx-bring p { margin: 8px 0 0; color: var(--navy); line-height: 1.55; max-width: 60ch; }
.navx-bring .btn { flex: none; white-space: nowrap; }
.btn.btn--sage { background: var(--navigation-deep); color: #fff; }
.btn.btn--sage:hover { background: var(--navy); color: #fff; }
.navx-lists { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.navx-lists section { margin: 0; padding: 0; background: none; border: 0; }
.navx-lists h4 { margin: 0 0 10px; font: 700 var(--fs-body)/1.3 var(--nw-display); color: var(--navigation-ink); }
.navx-lists ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.navx-lists li { position: relative; padding-left: 22px; color: var(--navy); line-height: 1.45; }
.navx-lists li::before { content: ""; position: absolute; left: 0; top: 0.32em; width: 12px; height: 12px; background: var(--navigation-deep); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
.navx > .home-price-strip { margin: 0 !important; }
@media (max-width: 1120px) {
  .navx-lists { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
@media (max-width: 720px) {
  .navx { gap: 22px; }
  .navx-copy { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .navx-panel { padding: 24px 20px; gap: 22px; border-radius: var(--r); }
  .navx-bring { flex-direction: column; align-items: stretch; padding-bottom: 20px; }
  .navx-bring .btn { justify-content: center; }
  .navx-bring h3 { font-size: 1.375rem; }
}
/* Providers: trust points run full width in two columns once the cohort photo is gone */
html body .pv-trust { display: block !important; grid-template-columns: none !important; }
@media (min-width: 900px) { html body .pv-trust .pv-trust-points { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 24px 40px !important; } }
/* Care Services: full-width team photo in "A Care Specialist, with a team behind them" */
html body.care-page .care-team > .nw-head { max-width: 860px; }
html body.care-page .care-team-photo { margin: 32px 0 40px; }
html body.care-page .care-team-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 750; object-fit: cover; border-radius: var(--r-lg); }
html body.care-page .care-team-photo figcaption { margin-top: 10px; font: 400 0.875rem/1.45 var(--nw-text); color: var(--slate); }
html body.care-page .care-team-photo figcaption strong { font-weight: 600; color: var(--navy); }
@media (min-width: 900px) { html body.care-page .care-team > .nw-points { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 24px 40px !important; } }
@media (max-width: 720px) { html body.care-page .care-team-photo { margin: 20px 0 28px; } html body.care-page .care-team-photo img { aspect-ratio: 3 / 2; border-radius: var(--r); } }
/* Care Services: "not therapy" panel with contour lines in the blue half, larger type, caption anchored bottom-left */
html body .care-panel--photo { min-height: 420px; flex-direction: column; align-items: flex-start; justify-content: center; padding: 56px 64px !important; background: var(--respite-field); }
html body .care-panel--photo .care-panel-topo { position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; width: 52%; background: url(images/home-2026/contour-white.png) left -40px top -30px / 900px auto no-repeat; opacity: 0.2; pointer-events: none; }
html body .care-panel--photo .care-panel-text { gap: 18px; max-width: min(30ch, 40%) !important; }
html body .care-panel--photo .care-panel-text > .care-panel-title { font-size: clamp(2rem, 3.2vw, 2.75rem); line-height: 1.05; letter-spacing: -0.035em; }
html body .care-panel--photo .care-panel-text > p:not(.care-panel-title) { font-size: 1.125rem; line-height: 1.55; color: #fff; }
html body .care-panel--photo .care-panel-cap { position: static; max-width: min(30ch, 40%); margin: 28px 0 0; font: 400 0.875rem/1.4 var(--nw-text); color: rgba(255, 255, 255, 0.86); }
html body .care-panel--photo .care-panel-cap strong { font-weight: 600; color: #fff; }
@media (max-width: 720px) {
  html body .care-panel--photo { padding: 0 0 24px !important; min-height: 0; }
  html body .care-panel--photo .care-panel-topo { top: auto; left: 0; right: 0; width: auto; height: 60%; background-position: left -60px bottom -40px; background-size: 640px auto; }
  html body .care-panel--photo .care-panel-text { max-width: none !important; }
  html body .care-panel--photo .care-panel-text > .care-panel-title { font-size: 1.875rem; }
  html body .care-panel--photo .care-panel-text > p:not(.care-panel-title) { font-size: 1rem; }
  html body .care-panel--photo .care-panel-cap { position: static; max-width: none; padding: 16px 22px 0; }
}

/* ===== Care Services rework (Oct 2026) ===== */
/* Topics: periwinkle sparkle markers instead of small gray icons */
html body.care-page .nw-support-topic > .nw-support-topic-icon { display: none !important; }
html body.care-page .nw-support-topic > h3 { display: flex; align-items: center; gap: 10px; }
html body.care-page .nw-support-topic > h3::before { content: ""; flex: none; width: 16px; height: 16px; background: var(--respite-deep); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
html body.care-page .nw-support-topic > p { padding-left: 26px !important; margin-left: 0 !important; }
/* What would you like time for: three white cards + a full-width line, no illustration */
.care-time > .nw-head { max-width: 860px; }
.care-uses { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 36px; }
.care-use { display: flex; flex-direction: column; gap: 10px; padding: 28px 28px 30px; background: var(--white); border: 1px solid var(--rule); border-top: 4px solid var(--respite-deep); border-radius: 16px; box-shadow: var(--card-lift, 0 1px 2px rgba(27,42,74,.04), 0 8px 24px rgba(27,42,74,.06)); }
.care-use h3 { margin: 0; font: 700 1.25rem/1.25 var(--nw-display); letter-spacing: -0.015em; color: var(--navy); }
.care-use p { margin: 0; color: var(--slate); line-height: 1.6; }
.care-uses-more { display: grid; grid-template-columns: minmax(220px, 3fr) minmax(0, 7fr); gap: 8px 40px; align-items: baseline; margin-top: 24px; padding: 22px 28px; border-radius: 16px; background: var(--periwinkle-20); }
.care-uses-more h3 { margin: 0; font: 700 1.125rem/1.3 var(--nw-display); color: var(--navy); }
.care-uses-more p { margin: 0; color: var(--navy); line-height: 1.6; }
html body.care-page .care-uses-note { margin: 20px 0 0 !important; text-align: left !important; font: 600 1.125rem/1.45 var(--nw-display); color: var(--navy); }
@media (max-width: 1120px) { .care-uses { grid-template-columns: minmax(0, 1fr); gap: 16px; } .care-uses-more { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 720px) { .care-uses { margin-top: 24px; } .care-use { padding: 22px 20px; } .care-uses-more { padding: 18px 20px; } }
/* How we prepare: room between the photo captions and the observation */
html body.care-page #family-care-plan .nw-photos { margin-bottom: 40px !important; }
/* Practical details: heading on one line above, questions in two columns */
@media (min-width: 900px) {
  html body.care-page .care-faq { display: block !important; }
  html body.care-page .care-faq > .vx-faq-head { margin-bottom: 24px; }
  html body.care-page .care-faq > .vx-faq-head h2 br { display: none; }
  html body.care-page .care-faq .nw-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; align-items: start; }
  html body.care-page .care-faq .nw-faq > * { min-width: 0; }
  html body.care-page .care-faq .nw-faq-more { display: inline-flex; margin: 20px 32px 0 0 !important; }
}
/* Care panel: contour lines stay inside the blue half; caption link */
html body .care-panel--photo .care-panel-topo { width: 48% !important; right: auto; }
html body .care-panel--photo .care-panel-cap a { color: #fff !important; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
@media (max-width: 720px) { html body .care-panel--photo .care-panel-topo { width: auto !important; top: auto !important; bottom: 0; height: calc(100% - (100vw - 40px) * 687 / 720) !important; } }

/* Care: "What would you like time for?" (Oct 2026): heading beside lede, flat columns, one footer panel */
@media (min-width: 1121px) {
  html body.care-page .care-time > .nw-head { display: grid !important; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 56px; align-items: start; max-width: none !important; margin-bottom: 40px !important; }
  html body.care-page .care-time > .nw-head > .nw-heading { margin: 0 !important; }
  html body.care-page .care-time > .nw-head > .nw-lede { margin: 0 !important; padding-top: 6px; max-width: 60ch; }
}
html body.care-page .care-time .care-uses { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px !important; margin: 0 !important; }
html body.care-page .care-time .care-use { margin: 0 !important; padding: 20px 0 0 !important; background: none !important; border: 0 !important; border-top: 3px solid var(--respite-deep) !important; border-radius: 0 !important; box-shadow: none !important; display: flex; flex-direction: column; gap: 10px; }
html body.care-page .care-time .care-use::before, html body.care-page .care-time .care-use::after { display: none !important; }
html body.care-page .care-time .care-use h3 { margin: 0 !important; font: 700 var(--fs-h3, 1.25rem)/1.25 var(--nw-display); color: var(--navy); }
html body.care-page .care-time .care-use p { margin: 0 !important; color: var(--slate); line-height: 1.6; }
html body.care-page .care-time .care-uses-foot { margin-top: 40px; display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; background: var(--periwinkle-20); border-radius: var(--r-lg); padding: 28px 36px; column-gap: 0; }
html body.care-page .care-time .care-uses-foot > .care-uses-more { margin: 0 !important; padding: 0 36px 0 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; display: flex !important; flex-direction: column; gap: 6px; grid-template-columns: none !important; }
html body.care-page .care-time .care-uses-foot > .care-uses-more h3 { margin: 0 !important; font: 700 var(--fs-body)/1.3 var(--nw-display); color: var(--navy); }
html body.care-page .care-time .care-uses-foot > .care-uses-more p { margin: 0 !important; color: var(--navy); line-height: 1.6; }
html body.care-page .care-time .care-uses-foot > .care-uses-note { margin: 0 !important; padding: 4px 0 4px 36px !important; border-left: 1px solid rgba(27, 42, 74, 0.18); font: 700 clamp(1.125rem, 1.6vw, 1.375rem)/1.35 var(--nw-display) !important; letter-spacing: -0.015em; color: var(--respite-ink) !important; text-wrap: balance; text-align: left; }
@media (max-width: 1120px) {
  html body.care-page .care-time .care-uses { grid-template-columns: minmax(0, 1fr); gap: 24px !important; }
  html body.care-page .care-time .care-uses-foot { grid-template-columns: minmax(0, 1fr); row-gap: 18px; padding: 24px 22px; margin-top: 28px; border-radius: var(--r); }
  html body.care-page .care-time .care-uses-foot > .care-uses-more { padding: 0 !important; }
  html body.care-page .care-time .care-uses-foot > .care-uses-note { padding: 18px 0 0 !important; border-left: 0; border-top: 1px solid rgba(27, 42, 74, 0.18); }
}
@media (min-width: 721px) and (max-width: 1120px) { html body.care-page .care-time .care-uses { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px !important; } }
html body.care-page .care-time > .nw-head > .nw-anchor { position: absolute !important; }
@media (min-width: 1121px) {
  html body.care-page .care-time > .nw-head > .nw-heading { grid-column: 1; grid-row: 1; }
  html body.care-page .care-time > .nw-head > .nw-lede { grid-column: 2; grid-row: 1; }
}
html body.care-page .care-time .care-use h3 { font-size: 1.1875rem !important; text-wrap: pretty; }
html body.care-page .care-time .care-uses-foot > .care-uses-more h3 { position: static !important; width: auto !important; max-width: none !important; white-space: normal; grid-column: auto !important; grid-row: auto !important; }
html body.care-page .care-time .care-uses-foot > .care-uses-more > * { grid-column: auto !important; grid-row: auto !important; }
html body.care-page .care-time .care-uses-foot > .care-uses-more > h3 { align-self: stretch; }

/* ===== Providers polish (Oct 2026) ===== */
html body .pv-team-photo { margin: 32px 0 40px; }
html body .pv-team-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 629; object-fit: cover; border-radius: var(--r-lg); }
html body .pv-team-photo figcaption { margin-top: 10px; font: 400 0.875rem/1.45 var(--nw-text); color: var(--slate); }
html body .pv-team-photo figcaption strong { font-weight: 600; color: var(--navy); }
@media (max-width: 720px) { html body .pv-team-photo { margin: 20px 0 28px; } html body .pv-team-photo img { aspect-ratio: 900 / 471; border-radius: var(--r); } }
/* Situation cards: standard white card with a service-color top edge */
html body .pv-situations .pv-situation { background: var(--white) !important; border: 1px solid var(--rule) !important; border-top: 4px solid var(--respite-deep) !important; border-radius: var(--r) !important; box-shadow: var(--card-lift, 0 8px 24px rgba(27, 42, 74, 0.06)) !important; display: flex; flex-direction: column; }
html body .pv-situations .pv-situation--nav { border-top-color: var(--navigation-deep) !important; }
html body .pv-situations .pv-situation-result { margin-top: auto !important; }
html body .pv-situations .pv-situation h3 { font-style: normal; }
/* Other good moments: a plain list with sparkle bullets, no pills */
html body .pv-moments { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 28px; margin-top: 28px; }
html body .pv-moments .pv-moments-label { margin: 0; flex: 1 0 100%; font: 700 var(--fs-body)/1.3 var(--nw-display); color: var(--navy); }
html body .pv-moments ul { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0; padding: 0; list-style: none; }
html body .pv-moments li { display: flex; align-items: center; gap: 8px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; font-size: var(--fs-small); color: var(--navy); white-space: nowrap; }
html body .pv-moments li::before { content: ""; flex: none; width: 12px; height: 12px; background: var(--coral); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
@media (max-width: 720px) { html body .pv-moments ul { flex-direction: column; gap: 8px; } html body .pv-moments li { white-space: normal; } }
/* Copy note button on one line */
html body .pv-copy { white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; width: auto; }
html body .pv-copy span { white-space: nowrap; }

/* ===== Care Services option A (Oct 2026): one header pattern, one bullet, one photo format ===== */
html body.care-page main .nw-anchor { position: absolute !important; }
@media (min-width: 1121px) {
  html body.care-page main > section .nw-head:has(> .nw-lede), html body.care-page main > section .nw-head.split-head, html body.care-page .nw-care-pricing-intro { display: grid !important; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 56px; align-items: start; max-width: none !important; margin-bottom: 40px !important; }
  html body.care-page main > section .nw-head:has(> .nw-lede) > .nw-heading, html body.care-page main > section .nw-head.split-head > .nw-heading, html body.care-page .nw-care-pricing-intro > .nw-heading-help { grid-column: 1; grid-row: 1; margin: 0 !important; }
  html body.care-page main > section .nw-head:has(> .nw-lede) > .nw-lede, html body.care-page main > section .nw-head.split-head > .split-head-row, html body.care-page .nw-care-pricing-intro > .nw-lede { grid-column: 2; grid-row: 1; margin: 0 !important; padding-top: 6px; max-width: 60ch; }
  html body.care-page main > section .nw-head.split-head > .split-head-row > .nw-lede { margin: 0 !important; }
}
html body.care-page .nw-care-pricing-intro > .nw-lede a { color: var(--navy); text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; font-weight: 600; white-space: nowrap; }
/* One bullet: the periwinkle sparkle */
html body.care-page .nw-support-detail :is(.nw-support-topic, .nw-support-intro, .nw-support-copy) { border: 0 !important; box-shadow: none !important; }
html body.care-page .nw-support-detail .nw-support-topic > svg, html body.care-page .care-team .nw-point > svg { display: none !important; }
html body.care-page .nw-support-detail .nw-support-topic > h3, html body.care-page .care-team .nw-point > h3 { display: flex; align-items: baseline; gap: 10px; }
html body.care-page .nw-support-detail .nw-support-topic > h3::before, html body.care-page .care-team .nw-point > h3::before { content: ""; flex: none; width: 14px; height: 14px; transform: translateY(1px); background: var(--respite-deep); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
html body.care-page .nw-support-detail .nw-support-topic > p, html body.care-page .care-team .nw-point > p { padding-left: 24px; }
@media (min-width: 721px) { html body.care-page .nw-support-detail .nw-support-topic, html body.care-page .care-team .nw-point { padding-left: 0 !important; grid-template-columns: none !important; display: block !important; } }
@media (max-width: 720px) {
  html body.care-page .nw-support-detail .nw-support-topic > h3:has(> .mc-btn)::before { display: none; }
  html body.care-page .nw-support-detail .nw-support-topic > p { padding-left: 0; }
}
/* Home and outing: smaller drawing, level with its list */
@media (min-width: 1121px) {
  html body.care-page .nw-safety-row, html body.care-page .nw-safety-row--reverse { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) !important; column-gap: 48px; align-items: center !important; }
  html body.care-page .nw-safety-art .nw-pinned { max-width: 440px !important; margin: 0 auto; }
  html body.care-page .nw-safety-row--reverse > .nw-safety-art { order: 0; }
}
/* Team photo: one wide band */
@media (min-width: 721px) { html body.care-page .care-team-photo img { height: 300px !important; aspect-ratio: auto !important; object-fit: cover; object-position: 50% 30%; } }
/* How we prepare: shorter photos, four steps in one row */
@media (min-width: 721px) { html body.care-page #family-care-plan .nw-photo img { height: 220px !important; } }
@media (min-width: 1121px) { html body.care-page #family-care-plan ol.nw-steps--four { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 28px !important; } }
@media (min-width: 721px) and (max-width: 1120px) { html body.care-page #family-care-plan ol.nw-steps--four { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 28px !important; } }
html body.care-page #family-care-plan .nw-plan-detail { align-items: start; }
html body.care-page #family-care-plan .nw-plan-intro { display: flex !important; flex-direction: column; gap: 10px; grid-template-columns: none !important; padding-left: 0 !important; }
html body.care-page #family-care-plan .nw-plan-intro > * { grid-column: auto !important; grid-row: auto !important; margin-left: 0 !important; text-align: left; }
@media (max-width: 720px) {
  html body.care-page main .nw-support-detail .nw-support-topic.mc, html body.care-page .care-team .nw-point.mc { grid-template-columns: minmax(0, 1fr) !important; padding-left: 0 !important; }
  html body.care-page main .nw-support-detail .nw-support-topic.mc > *, html body.care-page .care-team .nw-point.mc > * { grid-column: 1 !important; padding-left: 0 !important; }
  html body.care-page .care-team .nw-point > h3:has(> .mc-btn)::before { display: none; }
}
@media (max-width: 720px) {
  html body.care-page main section .nw-support-detail .nw-support-topic, html body.care-page main section .care-team .nw-point { grid-template-columns: minmax(0, 1fr) !important; padding-left: 0 !important; column-gap: 0 !important; }
  html body.care-page main section .nw-support-detail .nw-support-topic > *, html body.care-page main section .care-team .nw-point > * { grid-column: 1 / -1 !important; padding-left: 0 !important; }
  html body.care-page main section .nw-support-detail .nw-support-topic > h3::before, html body.care-page main section .care-team .nw-point > h3::before { display: none !important; }
}
@media (max-width: 720px) { html body.care-page main section .nw-support-detail .nw-support-topic.mc > h3, html body.care-page main section .nw-support-detail .nw-support-topic.mc > p, html body.care-page main section .nw-support-detail .nw-support-topic.mc > div, html body.care-page main section .care-team .nw-point.mc > h3 { grid-column: 1 / -1 !important; grid-row: auto !important; } }
/* Care: Family Care Plan checklist tighter */
html body.care-page .nw-plan-sheet { padding: 24px 28px !important; }
html body.care-page .nw-plan-sheet .nw-plan-label { white-space: nowrap; margin: 0 0 6px !important; }
html body.care-page .nw-plan-sheet h3 { margin: 0 0 12px !important; }
html body.care-page .nw-plan-sheet ul { display: flex !important; flex-direction: column; gap: 6px !important; margin: 0 !important; padding: 0 !important; }
html body.care-page .nw-plan-sheet li { padding-block: 0 !important; margin: 0 !important; min-height: 0 !important; border: 0 !important; line-height: 1.45; }
html body.care-page main section .nw-plan-sheet ul > li { padding: 0 0 0 26px !important; }
html body.care-page main section .nw-plan-sheet .nw-plan-label { white-space: nowrap !important; width: auto !important; max-width: none !important; }
html body.care-page #family-care-plan .nw-plan-sheet ul > li { padding-top: 0 !important; padding-bottom: 0 !important; }
html body.care-page #family-care-plan .nw-plan-sheet ul { gap: 8px !important; }
html body.care-page #family-care-plan .nw-plan-sheet ul > li::before, html body.care-page #family-care-plan .nw-plan-sheet ul > li > svg { top: 5px !important; margin-top: 0 !important; }
/* Careers: role details in grouped blocks (heading stays with its content) */
html body .nw-role-detail { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 48px !important; align-items: start; }
html body .nw-role-detail > .nw-role-block { display: flex; flex-direction: column; gap: 10px; min-width: 0; grid-column: auto !important; grid-row: auto !important; }
html body .nw-role-detail > .nw-role-block > * { margin: 0 !important; grid-column: auto !important; grid-row: auto !important; }
html body .nw-role-detail > .nw-role-block ul { display: flex; flex-direction: column; gap: 8px; padding-left: 20px; }
html body .nw-role-detail > .nw-role-block li { margin: 0 !important; }
html body .nw-role-detail > aside { grid-column: 1 / -1 !important; margin: 0 !important; }
@media (max-width: 720px) { html body .nw-role-detail { grid-template-columns: minmax(0, 1fr); gap: 24px !important; } }

/* Chosen beige sections (Oct 2026): original light paper, a few per page, never next to a service tint */
html body main > section.tone-beige:is(.tone-paper, .tone-white, *):not(.tone-care):not(.tone-nav) { background-color: var(--paper) !important; background-image: none !important; border-top: 0 !important; }
html body main > section.tone-beige + section:is(.tone-paper, .tone-white, *):not(.tone-care):not(.tone-nav):not(#care-specialists) { border-top: 0 !important; }
/* Home pricing strips: label never breaks mid-word */
html body.home-page .home-price-strip :is(.home-price-strip-label, .hps-label, p:first-child, span:first-child) { white-space: nowrap; }

/* ===== News (Oct 2026) ===== */
.news-list { list-style: none; margin: 0; padding: 0; max-width: 860px; display: flex; flex-direction: column; }
.news-item { padding: 28px 0; border-top: 1px solid var(--rule); display: flex; flex-direction: column; gap: 8px; }
.news-item:first-child { border-top: 0; padding-top: 0; }
.news-meta { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; font: 600 var(--fs-small)/1.3 var(--nw-text); color: var(--slate); }
.news-label { font: 700 0.75rem/1.3 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--coral-ink); }
.news-item h2 { margin: 0; font: 800 clamp(1.375rem, 2.2vw, 1.75rem)/1.2 var(--nw-display); letter-spacing: -0.02em; text-wrap: balance; }
.news-item h2 a { color: var(--navy); text-decoration: none; }
.news-item h2 a:hover { text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.news-item > p:last-child { margin: 0; max-width: 68ch; color: var(--slate); line-height: 1.6; }
.news-page .nw-hero-compact h1 { max-width: 24ch; text-wrap: balance; }
.news-release { max-width: 760px; display: flex; flex-direction: column; gap: 40px; }
.news-photo { margin: 0; display: flex; flex-direction: column; gap: 10px; }
.news-photo img { display: block; width: 100%; height: auto; max-height: 460px; object-fit: cover; border-radius: var(--r-lg); }
.news-photo--tall img { aspect-ratio: 4 / 3; object-position: 45% 50%; }
.news-photo figcaption { font: 400 0.875rem/1.45 var(--nw-text); color: var(--slate); }
.news-photo figcaption strong { font-weight: 600; color: var(--navy); }
.news-body { display: flex; flex-direction: column; gap: 18px; }
.news-body p, .news-body li { margin: 0; font-size: 1.0625rem; line-height: 1.7; color: var(--navy); }
.news-body ul { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 10px; }
.news-body a, .news-boiler a { color: var(--navy); text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.news-dateline { font-weight: 700; }
.news-end { text-align: center; color: var(--slate); letter-spacing: 0.3em; }
.news-boiler { padding: 28px 32px; border-radius: var(--r-lg); background: var(--paper); display: flex; flex-direction: column; gap: 12px; }
.news-boiler h2, .news-more h2 { margin: 0; font: 700 var(--fs-label)/1.3 var(--nw-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--slate); }
.news-boiler p { margin: 0; line-height: 1.6; color: var(--navy); }
.news-more { display: flex; flex-direction: column; gap: 14px; padding-top: 28px; border-top: 1px solid var(--rule); }
.news-more ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.news-more li { display: flex; flex-direction: column; gap: 2px; }
.news-more li a { font: 700 1.0625rem/1.35 var(--nw-display); color: var(--navy); text-decoration: none; }
.news-more li a:hover { text-decoration: underline; text-decoration-color: var(--coral); }
.news-more time { font-size: var(--fs-small); color: var(--slate); }
@media (max-width: 720px) {
  .news-item { padding: 22px 0; }
  .news-release { gap: 28px; }
  .news-boiler { padding: 22px 20px; border-radius: var(--r); }
  .news-body p, .news-body li { font-size: 1rem; }
}
html body .news-page .news-list .news-item h2 a { font: inherit; color: var(--navy); text-decoration: none; }
html body .news-page .news-list .news-item h2 a:hover { text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; }
html body .news-page .news-item h2 { font-weight: 800; }
.news-meta time, .news-more time { white-space: nowrap; }
html body .news-page .nw-hero-compact .page-lede a { color: #fff; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; white-space: nowrap; }
html body .news-page .news-more li a { font: 700 1.0625rem/1.35 var(--nw-display); text-decoration: none; }
.news-more > .alink { align-self: flex-start; }
html body.news-page .nw-hero-compact .page-lede a, html body.news-page .nw-hero-compact .page-lede a:visited { color: #fff !important; -webkit-text-fill-color: #fff; opacity: 1; }
html body.news-page .nw-hero-compact .page-lede a:hover { color: var(--coral) !important; -webkit-text-fill-color: var(--coral); }

/* Handwritten aside: real lettering cut from the brand graphic */
.nw-handnote { display: inline-block; height: 0.78em; width: auto; vertical-align: -0.08em; margin-left: 0.2em; }
.nw-handnote--block { display: block; height: 0.8em; margin: 0.08em 0 0 -0.03em; }
@media (max-width: 720px) { .svc-band-title .nw-handnote { display: block; margin: 4px 0 0; height: 0.85em; } }
.svc-band-name { white-space: nowrap; flex: none; }

/* ===== New event photos (Oct 2026) ===== */
.pricing-photo, .nav-begin-photo, .about-mission-photo { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.pricing-photo img, .nav-begin-photo img, .about-mission-photo img { display: block; width: 100%; height: auto; object-fit: cover; border-radius: var(--r-lg); }
.pricing-photo figcaption, .nav-begin-photo figcaption, .about-mission-photo figcaption { font: 400 var(--fs-small, 15px)/1.45 var(--nw-text); color: var(--slate); }
.pricing-photo figcaption strong, .nav-begin-photo figcaption strong { font-weight: 600; color: var(--navy); }
html body.pricing-page .pricing-intro .pricing-photo { position: static; transform: none; width: auto; height: auto; grid-column: 2; grid-row: 1 / 3; align-self: start; }
html body.pricing-page .pricing-intro .pricing-photo img { aspect-ratio: 3 / 2; }
@media (min-width: 1121px) {
  html body.pricing-page .pricing-intro { display: grid !important; grid-template-columns: minmax(0, 1fr) 460px !important; column-gap: 64px; align-items: center; max-width: none !important; padding-right: 0 !important; }
  html body.pricing-page .pricing-intro > :not(.pricing-photo) { grid-column: 1; max-width: 62ch; margin: 0 !important; }
  html body.pricing-page .pricing-intro { row-gap: 16px; }
  html body.pricing-page .pricing-intro > :first-child { align-self: end; grid-row: 1; }
  html body.pricing-page .pricing-intro > .nw-lede { align-self: start; grid-row: 2; }
  html body.pricing-page .pricing-intro .pricing-photo { grid-column: 2 !important; grid-row: 1 / span 2 !important; justify-self: stretch; width: 100% !important; }
}
@media (max-width: 1120px) { html body.pricing-page .pricing-intro { padding-right: 0 !important; } html body.pricing-page .pricing-intro .pricing-photo { grid-column: 1; grid-row: auto; margin-top: 20px; } }
.nav-begin-photo { margin: 32px 0 8px; }
.nav-begin-photo img { aspect-ratio: 5 / 2; object-position: 50% 18%; }
.about-mission-photo { margin: 40px 0; }
.about-mission-photo img { aspect-ratio: 2.4 / 1; object-position: 50% 40%; }
@media (max-width: 720px) {
  .nav-begin-photo img { aspect-ratio: 4 / 3; }
  .about-mission-photo img { aspect-ratio: 4 / 3; object-position: 45% 40%; }
  .about-mission-photo { margin: 28px 0; }
}
@media (min-width: 721px) {
  html body .careers-training--three { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  html body .careers-training--three .nw-photo { display: flex; flex-direction: column; gap: 8px; margin: 0; }
  html body .careers-training--three .nw-photo img { width: 100%; height: 260px; object-fit: cover; aspect-ratio: auto; }
  html body .careers-training--three .nw-photo figcaption { margin: 0; }
  html body.care-page .nw-photos--three { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  html body.care-page .nw-photos--three .nw-photo img { width: 100%; height: 240px !important; object-fit: cover; aspect-ratio: auto; }
}
/* News list with thumbnails */
.news-item--thumb { display: grid !important; grid-template-columns: 240px minmax(0, 1fr); column-gap: 32px; align-items: start; }
.news-item-text { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.news-thumb { display: block; aspect-ratio: 3 / 2; border-radius: var(--r); overflow: hidden; background: var(--paper); }
.news-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.news-thumb--mark { background: var(--navy); display: grid; place-items: center; }
.news-thumb--mark span { width: 44px; height: 44px; background: var(--coral); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
@media (max-width: 720px) {
  .news-item--thumb { grid-template-columns: 112px minmax(0, 1fr); column-gap: 16px; }
  .news-item--thumb .news-item-text > p:not(.news-meta) { display: none; }
  .news-item--thumb h2 { font-size: 1.125rem !important; }
  .news-thumb--mark span { width: 28px; height: 28px; }
}

/* No sticky side columns below desktop width (they overlapped content while scrolling on tablets) */
@media (max-width: 1120px) {
  .interior-page .nw-split--faq > div:first-child:has(> .nw-heading) { position: static !important; }
  html body.care-page .nw-opening-art > .nw-art--scene { position: static !important; }
}

/* ===== Contact (Oct 2026): form first, help text below it, compact steps on phones ===== */
html body .nw-contact .nw-formcard .nw-heading { margin: 0 !important; }
html body .nw-contact .nw-formcard iframe { margin-top: 4px !important; }
html body .nw-contact .nw-formcard .nw-fine--after { margin: 16px 0 0 !important; padding-top: 14px; border-top: 1px solid var(--rule); font-size: var(--fs-small); color: var(--slate); }
.contact-steps { display: none; }
@media (min-width: 1121px) {
  html body .nw-contact { grid-template-rows: auto auto 1fr !important; row-gap: 28px; }
  html body .nw-contact > .nw-formcard { grid-column: 1 !important; grid-row: 1 / span 3 !important; }
  html body .nw-contact > .nw-contact-intro { grid-column: 2 !important; grid-row: 1 !important; }
  html body .nw-contact > .nw-aside { grid-column: 2 !important; grid-row: 2 !important; margin: 0 !important; }
  html body .nw-contact > .nw-direct { grid-column: 2 !important; grid-row: 3 !important; align-self: start; margin: 0 !important; }
  html body .nw-contact .consultation-person { margin-bottom: 0 !important; }
}
@media (max-width: 1120px) {
  html body .nw-contact { display: flex !important; flex-direction: column; gap: 28px; }
  html body .nw-contact > .nw-formcard { order: 1 !important; }
  html body .nw-contact > .nw-contact-intro { order: 2 !important; }
  html body .nw-contact > .nw-aside { display: none !important; }
  html body .nw-contact > .nw-direct { order: 3 !important; margin: 0 !important; }
  html body .nw-contact .consultation-person { margin-bottom: 0 !important; }
  .contact-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; list-style: none; margin: 12px 0 4px; padding: 0; counter-reset: cs; }
  .contact-steps li { counter-increment: cs; display: flex; flex-direction: column; gap: 6px; min-width: 0; overflow-wrap: anywhere; text-wrap: balance; font: 600 0.8125rem/1.3 var(--nw-text); color: var(--navy); }
  .contact-steps li::before { content: counter(cs); display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--coral); color: var(--navy); font: 800 0.75rem/1 var(--nw-display); }
}
html body .nw-contact > .nw-direct h2 { margin: 0 0 10px; font: 800 var(--fs-lede)/1.25 var(--nw-display) !important; letter-spacing: -0.01em; color: var(--navy); }
html body .nw-contact > .nw-direct h2::before { display: none; }
html body .nw-contact > .nw-direct { padding-top: 0; border-top: 0 !important; }
html body .nw-contact > .nw-direct p { margin: 6px 0 0; }

/* Contact (Oct 2026): form first and tight under its heading; help lines below it */
html body .nw-contact .nw-formcard .nw-form-status { margin: 12px 0 0 !important; padding: 0 !important; background: none !important; color: var(--slate); font-size: var(--fs-small); }
html body .nw-contact .nw-formcard .nw-form-status[hidden] { display: none; }
@media (max-width: 1120px) {
  html body .nw-contact > .nw-formcard { order: 1 !important; }
  html body .nw-contact > .nw-aside { display: block !important; order: 2 !important; margin: 0 !important; padding-top: 24px; border-top: 1px solid var(--rule); }
  html body .nw-contact > .nw-contact-intro { order: 3 !important; }
  html body .nw-contact > .nw-direct { order: 4 !important; }
  html body .nw-contact > .nw-aside .nw-steps { margin-top: 14px; }
}
@media (max-width: 720px) {
  html body.contact-page .nw-hero-compact { padding-top: 28px !important; padding-bottom: 28px !important; }
  html body.contact-page main > section.nw-section:first-of-type, html body.contact-page .nw-hero-compact + .nw-section { padding-top: 20px !important; }
  html body .nw-contact { gap: 24px !important; }
  html body .nw-contact > .nw-formcard { padding: 20px 16px !important; margin-inline: -6px; }
}

/* ===== Contact 3a (Oct 2026): two paths in one card ===== */
html body .nw-contact > .nw-direct { display: none !important; }
html body .nw-formcard.cf { padding: 0 !important; overflow: hidden; border-top: 1px solid var(--rule) !important; }
.cf-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 6px; background: #f1f3f6; }
.cf-tabs[hidden] { display: none; }
.cf-tabs button { all: unset; box-sizing: border-box; cursor: pointer; min-height: 52px; display: flex; align-items: center; justify-content: center; text-align: center; padding: 8px 10px; border-radius: 14px; font: 700 var(--fs-body)/1.2 var(--nw-text); color: var(--navy); transition: background-color .2s, color .2s, box-shadow .2s; }
.cf-tabs button:hover { background: rgba(27, 42, 74, 0.06); }
.cf-tabs button[aria-selected="true"] { background: var(--navy); color: #fff; box-shadow: 0 2px 6px rgba(27, 42, 74, 0.18); }
.cf-tabs button:focus-visible { outline: 2px solid var(--coral); outline-offset: 2px; }
.cf-panel { padding: 28px 32px 8px; }
.cf-panel[hidden] { display: none; }
html body .nw-contact .cf-panel .nw-heading { margin: 0 0 16px !important; }
.cf-ask-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nw-formcard.cf:not(.is-tabs) .cf-ask-title { position: static; width: auto; height: auto; clip: auto; white-space: normal; }
.nw-formcard.cf:not(.is-tabs) #cf-ask { border-top: 1px solid var(--rule); }
.cf-steps { list-style: none; margin: 0 0 18px; padding: 0 0 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; counter-reset: cfs; position: relative; border-bottom: 1px solid var(--rule); }
.cf-steps::before { content: ""; position: absolute; left: 12px; right: calc(33.33% - 12px); top: 12px; border-top: 1px dashed var(--coral); }
.cf-steps li { position: relative; counter-increment: cfs; display: flex; flex-direction: column; gap: 6px; min-width: 0; font: 600 0.875rem/1.3 var(--nw-text); color: var(--slate); text-wrap: balance; }
.cf-steps li::before { content: counter(cfs); display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--coral-30); color: var(--navy); font: 800 0.75rem/1 var(--nw-display); }
.cf-steps li.is-current { color: var(--navy); }
.cf-steps li.is-current::before { background: var(--coral); }
html body .nw-contact .nw-formcard.cf iframe { margin-top: 0 !important; }
html body .nw-contact .nw-formcard.cf .nw-form-status { margin: 8px 0 0 !important; padding: 0 !important; background: none !important; color: var(--slate); font-size: var(--fs-small); }
.cf-fallback { margin: 8px 0 16px; font-size: var(--fs-small); color: var(--slate); }
.cf-foot { padding: 16px 32px 18px; border-top: 1px solid var(--rule); background: var(--white); display: flex; flex-direction: column; gap: 2px; }
.cf-foot > span { font-size: var(--fs-small); color: var(--slate); }
.cf-foot p { margin: 0; font: 700 var(--fs-body)/1.5 var(--nw-text); color: var(--navy); }
.cf-foot a { color: var(--navy); }
.cf-foot .cf-legal { margin-top: 6px; font: 400 var(--fs-small)/1.5 var(--nw-text); }
.cf-foot .cf-legal a { color: var(--slate); }
.cf-region { margin: 12px 0 0 !important; font-size: var(--fs-small) !important; color: var(--slate); }
@media (min-width: 1121px) {
  html body .nw-contact { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr) !important; grid-template-rows: auto 1fr !important; row-gap: 28px; column-gap: 48px; }
  html body .nw-contact > .nw-formcard { grid-column: 1 !important; grid-row: 1 / span 2 !important; }
  html body .nw-contact > .nw-contact-intro { grid-column: 2 !important; grid-row: 1 !important; }
  html body .nw-contact > .nw-aside { display: block !important; grid-column: 2 !important; grid-row: 2 !important; margin: 0 !important; }
  .cf-steps { display: none; }
}
@media (max-width: 1120px) {
  html body .nw-contact { display: flex !important; flex-direction: column; gap: 28px; max-width: 760px; }
  html body .nw-contact > .nw-formcard { order: 1 !important; }
  html body .nw-contact > .nw-contact-intro { order: 2 !important; }
  html body .nw-contact > .nw-aside { display: none !important; }
}
@media (max-width: 720px) {
  html body .nw-contact > .nw-formcard.cf { padding: 0 !important; margin-inline: -6px; }
  .cf-tabs button { min-height: 48px; font-size: 0.9375rem; padding: 8px 6px; }
  .cf-panel { padding: 20px 16px 4px; }
  .cf-foot { padding: 14px 16px 16px; }
  .cf-steps li { font-size: 0.8125rem; }
}

/* Lower-friction second path under closing CTAs (Oct 2026) */
html body .cta .cta-action .cta-alt { margin: 10px 0 0; font: 400 var(--fs-small)/1.45 var(--nw-text); color: rgba(255, 255, 255, 0.85); }
html body .cta .cta-action .cta-alt a, html body .cta .cta-inner p a { color: #fff; font-weight: 700; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
html body .cta .cta-action .cta-alt a:hover { color: var(--coral); }
.news-question { margin: 12px 0 0; font-size: var(--fs-small); color: var(--slate); }
.news-question a { color: var(--navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
html body main .cta :is(.cta-action .cta-alt, .cta-inner p) a:not(.btn) { color: #fff !important; }
html body main .cta :is(.cta-action .cta-alt, .cta-inner p) a:not(.btn):hover { color: var(--coral) !important; }

/* ===== Family voices (Oct 2026) ===== */
.voices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 32px 0 0; }
html body main figure.voice { position: relative; margin: 0; padding: 30px 32px 26px; display: flex; flex-direction: column; gap: 18px; background: var(--white); border: 1px solid var(--rule); border-top: 4px solid var(--respite-deep); border-radius: 24px; box-shadow: var(--card-lift, 0 1px 2px rgba(27, 42, 74, 0.06), 0 8px 24px rgba(27, 42, 74, 0.06)); }
html body main figure.voice::before { content: "“"; display: block; height: 30px; margin: -2px 0 -6px; font: 800 4.5rem/0.9 var(--nw-display); color: var(--coral); }
html body main figure.voice blockquote { margin: 0; padding: 0; border: 0; }
html body main figure.voice blockquote p { margin: 0; font: italic 500 1.1875rem/1.55 var(--nw-text); color: var(--navy); text-wrap: pretty; max-width: none; }
html body main figure.voice figcaption { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--rule); display: flex; flex-wrap: wrap; gap: 2px 10px; align-items: baseline; font: 400 var(--fs-small)/1.4 var(--nw-text); color: var(--slate); }
html body main figure.voice figcaption strong { font-weight: 700; color: var(--navy); }
html body main figure.voice figcaption span::before { content: "·"; margin-right: 10px; color: var(--slate-light); }
html body main figure.voice--feature { max-width: 860px; margin: 40px auto 0; padding: 40px 48px 32px; border-top-color: var(--coral); text-align: center; align-items: center; }
html body main figure.voice--feature blockquote p { font-size: 1.5rem; line-height: 1.45; text-wrap: balance; }
html body main figure.voice--feature figcaption { justify-content: center; align-self: stretch; }
.voices--plans { margin: 24px 0 8px; }
@media (max-width: 720px) {
  .voices { grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 24px; }
  html body main figure.voice { padding: 24px 20px 20px; gap: 14px; border-radius: 20px; }
  html body main figure.voice::before { font-size: 3.75rem; height: 24px; }
  html body main figure.voice blockquote p { font-size: 1.0625rem; }
  html body main figure.voice--feature { padding: 28px 22px 22px; margin-top: 28px; }
  html body main figure.voice--feature blockquote p { font-size: 1.1875rem; }
}
/* Hero nudge line (Pricing, Guides) */
html body .hero-nudge { margin: 14px 0 0; font: 400 var(--fs-body)/1.5 var(--nw-text); color: rgba(255, 255, 255, 0.85); }
html body main .hero-nudge a { color: #fff !important; font-weight: 700; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
html body main .hero-nudge a:hover { color: var(--coral) !important; }
/* Mid-article nudge in guides */
html body main .guide-nudge { margin: 36px 0; padding: 16px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font: 600 var(--fs-body)/1.5 var(--nw-display); color: var(--navy); }
html body main .guide-nudge a { color: var(--navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 3px; }
/* Mobile menu: direct line under the button */
.nav-panel-direct { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 12px; margin: 14px 0 4px !important; font: 600 var(--fs-body)/1.4 var(--nw-text); color: rgba(255, 255, 255, 0.7); }
html body .nav-panel-inner .nav-panel-direct a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 !important; border: 0 !important; color: #fff; font-weight: 700; text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 4px; }
/* Contact: reply time under "Send us a note." */
html body .nw-contact .cf-sub { margin: -8px 0 12px; font-size: var(--fs-small); color: var(--slate); }

/* Hero bubble centered over line 1 ("Flexible in-home childcare."), tail aimed at "childcare" (Oct 2026) */
html body.home-page .hero--home .home-hero-primary { --bubble-shift: 0px; }
html body.home-page .hero--home .hero-bubble { align-self: flex-start !important; margin-left: 0 !important; margin-right: 0 !important; translate: var(--bubble-dx, 0px) 0 !important; white-space: nowrap !important; }
html body.home-page .hero--home .hero-bubble::after { left: var(--tail-x, 72%) !important; right: auto !important; }

/* ===== Carried over from external fixes (Oct 2026): nothing sticks over content on phones/tablets ===== */
@media (max-width: 1120px) {
  :where(body:not(.home-page)) .nw-faq-rail, :where(body:not(.home-page)) .nw-faq-categories { position: static !important; top: auto !important; z-index: auto !important; }
  .interior-page .nw-split--faq > .nw-heading, .interior-page .nw-split--faq > div:first-child:has(> .nw-heading) { position: static !important; top: auto !important; }
  html:where(:has(> body:not(.home-page))):has(.nw-faq-categories) { scroll-padding-top: calc(var(--header-height) + 16px); }
}
@media (min-width: 1121px) {
  .interior-page .nw-split--faq > .nw-heading, .interior-page .nw-split--faq > div:first-child:has(> .nw-heading) { top: calc(var(--header-height) + 24px) !important; }
  :where(body:not(.home-page)) .nw-doc-rail { top: calc(var(--header-height) + 24px) !important; max-height: calc(100dvh - var(--header-height) - 48px); overflow-y: auto; }
}
@media (max-width: 720px) {
  html body.home-page #services .home-compare.mC--line .mC-table thead tr { position: static !important; top: auto !important; z-index: auto !important; }
}
/* ===== Home hero: "(not therapy)" after line 1 (1a) ===== */
html body.home-page .hero--home .hero-line--first { white-space: nowrap; }
html body.home-page .hero--home img.nw-handnote--hero { display: inline-block; width: auto; height: 0.66em; margin: 0 0 0 0.24em; vertical-align: 0.2em; transform: rotate(-6deg); transform-origin: left center; max-width: none; }
@media (max-width: 720px) {
  html body.home-page .hero--home h1 { font-size: min(var(--hero-h1, 30px), calc((100vw - 40px) / 13.6)) !important; }
  html body.home-page .hero--home img.nw-handnote--hero { display: block; height: 30px; margin: 4px auto 6px; vertical-align: 0; transform: rotate(-4deg); transform-origin: center; }
}

/* Hero bubble tail: stays on the bubble's flat bottom edge and leans toward "childcare" */
html body.home-page .hero--home .hero-bubble::after { left: var(--tail-x, 62%) !important; right: auto !important; bottom: -0.55em !important; width: 0.95em !important; height: 0.65em !important; clip-path: polygon(0 0, 100% 0, var(--tail-tip, 30%) 100%) !important; }

/* Family voices: 5/5 stars replace the quote mark (not on the clinician feature quote) */
html body main figure.voice:has(> .voice-stars)::before { content: none; display: none; }
.voice-stars { margin: 0; display: flex; align-items: center; gap: 10px; }
.voice-stars-row { display: block; width: 116px; height: 20px; background: url(images/brand/star-coral.png) left center / 20px 20px space; }
.voice-stars-score { font: 800 var(--fs-small)/1 var(--nw-display); color: var(--navy); letter-spacing: 0.02em; }
@media (max-width: 720px) { .voice-stars-row { width: 104px; height: 18px; background-size: 18px 18px; } }
/* Hero bubble: softer and more cartoony, with a curved tail */
html body.home-page .hero--home .hero-bubble { rotate: -2deg; padding: 0.38em 1em 0.44em !important; box-shadow: 0 3px 0 rgba(27, 42, 74, 0.22), 0 12px 24px -12px rgba(232, 153, 141, 0.7) !important; }
html body.home-page .hero--home .hero-bubble::after { width: 1.1em !important; height: 0.8em !important; bottom: -0.72em !important; background: var(--coral) !important; clip-path: none !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H16C15.5 5 16.8 10.5 20.5 15.6C13 14.6 6.4 9.6 0 0Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H16C15.5 5 16.8 10.5 20.5 15.6C13 14.6 6.4 9.6 0 0Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }

/* Hero bubble: level, with a symmetric rounded tail */
html body.home-page .hero--home .hero-bubble { rotate: none; }
html body.home-page .hero--home .hero-bubble::after { width: 1em !important; height: 0.75em !important; bottom: -0.68em !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H20C15.6 2.6 12.2 7.6 10 16C7.8 7.6 4.4 2.6 0 0Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H20C15.6 2.6 12.2 7.6 10 16C7.8 7.6 4.4 2.6 0 0Z'/%3E%3C/svg%3E"); }

/* Review stars: standard gold rating stars */
html body .voice-stars-row { width: 112px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F5B301' d='M12 1.8l3.09 6.26 6.91 1-5 4.87 1.18 6.88L12 17.56l-6.18 3.25L7 13.93 2 9.06l6.91-1z'/%3E%3C/svg%3E") left center / 20px 20px space; }
@media (max-width: 720px) { html body .voice-stars-row { width: 100px; height: 18px; background-size: 18px 18px; } }

/* Hero bubble: level bubble, curved swoosh tail restored */
html body.home-page .hero--home .hero-bubble { rotate: none; }
html body.home-page .hero--home .hero-bubble::after { width: 1.1em !important; height: 0.8em !important; bottom: -0.72em !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H16C15.5 5 16.8 10.5 20.5 15.6C13 14.6 6.4 9.6 0 0Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16' preserveAspectRatio='none'%3E%3Cpath d='M0 0H16C15.5 5 16.8 10.5 20.5 15.6C13 14.6 6.4 9.6 0 0Z'/%3E%3C/svg%3E"); }

/* Hero bubble tail v3: classic comic tail, curved sides, softly rounded tip, base fused into the bubble; one shadow for bubble + tail */
html body.home-page .hero--home .hero-bubble { rotate: none; box-shadow: none !important; filter: drop-shadow(0 3px 0 rgba(27, 42, 74, 0.22)) drop-shadow(0 10px 12px rgba(232, 153, 141, 0.35)); }
html body.home-page .hero--home .hero-bubble::after { width: 1.2em !important; height: 0.9em !important; bottom: calc(-0.9em + 2px) !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0C6 1.6 10.6 7.4 12.9 16.4C13.2 17.6 14.6 17.7 14.9 16.5C15.9 9.6 18.4 3.4 24 0Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0C6 1.6 10.6 7.4 12.9 16.4C13.2 17.6 14.6 17.7 14.9 16.5C15.9 9.6 18.4 3.4 24 0Z'/%3E%3C/svg%3E"); }

/* Hero bubble: tail ends just above line 1, never on the letters */
html body.home-page .hero--home .hero-bubble { margin-bottom: calc(0.72em + 8px) !important; }
html body.home-page .hero--home .hero-bubble::after { width: 1.05em !important; height: 0.72em !important; bottom: calc(-0.72em + 2px) !important; }

@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { margin-bottom: calc(0.55em + 3px) !important; }
  html body.home-page .hero--home .hero-bubble::after { width: 0.95em !important; height: 0.55em !important; bottom: calc(-0.55em + 2px) !important; }
}

@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { margin-bottom: calc(0.7em + 3px) !important; }
  html body.home-page .hero--home .hero-bubble::after { width: 1.05em !important; height: 0.7em !important; bottom: calc(-0.7em + 2px) !important; }
  html body.home-page .hero--home .hero-bubble + h1, html body.home-page .hero--home h1 { margin-top: -0.26em !important; }
}

/* Hero bubble: restore the original style (small sharp tail, solid drop shadow) */
html body.home-page .hero--home .hero-bubble { rotate: none; filter: none !important; box-shadow: 0 4px 0 rgba(27, 42, 74, 0.35), 0 10px 22px -10px rgba(232, 153, 141, 0.6) !important; padding: 0.34em 0.9em 0.4em !important; }
html body.home-page .hero--home .hero-bubble::after { -webkit-mask: none !important; mask: none !important; background: inherit !important; width: 0.9em !important; height: 0.6em !important; bottom: -0.5em !important; border-radius: 0 !important; transform: none !important; clip-path: polygon(0 0, 100% 0, 30% 100%) !important; }
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-bubble { margin-bottom: calc(0.5em + 4px) !important; }
  html body.home-page .hero--home .hero-bubble::after { width: 0.9em !important; height: 0.6em !important; bottom: -0.5em !important; }
}

/* Core values (navy panel): labels clearly visible */
html body main .nw-values .nw-value .nw-value-label { background: none !important; box-shadow: none !important; text-shadow: none !important; padding: 0 !important; border-radius: 0 !important; opacity: 1 !important; color: var(--coral-light) !important; font: 800 0.875rem/1.3 var(--nw-text) !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; }
html body main .nw-values .nw-value .nw-value-label::after, html body main .nw-values .nw-value .nw-value-label::before { content: none !important; display: none !important; }

/* "Now welcoming new families" (Oct 2026) */
.hero-welcome, .cf-welcome { display: flex; align-items: center; gap: 8px; margin: 14px 0 0; font: 600 var(--fs-small)/1.3 var(--nw-text); }
.hero-welcome { color: rgba(255, 255, 255, 0.88); }
.cf-welcome { margin: 0 0 12px; color: var(--navy); }
:is(.hero-welcome, .cf-welcome) > span { flex: none; width: 9px; height: 9px; border-radius: 50%; background: #7fd1a3; box-shadow: 0 0 0 4px rgba(127, 209, 163, 0.22); }
.cf-welcome > span { background: var(--navigation-deep); box-shadow: 0 0 0 4px rgba(122, 158, 138, 0.2); }
@media (max-width: 720px) { .hero-welcome { justify-content: center; } }
@media (min-width: 1121px) { html body .nw-contact > .cf-welcome { grid-column: 1 !important; grid-row: 1 !important; align-self: start; } html body .nw-contact > .nw-formcard { grid-row: 1 / span 2 !important; margin-top: 34px; } }
@media (max-width: 1120px) { html body .nw-contact > .cf-welcome { order: 0 !important; margin-bottom: -16px; } }
html body.home-page .hero--home .hero-welcome { order: 6 !important; margin-top: 12px; }
@media (min-width: 721px) { html body.home-page .hero--home .hero-welcome { justify-content: flex-start; } }
.cta-welcome { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font: 600 var(--fs-small)/1.3 var(--nw-text); color: rgba(255, 255, 255, 0.88); }
.cta-welcome > span { flex: none; width: 9px; height: 9px; border-radius: 50%; background: #7fd1a3; box-shadow: 0 0 0 4px rgba(127, 209, 163, 0.22); }
@media (max-width: 720px) { .cta-welcome { justify-content: center; } }

/* Home hero: location strip carries "Now welcoming new families" (Oct 2026) */
html body.home-page .hero--home .home-service-area { flex-wrap: wrap !important; row-gap: 6px; }
.hsa-short { display: none; }
html body .home-service-area .hsa-welcome { display: inline-flex !important; align-items: center; gap: 8px; font-weight: 600; }
html body .home-service-area .hsa-places { display: inline !important; }
html body .hsa-dot { display: block; flex: 0 0 8px !important; width: 8px !important; height: 8px !important; min-width: 8px; border-radius: 50%; background: #7fd1a3; box-shadow: 0 0 0 3px rgba(127, 209, 163, 0.25); }
@media (min-width: 721px) {
  html body .home-service-area .hsa-welcome { margin-left: 6px; padding-left: 14px; border-left: 1px solid rgba(255, 255, 255, 0.35); white-space: nowrap; flex: none !important; }
  html body.home-page .hero--home .home-service-area { max-width: none !important; width: auto !important; }
}
@media (max-width: 720px) {
  .hsa-long { display: none; }
  .hsa-short { display: inline; }
  html body.home-page .hero--home .home-service-area { justify-content: center; }
  html body.home-page .hero--home .hsa-welcome { flex: 0 0 100% !important; width: 100%; justify-content: center; white-space: nowrap; }
}

/* Home hero, phones: welcome line moves under the button; smaller (not therapy) */
.hero-welcome-m { display: none; }
@media (max-width: 720px) {
  html body.home-page .hero--home .home-service-area .hsa-welcome { display: none !important; }
  html body.home-page .hero--home .hero-welcome-m { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 12px 0 0; font: 600 0.875rem/1.3 var(--nw-text); color: rgba(255, 255, 255, 0.88); }
  html body.home-page .hero--home .hero-welcome-m .hsa-dot { width: 8px; height: 8px; border-radius: 50%; background: #7fd1a3; flex: none; }
  html body.home-page .hero--home .nw-handnote--hero { height: 0.72em !important; width: auto !important; display: block !important; margin: 0.1em auto 0.16em !important; position: static !important; inset: auto !important; transform: rotate(-4deg) !important; }
}

/* Home hero, phones: whole text block centered (exception to the left-aligned body rule) */
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-lede, html body.home-page .hero--home .hero-lede > span { text-align: center !important; margin-inline: auto !important; }
  html body.home-page .hero--home .btn-row { justify-content: center !important; }
}

/* ===== Home hero, phones: sized from the viewport height so the trust strip is always on the first screen (Oct 2026) =====
   Every vertical size below scales with svh (the visible height after browser bars). Tested 360x553 to 430x932. */
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-copy { padding-top: clamp(6px, calc(4svh - 14px), 30px) !important; padding-bottom: clamp(0px, calc(4svh - 20px), 28px) !important; }
  html body.home-page .hero--home .home-hero-secondary { margin-top: 0 !important; }
  html body.home-page .hero--home h1 { font-size: min(2.125rem, calc(100cqw / 12.8), 4.15svh) !important; }
  html body.home-page .hero--home .home-service-area { margin-top: clamp(6px, 1.8svh, 18px) !important; font-size: clamp(0.875rem, 2.6svh, 1rem) !important; }
  html body.home-page .hero--home .hero-lede { margin: clamp(8px, 2.2svh, 22px) auto 0 !important; max-width: 34ch !important; text-align: left !important; font-size: clamp(0.9375rem, 2.75svh, 1.0625rem) !important; line-height: clamp(1.4, 1.2 + 0.03 * (100svh / 100px), 1.5) !important; }
  html body.home-page .hero--home .hero-lede > span { text-align: left !important; }
  html body.home-page .hero--home .btn-row { margin-top: clamp(10px, 2.4svh, 24px) !important; }
  html body.home-page .hero--home .btn-row .btn { min-height: 44px !important; padding-block: clamp(10px, 1.9svh, 15px) !important; }
  html body.home-page .hero--home .hero-welcome-m { margin-top: clamp(6px, 1.4svh, 12px) !important; }
  html body.home-page .hero--home .hero-skyline .trust-badges { bottom: 6px !important; }
  html body.home-page .hero--home { display: flex !important; flex-direction: column !important; justify-content: space-between !important; min-height: min(calc(100svh - var(--header-height, 72px)), 660px) !important; height: auto !important; }
  html body.home-page .hero--home > .hero-grid { flex: none !important; }
  html body.home-page .hero--home .hero-skyline { flex: 1 1 32vw !important; height: auto !important; min-height: 32vw !important; max-height: 41.3vw !important; margin-top: clamp(0px, calc(1.6svh - 8px), 8px) !important; overflow: hidden; }
  html body.home-page .hero--home .hero-skyline > picture, html body.home-page .hero--home .hero-skyline > picture > img { display: block; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: 50% 100% !important; }
}

/* ===== Comparison chart, phones: true columns with one-word answers (Oct 2026) ===== */
.mC-s { display: none; }
@media (max-width: 720px) {
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table, html body.home-page #services .home-compare.mC--line.mC--cols .mC-table :is(thead, tbody) { display: block !important; width: 100% !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tr { display: grid !important; grid-template-columns: minmax(0, 1fr) 54px 54px 64px !important; column-gap: 4px !important; align-items: center !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead tr { position: static !important; background: var(--navy) !important; border-radius: 10px !important; padding: 0 4px 0 12px !important; margin: 0 0 2px !important; border: 0 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead td { display: block !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead :is(th, td), html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead :is(th, td):first-child, html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead :is(th, td):last-child { padding: 10px 0 !important; text-align: center !important; font-size: 0.6875rem !important; letter-spacing: 0.01em !important; color: #fff !important; background: none !important; border-radius: 0 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table thead th.us { color: #fff !important; font-weight: 800 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody tr { padding: 9px 4px 9px 12px !important; border-bottom: 1px solid var(--rule) !important; row-gap: 0 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody tr:nth-child(even) { background: #f7f8fa; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody tr:last-child { border-bottom: 0 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody th { grid-column: auto !important; padding: 0 8px 0 0 !important; border: 0 !important; font: 600 0.875rem/1.3 var(--nw-text) !important; color: var(--navy) !important; text-align: left !important; text-wrap: pretty; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody td, html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody td:last-child { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 3px !important; padding: 0 !important; border: 0 !important; background: none !important; text-align: center !important; white-space: nowrap !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table td .m-ic { width: 18px !important; height: 18px !important; margin: 0 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table td .mC-v { display: none !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table td .mC-s { display: block !important; font: 700 0.75rem/1.1 var(--nw-text) !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table .c-yes .mC-s { color: var(--navy); }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table .c-some .mC-s { color: var(--respite-ink); }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table .c-you .mC-s { color: var(--coral-ink); }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table .c-no .mC-s { color: var(--slate); font-weight: 600 !important; }
  html body.home-page #services .home-compare.mC--line.mC--cols .mC-table tbody td:last-child .mC-s { font-weight: 800 !important; color: var(--navy) !important; }
}

.mC-key { display: none; }
@media (max-width: 720px) {
  html body.home-page #services .home-compare.mC--cols .mC-table td .mC-s { white-space: normal !important; text-align: center; line-height: 1.15 !important; }
  html body.home-page #services .home-compare.mC--cols .mC-key { display: block; margin: 12px 4px 0; font: 400 0.8125rem/1.45 var(--nw-text); color: var(--slate); text-align: left; }
  html body.home-page #services .home-compare.mC--cols .mC-key strong { color: var(--navy); font-weight: 700; }
}

/* ===== Skyline rules (Oct 2026): never crop the top; trim only water; tuck to the button; badges scale with the water ===== */
img[src*="dc-skyline"] { object-position: 50% 0 !important; }
@media (min-width: 1121px) {
  html body.home-page .hero--home { min-height: 0 !important; display: block !important; }
  html body.home-page .hero--home .hero-grid, html body.home-page .hero--home .hero-copy { padding-bottom: 0 !important; }
  html body.home-page .hero--home .hero-skyline { --sky-nat: calc(100vw * 0.2369); --sky-h: clamp(calc(var(--sky-nat) * 0.9), 46svh, var(--sky-nat)); height: var(--sky-h) !important; margin-top: calc(-1 * (var(--sky-nat) * 0.5 - 20px)) !important; overflow: hidden; }
  html body.home-page .hero--home .hero-skyline > picture > img { object-fit: cover !important; object-position: 50% 0 !important; }
  html body.home-page .hero--home .hero-skyline .trust-strip--overlay { top: auto !important; bottom: 0 !important; height: calc(var(--sky-h) - var(--sky-nat) * 0.81) !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; }
  html body.home-page .hero--home .hero-skyline .trust-badges { position: static !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: clamp(40px, 6vw, 180px) !important; height: 100%; }
  html body.home-page .hero--home .hero-skyline .trust-badge img { height: clamp(30px, calc((var(--sky-h) - var(--sky-nat) * 0.81) * 0.6), 80px) !important; width: auto !important; max-width: none !important; }
}
@media (min-width: 721px) and (max-width: 1120px) {
  html body.home-page .hero--home .hero-skyline > picture > img { object-position: 50% 0 !important; }
}
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-skyline { flex: none !important; height: 43.75vw !important; min-height: 0 !important; max-height: none !important; }
  html body.home-page .hero--home .hero-skyline > picture > img { object-fit: contain !important; object-position: 50% 0 !important; }
  html body.home-page .hero--home h1 { font-size: min(2.125rem, calc(100cqw / 12.8), 3.95svh) !important; }
  html body.home-page .hero--home .hero-lede { font-size: clamp(0.9375rem, 2.6svh, 1.0625rem) !important; }
}
@media (max-width: 720px) and (max-height: 620px) {
  html body.home-page .hero--home .hero-welcome-m { display: none !important; }
}

/* Home hero, phones: button + welcome line left-aligned, skyline tucked up so the Monument rises beside them */
@media (max-width: 720px) {
  html body.home-page .hero--home { min-height: 0 !important; display: block !important; }
  html body.home-page .hero--home .hero-grid { position: relative; z-index: 2; }
  html body.home-page .hero--home .btn-row { justify-content: flex-start !important; }
  html body.home-page .hero--home .btn-row .btn { min-height: 44px !important; height: 44px; padding: 0 15px !important; font-size: 0.90625rem !important; display: inline-flex; align-items: center; white-space: nowrap; }
  html body.home-page .hero--home .hero-welcome-m { justify-content: flex-start !important; width: fit-content; margin: 6px 0 0 !important; height: 18px; font-size: 0.8125rem !important; }
  html body.home-page .hero--home .hero-skyline { --tuck: 66px; height: 47.25vw !important; margin-top: calc(-1 * var(--tuck)) !important; overflow: hidden !important; position: relative; z-index: 1; }
  html body.home-page .hero--home .hero-skyline > picture { width: 108% !important; height: 100% !important; max-width: none !important; }
  html body.home-page .hero--home .hero-skyline > picture > img { width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: 0 0 !important; }
}
@media (max-width: 720px) and (max-height: 620px) {
  html body.home-page .hero--home .hero-skyline { --tuck: 42px; }
}


/* ===== Trust badges centered in the water, scaled to it (Oct 2026). The shoreline sits at 72% (desktop art) / 70% (phone art) of the image height. ===== */
@media (min-width: 1121px) {
  html body.home-page .hero--home .hero-skyline { --water: calc(var(--sky-h) - var(--sky-nat) * 0.72); }
  html body.home-page .hero--home .hero-skyline .trust-strip--overlay { position: absolute !important; left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important; top: calc(var(--sky-nat) * 0.72) !important; bottom: 0 !important; height: auto !important; padding: 0 !important; margin: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; background: none !important; }
  html body.home-page .hero--home .hero-skyline .trust-badges { display: flex !important; align-items: center !important; justify-content: center !important; position: static !important; transform: none !important; inset: auto !important; min-height: 0 !important; max-height: none !important; width: auto !important; height: auto !important; margin: 0 !important; padding: 0 !important; gap: clamp(48px, 6vw, 180px) !important; }
  html body.home-page .hero--home .hero-skyline .trust-badge { display: block !important; line-height: 0; height: auto !important; min-height: 0 !important; max-height: none !important; padding: 0 !important; margin: 0 !important; width: auto !important; }
  html body.home-page .hero--home .hero-skyline .trust-badge img { height: clamp(36px, calc(var(--water) * 0.66), 110px) !important; max-height: none !important; width: auto !important; max-width: none !important; }
}
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-skyline { --water: calc(47.25vw * 0.30); }
  html body.home-page .hero--home .hero-skyline .trust-strip--overlay { position: absolute !important; left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important; top: calc(47.25vw * 0.70) !important; bottom: 0 !important; height: auto !important; padding: 0 12px !important; margin: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; background: none !important; }
  html body.home-page .hero--home .hero-skyline .trust-badges { display: flex !important; align-items: center !important; justify-content: center !important; position: static !important; transform: none !important; inset: auto !important; min-height: 0 !important; max-height: none !important; width: 100% !important; height: auto !important; margin: 0 !important; padding: 0 !important; gap: 5vw !important; }
  html body.home-page .hero--home .hero-skyline .trust-badge { display: block !important; line-height: 0; height: auto !important; min-height: 0 !important; max-height: none !important; padding: 0 !important; margin: 0 !important; flex: 0 1 auto; min-width: 0; width: auto !important; }
  html body.home-page .hero--home .hero-skyline .trust-badge img { height: calc(var(--water) - 18px) !important; max-height: none !important; width: auto !important; max-width: 100% !important; object-fit: contain !important; }
}
/* Photos: a faint inset hairline so they hold their edge on beige and white (size unchanged) */
html body main img[src*="/images/photos/"], html body main img[src*="/images/team"], html body main .care-tile img, html body main .nw-photo img, html body main .nw-media img { outline: 1px solid rgba(27, 42, 74, 0.12); outline-offset: -1px; }
html body main > section.tone-beige :is(img[src*="/images/photos/"], .care-tile img, .nw-photo img, .nw-media img) { box-shadow: 0 1px 2px rgba(27, 42, 74, 0.06), 0 8px 20px -10px rgba(27, 42, 74, 0.28); }

/* Skyline: hide the dark band baked into the art's bottom edge */
html body .hero-skyline { overflow: hidden !important; }
html body .hero-skyline > picture { display: block; height: calc(100% + 6px) !important; margin-bottom: -6px; }
html body .hero-skyline > picture > img { height: 100% !important; }

@media (max-width: 720px) {
  html body.home-page .hero--home .hero-skyline { background: transparent !important; }
  html body.home-page .hero--home .hero-skyline > picture { height: calc(100% + 8px) !important; margin-bottom: -8px; }
  html body.home-page .hero--home .hero-skyline > picture > img { object-fit: cover !important; object-position: 0 0 !important; }
}

/* Home opening lead: one color, sized below the H2 */
html body.home-page .care-opening-lead > span, html body.home-page .home-intro-lead > span { color: inherit !important; }

html body.home-page .care-opening-text .home-company-intro-title { font-size: clamp(1.625rem, 3vw, 2.5rem) !important; line-height: 1.08 !important; }
html body.home-page .care-opening-lead { font-size: 1.25rem !important; font-weight: 400 !important; line-height: 1.5 !important; max-width: 40ch; }
@media (max-width: 720px) {
  html body.home-page .care-opening-text .home-company-intro-title { font-size: 1.625rem !important; }
  html body.home-page .care-opening-lead { font-size: 1.125rem !important; }
}

/* ===== Type scale (Oct 2026). Desktop / phone. Loaded last. ===== */
html body main :is(h2.nw-heading, .sec-title > h2, .split-head h2, .day-intro > h2, .home-people h2, .home-region h2, .home-service-region h2, .nw-head > h2, .cta h2, .nw-faqpage > .nw-head h2) { font-size: 2.25rem !important; line-height: 1.1 !important; letter-spacing: -0.03em; }
html body main :is(.nw-lede, .svc-band-lede, .mC-lede, .split-head-row > p, .care-opening-lead) { font-size: 1.25rem !important; font-weight: 400 !important; line-height: 1.5 !important; }
html body main :is(.nw-subhead, .nw-col-title, .pr-step-label) { font-size: 1.5rem !important; line-height: 1.2 !important; }
html body main :is(.nw-step, .nw-point, .nw-card, .care-tile, .voice, .pv-situation, .nw-person, .guide-card, .nw-support-topic, .nw-plan-card, .pr-plan, .home-intro-cols > div, .care-opening-cols > div, .region-programs > li) h3 { font-size: 1.1875rem !important; line-height: 1.3 !important; }
html body main :is(blockquote, .voice p, .voice blockquote) { font-size: 1.1875rem !important; line-height: 1.5 !important; }
html body main :is(figcaption, .cf-fallback, .nw-form-status) { font-size: 0.9375rem !important; }
html body main :is(.thu-label, .news-label, .mC-s, .mC-short) { font-size: 0.8125rem !important; }
html body main *:not(.thu-sun) > span[style*="color"] { color: inherit; }
@media (max-width: 720px) {
  html body main :is(h2.nw-heading, .sec-title > h2, .split-head h2, .day-intro > h2, .home-people h2, .home-region h2, .home-service-region h2, .nw-head > h2, .cta h2, .nw-faqpage > .nw-head h2) { font-size: 1.625rem !important; }
  html body main :is(.nw-lede, .svc-band-lede, .mC-lede, .split-head-row > p, .care-opening-lead) { font-size: 1.125rem !important; }
  html body main :is(.nw-subhead, .nw-col-title, .pr-step-label) { font-size: 1.25rem !important; }
  html body main :is(.nw-step, .nw-point, .nw-card, .care-tile, .voice, .pv-situation, .nw-person, .guide-card, .nw-support-topic, .nw-plan-card, .pr-plan, .home-intro-cols > div, .care-opening-cols > div, .region-programs > li) h3 { font-size: 1.0625rem !important; }
  html body main :is(blockquote, .voice p, .voice blockquote) { font-size: 1.0625rem !important; }
  html body main :is(figcaption, .cf-fallback, .nw-form-status) { font-size: 0.875rem !important; }
  html body.home-page #services .home-compare.mC--line .mC-table td span, html body.home-page #services .home-compare.mC--line .mC-table thead :is(th, td) { font-size: 0.8125rem !important; }
  html body main .care-panel-title { font-size: 1.75rem !important; }
  html body main .svc-band-title { font-size: 1.375rem !important; }
}
html body.home-page main .care-opening-text .home-company-intro-title { font-size: clamp(1.625rem, 3vw, 2.5rem) !important; }


html body.home-page main .day-intro > h2 { font-size: 2.25rem !important; line-height: 1.1 !important; }
html body.home-page main .care-opening-text .home-company-intro-title { font-size: 2.25rem !important; }
html body.home-page main .thu-head h3 { font-size: 2.25rem !important; }
html body main .svc-band-title { font-size: 1.75rem !important; }
html body.home-page #services-navigation h3:not(.svc-band-title) { font-size: 1.5rem !important; }
@media (max-width: 720px) {
  html body.home-page main :is(.day-intro > h2, .care-opening-text .home-company-intro-title) { font-size: 1.625rem !important; }
  html body.home-page main .thu-head h3 { font-size: 1.625rem !important; }
  html body main .svc-band-title { font-size: 1.375rem !important; }
  html body.home-page #services-navigation h3:not(.svc-band-title) { font-size: 1.25rem !important; }
}
html body.home-page main .team-heading > h2 { font-size: 2.25rem !important; line-height: 1.1 !important; }
@media (max-width: 720px) { html body.home-page main .team-heading > h2 { font-size: 1.625rem !important; } }

html body.home-page main .home-possibilities .day-intro > h2 { font-size: 2.25rem !important; }
html body main header.svc-band .svc-band-inner .svc-band-title { font-size: 1.75rem !important; }
@media (max-width: 720px) {
  html body.home-page main .home-possibilities .day-intro > h2 { font-size: 1.625rem !important; }
  html body main header.svc-band .svc-band-inner .svc-band-title { font-size: 1.375rem !important; }
}

html body.home-page main .care-opening-text .home-company-intro-title { text-wrap: balance; }
.care-opening-source { margin: 12px 0 0 !important; font: 400 0.875rem/1.45 var(--nw-text); color: var(--slate); }
.care-opening-source a { color: var(--slate); text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.care-opening-source a:hover { color: var(--navy); }

/* ===== Type consistency (Oct 2026): one lede style, one body style ===== */
html body main :is(.nw-lede, .care-opening-lead, .pull-line, .split-head-row > p, .day-intro > p) { font-family: var(--nw-text) !important; font-weight: 400 !important; letter-spacing: 0 !important; color: var(--navy); }
html body main :is(.nw-bio, .nw-bio p, .nw-role-block, .nw-role-block p, .nw-role-block li, .nw-role-apply, .cf-region, .guide-card p, .care-tile p) { font-size: 1.0625rem !important; line-height: 1.6 !important; }
html body.home-page main .mC-claim { font-family: var(--nw-text) !important; font-weight: 600 !important; font-size: 1.0625rem !important; letter-spacing: 0 !important; }
@media (max-width: 720px) {
  html body main :is(.nw-bio, .nw-bio p, .nw-role-block, .nw-role-block p, .nw-role-block li, .nw-role-apply, .cf-region, .guide-card p, .care-tile p) { font-size: 1rem !important; }
  html body.home-page main .mC-claim { font-size: 1rem !important; }
}

/* Home opening: 1 in 6 stat */
.care-stat { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 20px; row-gap: 6px; align-items: center; padding-bottom: 22px; border-bottom: 1px solid var(--rule); }
.care-stat-num { grid-row: 1 / span 2; margin: 0; font: 800 4.5rem/0.9 var(--nw-display); letter-spacing: -0.04em; color: var(--coral-ink); white-space: nowrap; }
.care-stat-text { margin: 0; font: 600 1.125rem/1.35 var(--nw-text); color: var(--navy); max-width: 28ch; align-self: end; }
html body .care-stat .care-opening-source { margin: 0 !important; align-self: start; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 720px) {
  .care-stat { column-gap: 14px; padding-bottom: 18px; }
  .care-stat-num { font-size: 3.25rem; }
  .care-stat-text { font-size: 1rem; }
}

/* ===== Heading tiers (Oct 2026). :not(#_) lifts these over every older rule. ===== */
html body:not(#_) main h3:not(#_):not(.t-sub):not(.svc-band-title):not(.care-panel-title):not(.thu-head h3) { font-family: var(--nw-display) !important; font-size: 1.1875rem !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: -0.01em !important; }
html body:not(#_) main :is(h2, h3).t-sub:not(#_) { font-family: var(--nw-display) !important; font-size: 1.5rem !important; font-weight: 800 !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; }
html body:not(#_) main h4:not(#_):not(.home-price-label):not(.thu-moment h4) { font-family: var(--nw-display) !important; font-size: 1.0625rem !important; font-weight: 700 !important; line-height: 1.3 !important; }
@media (max-width: 720px) {
  html body:not(#_) main h3:not(#_):not(.t-sub):not(.svc-band-title):not(.care-panel-title):not(.thu-head h3) { font-size: 1.0625rem !important; }
  html body:not(#_) main :is(h2, h3).t-sub:not(#_) { font-size: 1.25rem !important; }
  html body:not(#_) main h4:not(#_):not(.home-price-label):not(.thu-moment h4) { font-size: 1rem !important; }
}

/* ===== Home opening story (Oct 2026): problem > turn > answer > Care Services band ===== */
.story { display: flex; flex-direction: column; gap: 56px; }
.story-problem, .story-answer { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 56px; align-items: center; }
.story-stat { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 14px; padding: 40px 36px 32px; border-radius: 24px; background: var(--navy); color: #fff; }
.story-stat::after { content: ""; position: absolute; inset: 0; background: url(images/home-2026/contour-white-faint.png) right top / 160% auto no-repeat; opacity: .5; pointer-events: none; }
.story-stat > * { position: relative; z-index: 1; }
.story-stat-num { margin: 0; font: 800 6.5rem/0.85 var(--nw-display); letter-spacing: -0.05em; color: var(--coral); white-space: nowrap; }
.story-stat-text { margin: 0; font: 700 1.375rem/1.3 var(--nw-display); letter-spacing: -0.01em; color: #fff; text-wrap: balance; }
html body .story-stat .care-opening-source { margin: 4px 0 0 !important; font-size: 0.875rem; color: rgba(255, 255, 255, 0.78); }
html body .story-stat .care-opening-source a { color: rgba(255, 255, 255, 0.9); text-decoration-color: var(--coral); }
html body .story-stat .care-opening-source a:hover { color: #fff; }
.story-problem-text { display: flex; flex-direction: column; gap: 18px; }
html body:not(#_) .story-problem-text h2.nw-heading { margin: 0 !important; text-wrap: balance; }
html body .story-problem-text .care-opening-lead { margin: 0 !important; max-width: 60ch; }
.story-turn { display: flex; align-items: center; gap: 24px; margin: 0; font: 800 1.75rem/1.2 var(--nw-display); letter-spacing: -0.02em; color: var(--navy); text-align: center; }
.story-turn::before, .story-turn::after { content: ""; flex: 1; height: 1px; background: var(--rule); }
.story-turn > span { display: inline-flex; align-items: center; gap: 12px; flex: none; white-space: nowrap; }
.story-turn > span::before { content: ""; width: 22px; height: 22px; flex: none; background: var(--coral); -webkit-mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; mask: url(images/brand/star-sparkle-tight.png) center / contain no-repeat; }
.story-answer { align-items: stretch; }
.story-photo { margin: 0; display: flex; flex-direction: column; gap: 10px; min-height: 0; }
.story-photo img { display: block; width: 100%; flex: 1; min-height: 320px; height: 100%; object-fit: cover; object-position: 55% 40%; border-radius: 24px; }
.story-photo figcaption { margin: 0; font: 400 0.9375rem/1.45 var(--nw-text); color: var(--slate); }
.story-points { display: flex; flex-direction: column; justify-content: center; }
.story-point { display: flex; flex-direction: column; gap: 6px; padding: 22px 0; border-top: 1px solid var(--rule); }
.story-point:first-child { border-top: 0; padding-top: 0; }
.story-point:last-child { padding-bottom: 0; }
.story-point h3 { margin: 0; }
.story-point p { margin: 0; color: var(--slate); line-height: 1.6; max-width: 62ch; }
@media (max-width: 1120px) {
  .story { gap: 40px; }
  .story-problem, .story-answer { grid-template-columns: minmax(0, 1fr); row-gap: 28px; }
  .story-photo img { flex: none; height: auto; min-height: 0; aspect-ratio: 4 / 3; }
}
@media (max-width: 720px) {
  .story { gap: 32px; }
  .story-stat { padding: 28px 22px 22px; border-radius: 20px; gap: 10px; }
  .story-stat-num { font-size: 4.5rem; }
  .story-stat-text { font-size: 1.125rem; }
  .story-turn { gap: 14px; font-size: 1.375rem; }
  .story-turn > span { gap: 8px; }
  .story-turn > span::before { width: 18px; height: 18px; }
  .story-point { padding: 18px 0; }
}
@media (max-width: 359px) { .story-turn > span { white-space: normal; flex: 0 1 auto; } }

html body:not(#_) .story-stat .care-opening-source a:not(#_), html body:not(#_) .story-stat .care-opening-source a:not(#_) em { color: #fff !important; -webkit-text-fill-color: #fff; }
html body:not(#_) .story-problem-text h2.nw-heading::before { display: none !important; }
@media (max-width: 720px) { .story-turn { font-size: 1.25rem; } }
html body:not(#_) .story-stat .care-opening-source a:not(#_) { font-weight: 400 !important; }

/* Turn line: the full Novinway star, larger */
html body .story-turn > span { gap: 16px; }
html body .story-turn > span::before { width: 44px !important; height: 44px !important; background: url(images/brand/star-coral.png) center / contain no-repeat !important; -webkit-mask: none !important; mask: none !important; }
@media (max-width: 720px) { html body .story-turn > span { gap: 10px; } html body .story-turn > span::before { width: 32px !important; height: 32px !important; } }

/* ===== Comparison chart v3 (Oct 2026): icons only, grouped, one highlighted column ===== */
.cmp { margin-top: 8px; padding: 36px 36px 28px; background: var(--white); border: 1px solid var(--rule); border-top: 4px solid var(--respite-deep); border-radius: 24px; box-shadow: 0 1px 2px rgba(27, 42, 74, 0.04), 0 10px 28px rgba(27, 42, 74, 0.06); display: flex; flex-direction: column; gap: 20px; }
.cmp .mC-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px 40px; align-items: end; margin: 0; }
.cmp .mC-head h3 { margin: 0 0 8px; }
.cmp .mC-lede { margin: 0; }
html body.home-page main .cmp .mC-claim { margin: 0; padding: 0; border: 0; font-size: 1.0625rem !important; line-height: 1.5; color: var(--navy); }
.cmp-same { margin: 0; padding: 14px 18px; border-radius: 14px; background: var(--paper); font: 400 1rem/1.5 var(--nw-text); color: var(--navy); }
.cmp-same strong { font-weight: 700; }
.cmp-table { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.cmp-table col, .cmp-table thead td { width: 46%; }
.cmp-table thead th { padding: 14px 8px; background: var(--navy); color: #fff; font: 700 0.875rem/1.25 var(--nw-text); text-align: center; vertical-align: middle; }
.cmp-table thead td { background: var(--navy); border-radius: 14px 0 0 14px; }
.cmp-table thead th:last-child { border-radius: 0 14px 14px 0; }
.cmp-table thead th.cmp-us { color: #fff; font-weight: 800; font-size: 0.9375rem; }
.cmp-short { display: none; }
.cmp-table tr.cmp-group th { padding: 18px 12px 6px; font: 700 0.8125rem/1.2 var(--nw-text); letter-spacing: 0.08em; text-transform: uppercase; color: var(--respite-ink); text-align: left; border: 0; }
.cmp-table tbody tr:not(.cmp-group) th { padding: 12px; font: 500 1rem/1.35 var(--nw-text); color: var(--navy); text-align: left; border-top: 1px solid var(--rule); }
.cmp-table tbody tr.cmp-group + tr th, .cmp-table tbody tr.cmp-group + tr td { border-top: 0; }
.cmp-c { padding: 10px 8px; text-align: center; vertical-align: middle; border-top: 1px solid var(--rule); }
.cmp-c.cmp-us { background: var(--navigation-20, #e6efe9); }
.cmp-table tbody tr.cmp-group th { background: none; }
.cmp-table tbody:first-of-type tr.cmp-group + tr td.cmp-us { }
.cmp-i { display: inline-block; width: 24px; height: 24px; vertical-align: middle; }
.cmp-i--y circle { fill: var(--navigation-deep); }
.cmp-i--y path { fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.cmp-i--p circle { fill: none; stroke: var(--respite-deep); stroke-width: 2; }
.cmp-i--p path { fill: var(--respite-deep); }
.cmp-i--n circle { fill: none; stroke: var(--coral-ink); stroke-width: 1.8; }
.cmp-i--n path { fill: none; stroke: var(--coral-ink); stroke-width: 2; stroke-linecap: round; }
.cmp-us .cmp-i--y { width: 28px; height: 28px; }
.cmp-key { display: flex; flex-wrap: wrap; gap: 8px 22px; font: 400 0.875rem/1.3 var(--nw-text); color: var(--slate); }
.cmp-key span { display: inline-flex; align-items: center; gap: 8px; }
.cmp-key .cmp-i { width: 18px; height: 18px; }
html body.home-page main .cmp .m-foot { margin: 0; padding-top: 16px; border-top: 1px solid var(--rule); }
html body.home-page main .cmp .m-foot p { margin: 0; font: 600 1.0625rem/1.5 var(--nw-text); color: var(--navy); }
@media (max-width: 900px) {
  .cmp .mC-head { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  .cmp { padding: 22px 14px 20px; border-radius: 20px; gap: 16px; margin-inline: -8px; }
  .cmp-same { padding: 12px 14px; font-size: 0.9375rem; }
  .cmp-table thead td { width: 43%; }
  .cmp-long { display: none; }
  .cmp-short { display: inline; }
  .cmp-table thead th { padding: 12px 2px; font-size: 0.8125rem; }
  .cmp-table thead th.cmp-us { font-size: 0.8125rem; }
  .cmp-table tr.cmp-group th { padding: 14px 8px 4px; font-size: 0.75rem; }
  .cmp-table tbody tr:not(.cmp-group) th { padding: 10px 8px; font-size: 0.9375rem; line-height: 1.3; }
  .cmp-c { padding: 8px 2px; }
  .cmp-i { width: 22px; height: 22px; }
  .cmp-us .cmp-i--y { width: 24px; height: 24px; }
}
html body:not(#_) main .cmp { display: flex !important; grid-template-columns: none !important; background: var(--white) !important; }
html body:not(#_) main .cmp .mC-head > div { min-width: 0; }

/* Comparison v3: escape old grid/table rules */
html body:not(#_) main .cmp { grid-column: 1 / -1 !important; width: 100% !important; max-width: none !important; }
html body:not(#_) main .cmp > * { width: 100%; min-width: 0; }
html body:not(#_) main .cmp .mC-head { display: grid !important; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) !important; gap: 12px 48px !important; align-items: end !important; }
html body:not(#_) main .cmp .mC-head > * { grid-column: auto !important; grid-row: auto !important; width: auto !important; max-width: none !important; }
html body:not(#_) main .cmp-table { display: table !important; width: 100% !important; table-layout: fixed !important; }
html body:not(#_) main .cmp-table :is(thead, tbody) { display: table-row-group !important; }
html body:not(#_) main .cmp-table thead { display: table-header-group !important; }
html body:not(#_) main .cmp-table tr { display: table-row !important; }
html body:not(#_) main .cmp-table :is(th, td) { display: table-cell !important; }
@media (max-width: 900px) { html body:not(#_) main .cmp .mC-head { grid-template-columns: minmax(0, 1fr) !important; } }
/* Problem color: kept out of the brand palette so brand colors mean "solution" */
:root { --problem: #b23b2c; --problem-bg: #f6f3f1; }
.story-stat { background: var(--problem-bg) !important; color: var(--navy) !important; border: 1px solid #e6e0dc; }
.story-stat::after { display: none !important; }
.story-stat-num { color: var(--problem) !important; }
.story-stat-text { color: var(--navy) !important; }
html body:not(#_) .story-stat .care-opening-source, html body:not(#_) .story-stat .care-opening-source a:not(#_), html body:not(#_) .story-stat .care-opening-source a:not(#_) em { color: var(--slate) !important; -webkit-text-fill-color: var(--slate); }
.cmp-i--n circle, .cmp-i--n path { stroke: var(--problem) !important; }
.cmp-key span { white-space: nowrap; }

/* Every-visit grid: headings always one line */
@media (min-width: 721px) {
  html body:not(#_) main .home-support-item h3:not(#_) { white-space: nowrap; font-size: clamp(1rem, 1.48vw, 1.1875rem) !important; }
}

/* 1 in 6: softer, brand colors, distinct from the navy hero */
.story-stat { background: var(--paper) !important; border: 1px solid var(--coral-30) !important; }
.story-stat-num { color: var(--navy) !important; }
.story-stat-num::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 10px; border-radius: 2px; background: var(--coral); }
.cmp-i--n circle, .cmp-i--n path { stroke: var(--coral-ink) !important; }

/* Comparison v3.1: tinted cells (red = not included, yellow = basic, sage = included) */
:root { --cmp-no: #c44a3d; --cmp-no-bg: #fdf0ee; --cmp-some: #b8860b; --cmp-some-bg: #fff7e0; }
.cmp-table col.cmp-col-label { width: 46%; }
html body:not(#_) main .cmp-table thead td { width: 46% !important; }
.cmp-c { border-top: 1px solid rgba(27, 42, 74, 0.08) !important; }
.cmp-c--n { background: var(--cmp-no-bg); }
.cmp-c--p { background: var(--cmp-some-bg); }
.cmp-c--y.cmp-us { background: var(--navigation-20, #e6efe9); }
.cmp-i--n circle { fill: var(--cmp-no) !important; stroke: none !important; }
.cmp-i--n path { stroke: #fff !important; stroke-width: 2.2 !important; }
.cmp-i--p circle { fill: #fff !important; stroke: var(--cmp-some) !important; stroke-width: 2 !important; }
.cmp-i--p path { fill: var(--cmp-some) !important; }
.cmp-us .cmp-i--y, .cmp-i { width: 24px !important; height: 24px !important; }
.cmp-table tbody tr.cmp-group th { padding-top: 16px; }
.cmp-table tbody tr.cmp-group + tr :is(th, td) { border-top: 0 !important; }
.cmp-table tbody tr:not(.cmp-group) th { border-top: 1px solid rgba(27, 42, 74, 0.08) !important; }
.cmp-key .cmp-i { width: 18px !important; height: 18px !important; }
@media (max-width: 720px) {
  .cmp-table col.cmp-col-label { width: 44%; }
  html body:not(#_) main .cmp-table thead td { width: 44% !important; }
  html body:not(#_) main .cmp-table thead th { padding: 11px 1px !important; font-size: 0.75rem !important; letter-spacing: 0 !important; }
  .cmp-table tbody tr:not(.cmp-group) th { font-size: 0.875rem !important; padding: 10px 6px 10px 4px !important; }
  .cmp-table tr.cmp-group th { padding-left: 4px !important; }
  .cmp-c { padding: 8px 0 !important; }
  .cmp-us .cmp-i--y, .cmp-i { width: 22px !important; height: 22px !important; }
  .cmp-key { gap: 6px 16px; }
}

/* Comparison v3.2: group label inside the first row, short labels, honesty note */
.cmp-table tr.cmp-group { display: none !important; }
.cmp-grp { display: block; margin-bottom: 3px; font: 700 0.75rem/1.2 var(--nw-text); letter-spacing: 0.08em; text-transform: uppercase; color: var(--respite-ink); }
.cmp-table tbody tr.cmp-first :is(th, td) { border-top: 1px solid rgba(27, 42, 74, 0.16) !important; }
.cmp-table tbody tr:first-child :is(th, td) { border-top: 0 !important; }
.cmp-table tbody tr:not(.cmp-group) th { padding-top: 11px !important; padding-bottom: 11px !important; }
.cmp-note { margin: -8px 0 0; font-size: 0.8125rem; line-height: 1.45; color: var(--slate); }
.m-only { display: none !important; }
@media (max-width: 720px) {
  .m-only { display: revert !important; }
  .d-only, .m-hide { display: none !important; }
  .cmp-grp { font-size: 0.6875rem; letter-spacing: 0.06em; }
  /* Story: turn line flush left, source on one line */
  html body .story-turn { justify-content: flex-start; text-align: left; gap: 0; }
  html body .story-turn::before { display: none; }
  html body .story-turn::after { margin-left: 14px; }
  html body .story-turn > span { padding: 0; margin: 0; }
  html body:not(#_) .story-stat .care-opening-source { white-space: nowrap; }
  /* Voice captions stack */
  html body main figure.voice figcaption { flex-direction: column; align-items: flex-start; gap: 2px; }
  html body main figure.voice figcaption span::before { display: none; }
  /* Preparation points: icon beside heading, text full width */
  :where(body.home-page) .preparation-point { display: grid !important; grid-template-columns: 28px minmax(0, 1fr) !important; column-gap: 12px; align-items: center; }
  :where(body.home-page) .preparation-point > svg { grid-column: 1; width: 26px; height: 26px; margin: 0; background: none !important; padding: 0 !important; }
  :where(body.home-page) .preparation-point > h3 { grid-column: 2; margin: 0 !important; }
  :where(body.home-page) .preparation-point > :not(svg):not(h3) { grid-column: 1 / -1 !important; margin-top: 8px; padding-left: 0 !important; }
}

.cmp-table col { width: auto !important; }
.cmp-table col.cmp-col-label { width: 46% !important; }
@media (max-width: 720px) {
  .cmp-table col.cmp-col-label { width: 44% !important; }
  html body main figure.voice figcaption { flex-direction: column !important; align-items: flex-start !important; gap: 2px !important; }
  html body main figure.voice figcaption span::before { display: none !important; }
  html body:not(#_) .story-stat .care-opening-source .m-hide { display: none !important; }
}
@media (max-width: 720px) { .cmp-grp { font-size: 0.75rem !important; letter-spacing: 0.06em !important; } }

/* Name story under "That's why we built Novinway." */
.story-name { margin: 14px auto 0; max-width: 640px; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.story-name-eq { display: inline-flex; align-items: baseline; gap: 10px; font: 500 1rem/1.2 var(--nw-display); letter-spacing: 0.01em; color: var(--slate); }
.story-name-eq b { font-weight: 800; color: var(--coral-ink); }
.story-name-eq i { font-style: normal; color: var(--slate-light); }
.story-name-text { font: 400 var(--fs-body)/1.55 var(--nw-text); color: var(--slate); text-wrap: pretty; }
@media (max-width: 720px) {
  .story-name { align-items: flex-start; text-align: left; margin-top: 10px; gap: 8px; }
  .story-name-eq { gap: 8px; font-size: 0.9375rem; }
}
html body .story > .story-name { margin-top: -42px !important; }
@media (max-width: 720px) { html body .story > .story-name { margin-top: -22px !important; } }

/* Name equation: bigger, ends in the assembled word */
.story-name-eq { font-size: 1.25rem !important; gap: 12px !important; align-items: baseline; flex-wrap: wrap; justify-content: center; }
.story-name-eq b { color: var(--coral-ink); }
.story-name-word { font: 800 1.75rem/1 var(--nw-display); letter-spacing: -0.02em; }
.story-name-word b { color: var(--navy); }
.story-name-word b:nth-child(2) { color: var(--coral-ink); }
@media (max-width: 720px) { .story-name-eq { font-size: 1rem !important; gap: 8px !important; justify-content: flex-start; } .story-name-word { font-size: 1.375rem; } }

html body.has-m-action { padding-bottom: 0 !important; }
.m-action { display: none !important; }
/* Mobile paragraph breaks: same words, split at a sentence on phones only */
.m-break { display: none; }
@media (max-width: 720px) {
  .m-break { display: block; height: 0.8em; }
  .care-opening-lead.m-only > p { margin: 0; }
  .care-opening-lead.m-only > p + p { margin-top: 0.8em; }
}
/* Comparison v4: Novinway column is a raised card; plain headers for the others */
html body:not(#_) main .cmp-table thead :is(td, th) { background: transparent !important; color: var(--slate) !important; border-radius: 0 !important; padding: 12px 6px !important; vertical-align: bottom; font: 700 0.875rem/1.25 var(--nw-text) !important; }
html body:not(#_) main .cmp-table thead th.cmp-us { background: var(--navy) !important; color: #fff !important; border-radius: 16px 16px 0 0 !important; font-weight: 800 !important; padding: 14px 6px !important; }
.cmp-table tbody tr:last-child td.cmp-us { border-radius: 0 0 16px 16px; }
.cmp-table tbody td.cmp-us { background: var(--navigation-20, #e6efe9) !important; border-top-color: rgba(255, 255, 255, 0.8) !important; }
.cmp-table tbody td:not(.cmp-us) { background: transparent !important; }
.cmp-table tbody :is(th, td) { border-top: 1px solid rgba(27, 42, 74, 0.1) !important; }
.cmp-table tbody tr:first-child :is(th, td) { border-top: 0 !important; }
.cmp-table tbody tr:not(.cmp-group) th { padding: 13px 12px !important; }
@media (max-width: 720px) {
  .cmp-table col.cmp-col-label { width: 42% !important; }
  html body:not(#_) main .cmp-table thead td { width: 42% !important; }
  html body:not(#_) main .cmp-table thead :is(th, td) { font-size: 0.75rem !important; padding: 10px 2px !important; }
  html body:not(#_) main .cmp-table thead th.cmp-us { font-size: 0.75rem !important; padding: 12px 2px !important; border-radius: 12px 12px 0 0 !important; }
  .cmp-table tbody tr:last-child td.cmp-us { border-radius: 0 0 12px 12px; }
  .cmp-table tbody tr:not(.cmp-group) th { padding: 11px 8px !important; font-size: 0.875rem !important; }
}

/* Name equation v2: one line, three brand inks that carry into the word */
.story-name-eq { flex-wrap: nowrap !important; white-space: nowrap; gap: 10px !important; font: 500 1.25rem/1.2 var(--nw-display) !important; color: var(--slate) !important; }
.story-name-eq i { color: var(--slate) !important; font-weight: 400; }
.story-name-eq > span:nth-of-type(1) b, .story-name-word b:nth-child(1) { color: var(--respite-ink) !important; }
.story-name-eq > span:nth-of-type(2) b, .story-name-word b:nth-child(2) { color: var(--coral-ink) !important; }
.story-name-eq > span:nth-of-type(3) b, .story-name-word b:nth-child(3) { color: var(--navigation-ink) !important; }
.story-name-eq b { font-weight: 800; }
.story-name-word { font: 800 1.625rem/1 var(--nw-display) !important; letter-spacing: -0.02em; }
@media (max-width: 720px) {
  .story-name-eq { gap: 5px !important; font-size: 0.9375rem !important; }
  .story-name-word { font-size: 1.1875rem !important; }
}
@media (max-width: 370px) { .story-name-eq { gap: 4px !important; font-size: 0.875rem !important; } .story-name-word { font-size: 1.0625rem !important; } }
html body:not(#_) .svc-band-title { text-wrap: pretty !important; }

/* Paragraph breaks apply at every width (same copy on phone and desktop) */
html body .m-break { display: block !important; height: 0.8em; }
html body .care-opening-lead > p { margin: 0; }
html body .care-opening-lead > p + p { margin-top: 0.8em; }
html body .day-intro > p { margin: 0 !important; }
html body .day-intro > p + p { margin-top: 0.7em !important; }
@media (min-width: 1121px) { html body .day-intro > h2 { grid-row: 1 / span 3; } html body .day-intro > p { grid-column: 2; padding-top: 0; } html body .day-intro > p:first-of-type { padding-top: 6px; } }
/* Name equation colors: coral, periwinkle, navy at full strength */
.story-name-eq > span:nth-of-type(1) b, .story-name-word b:nth-child(1) { color: var(--coral-ink) !important; }
.story-name-eq > span:nth-of-type(2) b, .story-name-word b:nth-child(2) { color: var(--respite-deep) !important; }
.story-name-eq > span:nth-of-type(3) b, .story-name-word b:nth-child(3) { color: var(--navy) !important; }
.story-name-eq > span:nth-of-type(1) b, .story-name-word b:nth-child(1) { color: #c4574a !important; }
html body .day-intro { row-gap: 0 !important; }
html body .day-intro > h2 { margin-bottom: 14px !important; }
html body .day-intro > p { padding-top: 0 !important; }
@media (min-width: 1121px) { html body .day-intro > h2 { margin-bottom: 0 !important; } html body .day-intro > p:first-of-type { padding-top: 6px !important; } }

/* Phones: one body size. Intro paragraphs match body (16px), set apart by navy ink instead of size */
@media (max-width: 720px) {
  html body:not(#_) main :is(.nw-lede, .mC-lede, .care-opening-lead, .care-opening-lead > p, .day-intro > p, .people-lead, .story-stat-text, .care-uses-note, .nw-head > p, .nw-quote-copy, .split-head-row > p) { font-size: var(--fs-body) !important; line-height: 1.55 !important; }
  html body:not(#_) main :is(.nw-lede, .mC-lede, .care-opening-lead, .care-opening-lead > p, .day-intro > p) { color: var(--navy) !important; }
}

/* Service bands sit flush against the section above (no collapsed margin showing page beige) */
html body.home-page :is(#services, #services-navigation) .service-stack:has(> .service-overview > .svc-band:first-child) { margin-top: 0 !important; }
html body.home-page :is(#services, #services-navigation) .sec-body > .service-stack:first-child { margin-top: 0 !important; }
html body main > section.cta { margin-top: 0 !important; }

/* Home Care band: "(not therapy)" floats just above the gap between "Childcare," and "prepared" */
html body .svc-band-title--note { padding-top: 0 !important; }
html body .svc-band-noted { position: relative; display: inline-block; }
html body .svc-band-title img.nw-handnote--over { position: absolute; left: 50%; bottom: 100%; transform: translate(-50%, 0.1em) rotate(-4deg); display: block !important; height: 0.6em !important; width: 2.85em !important; max-width: none !important; margin: 0 !important; pointer-events: none; }
@media (max-width: 720px) {  html body .svc-band-title img.nw-handnote--over { height: 0.64em !important; width: 3.04em !important; } html body .svc-band-noted { white-space: nowrap; } }

/* ===== System (Oct 2026). One scale, applied through the tokens. Loaded last; wins over every earlier pass.
   Body: --fs-body, line-height 1.55 (guides 1.65). Small text: --fs-small (15px) or --fs-label (13px), nothing else.
   Labels: 13px / 700 / 0.08em caps. Sections: 64px desktop, 36px phones; compact heroes 52/48 and 32/30.
   Cards: 24px (items) or 32px (feature panels). Controls: 8px corners, 44px minimum height. ===== */
html body:not(#_):not(#_) main :is(p, li, dd):not([class*="title"]):not([class*="label"]):not([class*="num"]):not([class*="rate"]):not([class*="amount"]):not([class*="turn"]):not([class*="name"]):not([class*="bubble"]):not([class*="tag"]):not([class*="price"]):not([class*="stat"]):not([class*="head"]):not([class*="role"]) { line-height: var(--lh-body) !important; }
html body:not(#_):not(#_)[class*="guide"] main article :is(p, li, dd):not([class*="title"]):not([class*="label"]):not([class*="num"]):not([class*="rate"]):not([class*="amount"]):not([class*="turn"]):not([class*="name"]):not([class*="bubble"]):not([class*="tag"]):not([class*="price"]):not([class*="stat"]):not([class*="head"]):not([class*="role"]), html body:not(#_):not(#_)[class*="guide"] main .nw-prose :is(p, li, dd):not([class*="title"]):not([class*="label"]):not([class*="num"]):not([class*="rate"]):not([class*="amount"]):not([class*="turn"]):not([class*="name"]):not([class*="bubble"]):not([class*="tag"]):not([class*="price"]):not([class*="stat"]):not([class*="head"]):not([class*="role"]) { line-height: 1.65 !important; }
html body:not(#_):not(#_) main :is(figcaption, .care-panel-cap, .care-opening-source, .story-stat .care-opening-source, .cf-fallback, .nw-form-status) { font-size: var(--fs-small) !important; line-height: 1.45 !important; }
html body:not(#_):not(#_) :is(.label, .page-toc-label, .nw-plan-label, .nw-value-label, .nw-person-role, .nw-chapter-label, .nw-sample-label, .nw-tab-cue, .nw-calc-flag, .pv-situation-tag, .pv-service-label, .pv-sample-label, .pv-share-label, .guide-card-label, .vx-prog-tag, .vx-phase-label, .vx-ph-tag, .pr-intake-name, .pr-receipt-label, .svc-band-name, .svc-label-name, .news-label, .thu-label, .thu-tag, .home-price-label, .home-pricing-label) { font-family: var(--nw-text) !important; font-size: var(--fs-label) !important; font-weight: 700 !important; letter-spacing: 0.08em !important; line-height: 1.3 !important; }
html body:not(#_):not(#_) main :is(.nw-supporting-note, .pv-role-items, .pv-role-items li, .region-detail) { font-family: var(--nw-text) !important; font-size: var(--fs-body) !important; font-weight: 400 !important; line-height: var(--lh-body) !important; letter-spacing: 0 !important; }
html body:not(#_):not(#_).home-page .hero--home .hero-bubble { font-size: var(--fs-lede) !important; }
html body:not(#_):not(#_) main .nw-hero-compact { padding-top: 52px !important; padding-bottom: 48px !important; }
html body:not(#_):not(#_) main > .cta { padding-block: 64px !important; }
html body:not(#_):not(#_).home-page main > section.band.tone-white:first-of-type, html body:not(#_):not(#_).home-page .home-opening { padding-top: 64px !important; }
html body:not(#_):not(#_).home-page main > section.band.tone-paper { padding-bottom: 64px !important; }
html body:not(#_):not(#_) main .navx-panel, html body:not(#_):not(#_) main .cf-panel { padding: 32px !important; }
html body:not(#_):not(#_) main :is(.nw-plan-sheet, .nw-calc-plan) { padding: 24px !important; }
html body:not(#_):not(#_) main :is(.pr-plan-head, .pr-plan-price) { padding-inline: 24px !important; }
html body:not(#_):not(#_) main .cf-tabs button { min-height: 48px !important; border-radius: var(--r-sm) !important; }
html body:not(#_):not(#_) main :is(.pv-copy, .btn, button) { min-height: 44px; }
@media (max-width: 720px) {
  html body:not(#_):not(#_).home-page .hero--home .hero-bubble { font-size: var(--fs-small) !important; }
  html body:not(#_):not(#_) main .nw-hero-compact { padding-top: 32px !important; padding-bottom: 30px !important; }
  html body:not(#_):not(#_) main > .cta { padding-block: 36px !important; }
  html body:not(#_):not(#_).home-page main > section.band.tone-white:first-of-type, html body:not(#_):not(#_).home-page .home-opening { padding-top: 21px !important; }
  html body:not(#_):not(#_).home-page main > section.band.tone-paper { padding-bottom: 36px !important; }
  html body:not(#_):not(#_).pricing-page main > section.tone-beige, html body:not(#_):not(#_).contact-page main > section.nw-section { padding-block: 36px !important; }
  html body:not(#_):not(#_) main .navx-panel, html body:not(#_):not(#_) main .cf-panel { padding: 24px !important; }
  html body:not(#_):not(#_) main :is(.nw-plan-sheet, .nw-calc-plan) { padding: 20px !important; }
  html body:not(#_):not(#_) main :is(.pr-plan-head, .pr-plan-price) { padding-inline: 20px !important; }
  html body:not(#_):not(#_) main :is(.cmp-short, .cmp-table thead th, .cmp-table thead td, .cmp-us, .cmp-grp, .mC-table thead th, .mC-table td span) { font-size: var(--fs-label) !important; }
}

/* ===== Name story (Oct 2026): dictionary entry. The wordmark is cut into Nov · in · way (cuts at 442 and 626 of 1098px). ===== */
html body .story-name { gap: 0; }
html body:not(#_) .story > .story-name { margin-top: -32px !important; }
@media (min-width: 721px) and (max-width: 1120px) { html body:not(#_) .story > .story-name { margin-top: -16px !important; } }
@media (max-width: 720px) { html body:not(#_) .story > .story-name { margin-top: -8px !important; } }
.story-def { --w: 240px; --dot: 7px; width: 100%; max-width: 600px; display: flex; flex-direction: column; gap: 14px; text-align: left; }
.story-def-head { display: flex; align-items: flex-end; gap: 16px; }
.story-def-mark { display: flex; align-items: flex-start; flex: none; }
.story-def-part { display: block; overflow: hidden; flex: none; }
.story-def-part:nth-of-type(1) { width: calc(var(--w) * 0.40255); }
.story-def-part:nth-of-type(2) { width: calc(var(--w) * 0.16758); }
.story-def-part:nth-of-type(3) { width: calc(var(--w) * 0.426); }
html body .story-def-part img { display: block; width: var(--w) !important; max-width: none !important; height: auto !important; margin: 0; }
html body .story-def-part:nth-of-type(2) img { margin-left: calc(var(--w) * -0.40255); }
html body .story-def-part:nth-of-type(3) img { margin-left: calc(var(--w) * -0.574); }
.story-def-mark > i { flex: none; width: var(--dot); height: var(--dot); margin: calc(var(--w) * 0.12 - var(--dot) / 2) var(--dot) 0; border-radius: 50%; background: #c4574a; }
.story-def-pos { padding-bottom: calc(var(--w) * 0.033); font: italic 400 var(--fs-body)/1 var(--nw-text); color: var(--slate); }
html body .story-def .story-def-from { margin: 0; font: 400 var(--fs-body)/1.55 var(--nw-text); color: var(--slate); }
.story-def-from strong { font-weight: 700; color: var(--navy); }
.story-def-from::after { content: ""; display: block; height: 1px; margin-top: 14px; background: var(--rule, #e2e5ea); }
html body .story .story-def .story-def-text { margin: 0; max-width: none; font: 400 var(--fs-lede)/1.5 var(--nw-text) !important; color: var(--navy) !important; text-wrap: pretty; }
/* Name story as a section intro: heading, definition and points on the left, photo on the right */
html body:not(#_) .story-answer { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: stretch; }
.story-answer-text { display: flex; flex-direction: column; justify-content: center; min-width: 0; }
html body:not(#_) .story-answer-text .story-name { margin: 0 !important; align-items: flex-start; text-align: left; }
html body .story-answer-text .story-def { max-width: 60ch; margin: 0; align-items: stretch; text-align: left; }
html body .story-answer-text .story-def-head { justify-content: flex-start; }
html body .story-answer-text .story-points { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--rule, #e2e5ea); justify-content: flex-start; }
@media (max-width: 1120px) {
  html body:not(#_) .story-answer { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  html body .story-answer-text .story-points { margin-top: 22px; padding-top: 18px; }
}
@media (max-width: 720px) {
  .story-def { --w: 170px; --dot: 5px; gap: 10px; }
  .story-def-head { gap: 10px; }
  .story-def-pos { font-size: var(--fs-small); }
  .story-def-from::after { margin-top: 10px; }
}

/* ===== Name story, refined (Oct 2026): dictionary layout. Headword on the logo baseline, etymology line, numbered sense; service-colored point icons ===== */
.story-def { --dot: 9px; gap: 0 !important; }
.story-def-mark > i { margin-inline: calc(var(--dot) * 0.65) !important; background: #e8705f !important; }
.story-def-head { gap: 14px !important; }
.story-def-pos { padding-bottom: calc(var(--w) * 0.063) !important; font: italic 400 var(--fs-body)/1 var(--nw-text) !important; color: var(--slate); }
html body .story-def .story-def-from { margin: 14px 0 0 !important; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; font: 400 var(--fs-small)/1.4 var(--nw-text) !important; color: var(--slate) !important; }
.story-def-from::after { display: none !important; }
.story-def-from-label { font-style: italic; }
.story-def-from b { font-weight: 700; color: var(--navy); }
.story-def-from i { font-style: normal; color: #c4574a; font-weight: 600; }
html body .story .story-def .story-def-text { margin: 22px 0 0 !important; display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 14px; align-items: baseline; }
.story-def-num { font: 800 var(--fs-body)/1 var(--nw-display); color: #c4574a; }
html body .story-answer-text .story-points { margin-top: 32px; }
@media (max-width: 720px) {
  .story-def { --dot: 6.5px; }
  .story-def-head { gap: 10px !important; }
  .story-def-pos { font-size: var(--fs-small) !important; }
  html body .story-def .story-def-from { margin-top: 10px !important; }
  html body .story .story-def .story-def-text { margin-top: 16px !important; column-gap: 10px; }
  html body .story-answer-text .story-points { margin-top: 24px; }
}
@media (max-width: 1120px) { html body .story-problem-text .care-opening-lead p, html body .story-photo figcaption { max-width: 62ch; } }
@media (min-width: 1121px) {
  html body .story-problem { grid-template-columns: minmax(min-content, 5fr) minmax(0, 7fr); }
  html body:not(#_) .story-stat .care-opening-source { white-space: nowrap; }
}

/* ===== Home hero, all widths (Oct 2026): left-aligned; "(not therapy)" tucked against "childcare." on the same line ===== */
html body.home-page .hero--home .hero-noted { white-space: nowrap; }
html body.home-page .hero--home img.nw-handnote--hero { display: inline-block !important; position: static !important; height: 0.62em !important; width: auto !important; margin: 0 0 0 0.12em !important; vertical-align: 0.42em !important; transform: rotate(-7deg) !important; transform-origin: left bottom !important; max-width: none !important; }
html body.home-page .hero--home .hero-bubble { align-self: flex-start !important; margin-left: 0 !important; margin-right: 0 !important; }
@media (max-width: 720px) {
  html body.home-page .hero--home .hero-copy, html body.home-page .hero--home .home-hero-primary, html body.home-page .hero--home .home-hero-secondary, html body.home-page .hero--home h1, html body.home-page .hero--home .hero-lede, html body.home-page .hero--home .hero-lede > span { text-align: left !important; align-items: flex-start !important; }
  html body.home-page .hero--home .hero-lede { margin-left: 0 !important; margin-right: 0 !important; }
  html body.home-page .hero--home .home-service-area, html body.home-page .hero--home .btn-row, html body.home-page .hero--home .hero-welcome-m { justify-content: flex-start !important; text-align: left !important; }
  /* Line 1 plus the note must fit on one line: size the H1 from the container width (line 1 + note = about 14.5em) */
  html body.home-page .hero--home h1 { font-size: min(2.125rem, calc(100cqw / var(--h1-fit, 15)), 4.15svh) !important; }
  html body.home-page .hero--home h1 .hero-line { white-space: nowrap !important; text-wrap-mode: nowrap !important; }
  html body.home-page .hero--home > .hero-grid { overflow: visible !important; }
  html body.home-page .hero--home img.nw-handnote--hero { height: 0.64em !important; margin-left: 0.03em !important; vertical-align: 0.26em !important; transform: rotate(-7deg) !important; }
}

/* ===== All heroes (Oct 2026): left-aligned at every width; one headline size on phones; one hero height on wider screens ===== */
:root { --hero-h1-phone: min(2.125rem, calc((100vw - 44px) / 12.3)); }
@media (max-width: 720px) {
  html body :is(.nw-hero, .nw-hero-compact) :is(.hero-copy, .interior-hero-primary, .interior-hero-secondary, .nw-hero-compact-grid > div, h1, .page-lede, .nw-hero-label, .hero-nudge, .nw-service-area, .btn-row, .opening-actions) { text-align: left !important; align-items: flex-start !important; justify-content: flex-start !important; margin-left: 0 !important; margin-right: 0 !important; }
  html body :is(.nw-hero, .nw-hero-compact) .eyebrow-bubble { align-self: flex-start !important; margin-left: 0 !important; }
  html body :is(.nw-hero, .nw-hero-compact) h1, html body.home-page .hero--home h1 { font-size: var(--hero-h1-phone) !important; }
  /* Home: "(not therapy)" sits canted just above "care." so line 1 can run the full width */
  html body.home-page .hero--home .hero-noted { position: relative; }
  html body.home-page .hero--home img.nw-handnote--hero { position: absolute !important; right: -0.44em !important; bottom: calc(100% - 0.1em) !important; height: 0.52em !important; margin: 0 !important; vertical-align: 0 !important; transform: rotate(-5deg) !important; transform-origin: right bottom !important; }
}
@media (min-width: 721px) {
  html body .nw-hero.hero--interior, html body .nw-hero-compact { min-height: 360px !important; }
  html body .nw-hero-compact { display: flex !important; flex-direction: column !important; justify-content: center !important; }
}
@media (min-width: 721px) and (max-width: 1120px) {
  html body .nw-hero.hero--interior, html body .nw-hero-compact { min-height: 452px !important; }
}
@media (max-width: 340px) {
  html body.home-page .hero--home img.nw-handnote--hero { height: 0.46em !important; bottom: calc(100% - 0.02em) !important; }
}

@media (max-width: 720px) {

}

/* Hero details on phones (Oct 2026): location strip stays on one line; ledes avoid short last lines */
.sa-short { display: none; }
html body :is(.hero, .nw-hero-compact) :is(.page-lede, .hero-lede) { text-wrap: pretty; }
html body .nw-service-area > span { white-space: nowrap; }
@media (max-width: 720px) {
  html body .nw-service-area .sa-long { display: none; }
  html body .nw-service-area .sa-short { display: inline; }
  html body .nw-service-area { flex-wrap: nowrap !important; }
  html body.home-page .hero--home h1 { position: relative !important; }
  html body.home-page .hero--home .hero-noted:has(> .is-beside) { position: static !important; }
  html body.home-page .hero--home img.nw-handnote--hero.is-beside { left: var(--nx) !important; top: var(--ny) !important; bottom: auto !important; right: auto !important; width: var(--nw) !important; height: auto !important; transform: translateY(-50%) rotate(-5deg) !important; transform-origin: center center !important; }
}
@media (max-width: 389px) {
  html body:not(#_):not(#_).home-page .hero--home .hero-bubble { font-size: min(var(--fs-small), calc((100vw - 22px) * 0.042)) !important; }
}

/* ===== Topographic treatment on every solid colour block (Oct 2026): same faint contour lines as the service bands ===== */
html body :is(.home-price-strip, .nw-quote-row, .pv-role--family, .thursday) {
  background-image: url(images/home-2026/contour-white-22.png) !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: 20% 30% !important;
}
html body .home-price-strip--navigation { background-position: 75% 80% !important; }
@media (max-width: 720px) {
  html body :is(.home-price-strip, .nw-quote-row, .pv-role--family, .thursday) { background-size: 260% auto !important; }
}

/* Care pricing strip: thin divider between Monthly and Flex */
html body .home-price-strip--care .home-price-item + .home-price-item { border-left: 1px solid rgba(255, 255, 255, 0.28); padding-left: clamp(20px, 2.4vw, 36px); }
@media (max-width: 720px) {
  html body .home-price-strip--care .home-price-item + .home-price-item { border-left: 0; padding-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.28); padding-top: 12px; }
}

/* ===== Home: "Nov·in·way" definition card (Oct 10, 2026) =====
   Coral-tinted card with contour lines and a single coral top line. The from-line is set as normal text,
   not a flex row, so the non-breaking space added by the orphan script no longer becomes its own spaced item. */
html body .story-def{position:relative;isolation:isolate;overflow:hidden;background:var(--coral-10,#fdf1ef);border-radius:22px;padding:30px 32px 30px;box-shadow:0 14px 34px -22px rgba(27,42,74,.35)}
html body .story-def::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#e8998d;z-index:1}
html body .story-def::after{content:"";position:absolute;inset:0;z-index:-1;background:url(images/home-2026/contour-white.png) 70% 40%/900px auto no-repeat;filter:invert(1);opacity:.08}
html body .story-def .story-def-from{display:block!important}
html body .story-def .story-def-from i{margin:0 3px}
html body .story .story-def .story-def-text{font-size:1.25rem!important;line-height:1.5!important;color:var(--navy)!important}
html body .story-answer-text .story-points{border-top:0!important}
html body .story-answer-text .story-points>.story-point:first-child{border-top:0!important}
@media (max-width:720px){html body .story-def{padding:24px 20px 24px;border-radius:18px}html body .story .story-def .story-def-text{font-size:1.125rem!important}html body .story-def::after{background-size:640px auto}}

/* ===== Home: "1 in 6" stat card moves to the right on desktop (Oct 10, 2026); phones keep it first ===== */
@media (min-width:1121px){html body .story-problem{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}html body .story-problem>.story-stat{order:2}html body .story-problem>.story-problem-text{order:1}}

/* ===== Card rule (Oct 10, 2026): three surfaces =====
   1. White card: 4px top line in its service color + soft shadow. No contours, no side borders.
   2. Tinted panel: light tint + faint navy contour lines. No top line, shadow or border.
      General panels use the coral tint; Care and Navigation panels keep their service tints.
      Tints nested inside a card stay flat (no contours) so the card stays the one framed object.
   3. Solid block (navy or deep service color): white contour lines, no shadow.
   Photos never take a shadow. */
html body:not(#_):not(#_) main :is(.story-stat,.story-def,.navx-panel,.care-uses-foot,.nw-role,.guide-answer,.guide-download,.guide-note,.vx-path,.region-note,.news-boiler,.pr-receipt,.pv-share){
  border:0!important;box-shadow:none!important;
  background-image:url(images/brand/contour-navy-10.png)!important;background-size:900px auto!important;background-repeat:no-repeat!important;background-position:65% 40%!important}
html body:not(#_):not(#_) main :is(.story-stat,.story-def,.guide-note,.news-boiler,.pv-share){background-color:var(--coral-10)!important}
html body:not(#_):not(#_) main :is(.story-stat,.story-def)::before,html body:not(#_):not(#_) main :is(.story-stat,.story-def)::after{display:none!important}
html body:not(#_):not(#_) main :is(.nw-sample,.nw-calc-results,.pv-sample){border:0!important;box-shadow:none!important;background-image:none!important}
html body:not(#_):not(#_) main :is(.pv-role--you,.pv-role--us){border:1px solid color(srgb 0.890588 0.9 0.915294)!important;border-top:4px solid var(--coral)!important;box-shadow:0 1px 2px rgba(27,42,74,.05),0 10px 28px -14px rgba(27,42,74,.18)!important}
html body:not(#_):not(#_) main img{box-shadow:none!important}
@media (max-width:720px){html body:not(#_):not(#_) main :is(.story-stat,.story-def,.navx-panel,.care-uses-foot,.nw-role,.guide-answer,.guide-download,.guide-note,.vx-path,.region-note,.news-boiler,.pr-receipt,.pv-share){background-size:640px auto!important}}

/* Home definition card: from-line and part-of-speech at reading size (Oct 10, 2026) */
html body:not(#_) .story-def .story-def-from{font-size:1.125rem!important;line-height:1.4!important;margin-top:16px!important}
html body:not(#_) .story-def .story-def-pos{font-size:1.125rem!important}
@media (max-width:720px){html body:not(#_) .story-def .story-def-from{font-size:1.0625rem!important;margin-top:12px!important}html body:not(#_) .story-def .story-def-pos{font-size:1rem!important}}

/* ===== Home: autism + ADHD stat pair (Oct 10, 2026). Tinted panel under the card rule. ===== */
html body:not(#_) .story-stat--pair{gap:0!important;padding:34px 34px 28px!important}
html body:not(#_) .story-stat--pair, html body:not(#_) .story-stat--pair *{text-align:left!important}
.stat-pair{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;align-items:end}
.stat-pair-col{min-width:0}
.stat-pair-label{margin:0 0 8px;font:800 .875rem/1.2 var(--nw-display);letter-spacing:.06em;text-transform:uppercase;color:var(--coral-ink,#c4574a)}
html body:not(#_) .stat-pair-num{margin:0;font:800 clamp(3rem,4.6vw,4.25rem)/.9 var(--nw-display);letter-spacing:-.045em;color:var(--navy);white-space:nowrap}
.stat-pair-num::after{content:"";display:block;width:48px;height:4px;margin-top:10px;border-radius:2px;background:var(--coral)}
.stat-pair-caption{grid-column:1/-1;margin:14px 0 0;font:700 1.1875rem/1.3 var(--nw-display);letter-spacing:-.01em;color:var(--navy);text-wrap:balance}
.stat-pair-context{align-self:start;margin-top:18px;padding-top:14px;border-top:1px solid rgba(27,42,74,.14)}
.stat-pair-context p{margin:0;font:400 .9375rem/1.4 var(--nw-text);color:var(--slate)}
.stat-pair-context b{display:block;font:800 1.375rem/1.1 var(--nw-display);letter-spacing:-.02em;color:var(--navy);margin-bottom:2px}
html body:not(#_) .stat-pair-sources{margin:16px 0 0!important;white-space:normal!important;line-height:1.5!important}
@media (max-width:720px){
 html body:not(#_) .story-stat--pair{padding:26px 22px 22px!important}
 .stat-pair{column-gap:16px}
 html body:not(#_) .stat-pair-num{font-size:2.75rem}
 .stat-pair-label{font-size:.75rem}
 .stat-pair-caption{font-size:1.0625rem}
 .stat-pair-context b{font-size:1.25rem}
 .stat-pair-context p{font-size:.875rem}
}

/* Home stat pair balance (Oct 10, 2026): equal columns on desktop so the text and card match in height; larger card type on tablets */
@media (min-width:1121px){html body:not(#_) .story-problem{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:64px!important;align-items:center!important}}
@media (min-width:1121px){html body:not(#_) .story-stat--pair{padding:30px 34px 26px!important}html body:not(#_) .stat-pair-num{font-size:clamp(3rem,4.2vw,4rem)}}
@media (min-width:721px) and (max-width:1120px){html body:not(#_) .story-stat--pair{padding:36px 40px 30px!important}.stat-pair{column-gap:40px}html body:not(#_) .stat-pair-num{font-size:4.5rem}.stat-pair-label{font-size:.9375rem}.stat-pair-caption{font-size:1.375rem;margin-top:18px}.stat-pair-context b{font-size:1.625rem}.stat-pair-context p{font-size:1rem}html body:not(#_) .stat-pair-sources{font-size:.875rem!important}}

/* ===== Speech bubbles sit close to the heading they label (Oct 10, 2026): the tail tip stops about 6px above the letters at every width ===== */
html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 16px)!important}
@media (max-width:1440px){html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 14px)!important}}
@media (max-width:1280px){html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 13px)!important}}
@media (max-width:1120px){html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 11px)!important}}
@media (max-width:860px){html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 9px)!important}}
@media (max-width:789px){html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.72em - 8px)!important}}
html body:not(#_):not(#_) .nw-hero-label{margin-bottom:0!important}
@media (max-width:720px){
 html body.home-page:not(#_):not(#_) .hero--home .hero-bubble{margin-bottom:calc(0.5em + 7px)!important}
 html body:not(#_):not(#_) .nw-hero-label{margin-bottom:3px!important}
}

/* Home "Finding childcare" heading: always exactly two lines, never "hard." on its own (Oct 10, 2026) */
html body:not(#_) .home-opening-h2 .h2-line{display:block;white-space:nowrap}
@media (max-width:720px){html body:not(#_):not(#_) .home-opening-h2{font-size:min(1.625rem,calc((100vw - 44px) / 12.95))!important}}
@media (min-width:1121px){html body:not(#_):not(#_) .story-stat--pair{padding:40px 36px 34px!important}}

/* ===== Full-site visual check fixes (Oct 10, 2026) ===== */
/* 1. Guide contents: number keeps its width, text wraps normally */
html body:not(#_) #guide-contents a > span:first-child{flex:none}
html body:not(#_) #guide-contents a > span:last-child{flex:0 1 auto;min-width:min-content}
html body:not(#_) #guide-contents a > span:last-child{overflow-wrap:normal}
/* 2. Closing bands: single coral line, not the multi-color stripe */
html body:not(#_) .cta::before{background:var(--coral)!important}
/* 3. Guides: the help prompt no longer doubles the section rule above it */
html body:not(#_):not(#_) main .guide-nudge{border-top:0!important;margin-top:0!important;padding-top:4px!important}
/* 6. Same paragraph size within one block: About opening and "How Navigation begins" */
@media (min-width:721px){html body:not(#_):not(#_) .nw-opening-art .nw-body-text{font-size:var(--fs-lede)!important;line-height:1.55!important;color:inherit}}
html body:not(#_):not(#_) .nw-quote-copy > p:not(.nw-after){font-size:var(--fs-body)!important;line-height:1.55!important}
/* 7. Home Thursday toggle stays on one line on phones */
@media (max-width:480px){html body:not(#_):not(#_) button[data-thu]{white-space:nowrap!important;font-size:.875rem!important;padding-inline:12px!important}}
/* 8. Care plan cards on phones: price block lines up with the card heading */
@media (max-width:720px){html body:not(#_):not(#_):not(#_) main .pr-plan .pr-plan-price{padding-inline:0!important}}
/* 9. 90-day guide: room between the day tiles and the next section */
html body:not(#_):not(#_) .vx-phases{margin-bottom:40px!important}
/* 10. Pricing payment boxes and the FSA guide's figures follow the white-card rule */
html body:not(#_):not(#_) main :is(.vx-pay-routes > li,.vx-figure){background:#fff!important;border:1px solid color(srgb 0.890588 0.9 0.915294)!important;border-top:4px solid var(--coral)!important;box-shadow:0 1px 2px rgba(27,42,74,.05),0 10px 28px -14px rgba(27,42,74,.18)!important;border-radius:16px!important}
/* 12. "Explore" links on the service bands get a full-size tap area on phones */
@media (max-width:720px){html body:not(#_):not(#_) .svc-band-link{display:inline-flex!important;align-items:center!important;min-height:44px!important}}
/* News list on phones: smaller square thumbnails give the headlines room (Oct 10, 2026) */
@media (max-width:720px){
 html body:not(#_):not(#_) .news-item--thumb{grid-template-columns:84px minmax(0,1fr)!important;column-gap:14px!important}
 html body:not(#_):not(#_) .news-item--thumb .news-thumb{aspect-ratio:1/1;overflow:hidden}
 html body:not(#_):not(#_) .news-item--thumb .news-thumb img{width:100%;height:100%;object-fit:cover}
 html body:not(#_):not(#_) .news-item--thumb h2{font-size:1.0625rem!important;line-height:1.3!important}
}
@media (max-width:720px){html body:not(#_):not(#_) .news-item--thumb .news-thumb img[src*="news-bark-tank"]{object-fit:contain;background:#fdf5f4}}
html body:not(#_):not(#_) main .vx-pay-routes > li, html body:not(#_):not(#_) main .vx-pay-routes > li *{text-align:left!important}

/* Home hero (Oct 11, 2026): headline names autism and ADHD; on phones it scales so the longest line keeps its margin */
@media (max-width:720px){html body.home-page:not(#_):not(#_) .hero--home h1{font-size:min(34px,calc((100vw - 44px) / 13.4))!important}}

/* Stat pair on the narrowest phones (under 360px): numbers scale with the screen so "1 in 23" stays on one line (Oct 12, 2026) */
@media (max-width:359px){html body:not(#_):not(#_) .stat-pair-num{font-size:calc((100vw - 92px) / 6.6)!important}html body:not(#_):not(#_) .story-stat--pair{padding:22px 18px 20px!important}html body:not(#_):not(#_) .stat-pair{column-gap:12px!important}}

/* ===== Homepage hero, Oct 12, 2026 (approved): no bubble; three-line headline with "(not therapy)" nested on "childcare" at 5 degrees; coral "for" line; one sentence per line on desktop and tablet; "No diagnosis required." beside the button; full place names on phones ===== */
/* ===== Home hero, Oct 12, 2026: no bubble; original three-line headline; one bold line names who it's for ===== */
html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .home-hero-primary,html body.home-page:not(#_):not(#_):not(#_) .hero--home .home-hero-secondary{display:contents!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home h1{order:1!important;margin-top:clamp(18px,3vw,40px)!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-for{order:2!important;margin:22px 0 8px!important;max-width:36ch;font:800 clamp(1.1875rem,1.9vw,1.75rem)/1.22 var(--nw-display);letter-spacing:-.015em;color:#fff;text-wrap:balance}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-lede{order:3!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .home-service-area{order:4!important;margin-bottom:18px!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .btn-row{order:5!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-welcome-m{display:none!important}
/* "(not therapy)": about a third larger, same position */
html body.home-page:not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.82em!important}
@media (min-width:721px) and (max-width:1120px){html body.home-page:not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.84em!important}}
@media (max-width:720px){html body.home-page:not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.68em!important}
 html body.home-page:not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero.is-beside{width:calc(var(--nw) * 1.3)!important}}
@media (max-width:340px){html body.home-page:not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.6em!important}}

@media (min-width:1121px){html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-for{max-width:none;white-space:nowrap}}
@media (min-width:721px){html body.home-page:not(#_):not(#_):not(#_) .hero--home h1 .hero-line{white-space:nowrap}}
@media (max-width:389px){html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-for{font-size:1.0625rem!important}}

html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-for{color:#f2b5ac!important}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .btn-row{display:flex!important;align-items:center!important;flex-wrap:wrap;gap:12px 22px}
html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-nodx{margin:0;padding-left:22px;border-left:1px solid rgba(255,255,255,.35);color:rgba(255,255,255,.9);font-size:1rem}
@media (max-width:720px){html body.home-page:not(#_):not(#_):not(#_) .hero--home .hero-nodx{flex-basis:100%;padding-left:0;border-left:0;font-size:.9375rem}}/* "(not therapy)": tilted the other way ("not" high, "therapy" low), larger, nested on "childcare" */
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.98em!important;transform:rotate(5deg)!important;transform-origin:left center!important;margin-left:0.06em!important;vertical-align:0.34em!important}
@media (min-width:721px) and (max-width:1120px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:1em!important}}
@media (max-width:720px){
 html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.8em!important;transform:rotate(5deg)!important;transform-origin:center center!important;right:-0.3em!important;bottom:calc(100% - 0.28em)!important}
 html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero.is-beside{width:calc(var(--nw) * 1.5)!important;transform:translateY(-58%) rotate(5deg)!important}}
@media (max-width:340px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{height:0.7em!important}}
@media (min-width:721px){
 html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-noted{position:relative!important;display:inline-block!important}
 html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home img.nw-handnote--hero{position:absolute!important;right:-0.32em!important;bottom:calc(100% - 0.22em)!important;left:auto!important;top:auto!important;height:0.72em!important;width:auto!important;margin:0!important;vertical-align:0!important;transform:rotate(5deg)!important;transform-origin:center center!important}}
@media (max-width:720px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hsa-short{display:none!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hsa-long{display:inline!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .home-service-area{font-size:.9375rem!important;white-space:nowrap!important;gap:6px!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .home-service-area svg{width:18px!important;height:18px!important;flex:none}}@media (max-width:374px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .home-service-area{font-size:.875rem!important}}@media (max-width:359px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hsa-long{display:none!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hsa-short{display:inline!important}}/* Hero paragraph flows naturally (fills lines) instead of balancing them */
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede, html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede span{text-wrap:pretty!important}
/* Hero spacing: headline + "for" line grouped, paragraph + location grouped, action set apart */
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-for{margin:14px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede{margin:18px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .home-service-area{margin:12px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .btn-row{margin:26px 0 0!important}
@media (max-width:720px){
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-for{margin:10px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede{margin:14px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .home-service-area{margin:10px 0 0!important}
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .btn-row{margin:22px 0 0!important}
}@media (min-width:721px){html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede{max-width:none!important;width:auto!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede > span{max-width:none!important}html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home .hero-lede .ld-s{display:block;white-space:nowrap}}
/* ===== Hero labels site-wide, Oct 12, 2026 (approved): plain text above the headline, no pill or tail; Thursday tags without tails; Care band note at 5 degrees ===== */
/* Option A: hero labels become plain coral text above the headline (no pill, no tail) */
html body:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble{display:inline-block!important;background:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;color:#F2B5AC!important;text-transform:none!important;font:700 1.0625rem/1.2 var(--nw-display)!important;letter-spacing:0.012em!important;word-spacing:0.06em!important;text-shadow:none!important;margin:0!important}
html body:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble::first-letter{text-transform:uppercase}
html body:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble::before,html body:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble::after{display:none!important;content:none!important}
html body.care-page:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble{color:#B4C8F3!important}
html body.navigation-page:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble{color:#B2D3C1!important}
html body:not(#_):not(#_):not(#_) .nw-hero-label{margin:0 0 10px!important}
@media (max-width:720px){html body:not(#_):not(#_):not(#_) .nw-hero-label .eyebrow-bubble{font-size:.9375rem!important}html body:not(#_):not(#_):not(#_) .nw-hero-label{margin:0 0 8px!important}}
/* Thursday tags: no tails */
html body:not(#_):not(#_):not(#_) .thu-tag::after,html body:not(#_):not(#_):not(#_) .thu-tag::before{display:none!important;content:none!important}
html body:not(#_):not(#_):not(#_) .thu-tag{border-radius:999px!important}
/* Care band "(not therapy)": same 5-degree tilt as the hero, a touch larger */
html body:not(#_):not(#_):not(#_) .svc-band-title img.nw-handnote--over{transform:translate(-50%,0.12em) rotate(5deg)!important;height:0.7em!important;width:auto!important}
@media (max-width:720px){html body:not(#_):not(#_):not(#_) .svc-band-title img.nw-handnote--over{height:0.72em!important;width:auto!important}}


/* ===== "(not therapy)" everywhere it appears (Oct 12, 2026): same treatment as the homepage hero — nested on the end of the word it qualifies, partly over it, tilted 5 degrees ("not" higher), about 80% of the word's width ===== */
html body:not(#_):not(#_):not(#_) .nt-noted{position:relative!important;display:inline-block!important;white-space:nowrap}
html body:not(#_):not(#_):not(#_) img.nt-note{position:absolute!important;right:-0.32em!important;bottom:calc(100% - 0.1em)!important;left:auto!important;top:auto!important;height:0.72em!important;width:auto!important;max-width:none!important;margin:0!important;display:block!important;transform:rotate(5deg)!important;transform-origin:center center!important;pointer-events:none}
@media (max-width:720px){html body:not(#_):not(#_):not(#_) img.nt-note{height:0.78em!important;right:-0.3em!important;bottom:calc(100% - 0.1em)!important}}
/* room above lines that carry a note */
html body:not(#_):not(#_):not(#_) .care-panel-title{margin-top:0.55em!important}
html body:not(#_):not(#_):not(#_) .svc-band-title--note{margin-top:0.45em!important}

/* Service bands (Oct 12, 2026): no coral rule above the title on phones; room for the "(not therapy)" note */
html body:not(#_):not(#_):not(#_) .svc-band-title::before{display:none!important;content:none!important}
@media (max-width:720px){html body:not(#_):not(#_):not(#_) .svc-band-title{margin-top:10px!important}html body:not(#_):not(#_):not(#_) .svc-band-title--note{margin-top:30px!important}}
@media (min-width:721px) and (max-width:1120px){html body:not(#_):not(#_):not(#_) .svc-band-inner{flex-wrap:nowrap!important}html body:not(#_):not(#_):not(#_) .svc-band-title{flex:1 1 auto!important;min-width:0!important}html body:not(#_):not(#_):not(#_) .svc-band-link{flex:none!important}}
/* Care page panel title (Oct 12, 2026): "This is childcare, not therapy." in two lines on desktop and tablet */
@media (min-width:721px){html body:not(#_):not(#_):not(#_) .care-panel-title{font-size:min(2.25rem,3.35vw)!important;line-height:1.08!important}}

/* Homepage hero text colors (Oct 12, 2026): headline full white; "for" line and note light coral; all supporting text one soft white (85%) at every width */
html body.home-page:not(#_):not(#_):not(#_):not(#_) .hero--home :is(.hero-lede,.hero-lede span,.home-service-area,.home-service-area span,.hero-nodx){color:rgba(255,255,255,.85)!important}

/* Homepage service sections (Oct 12, 2026): the opening line under each band is the section's message, set in the bold heading font in navy */
html body:not(#_):not(#_):not(#_) .svc-band-lede{font:800 clamp(1.25rem,1.9vw,1.625rem)/1.25 var(--nw-display)!important;letter-spacing:-0.01em!important;color:var(--navy)!important}
@media (max-width:720px){html body:not(#_):not(#_):not(#_) .svc-band-lede .ls{display:block;text-wrap:balance}}

/* Homepage Navigation card (Oct 12, 2026): the lists are gone, so the invitation stands alone with no divider */


/* ===== Homepage Navigation section (Oct 12, 2026): fuller explanation for new and experienced families beside a photo; invitation card with the three lists ===== */
html body:not(#_):not(#_):not(#_) .navx-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:44px;align-items:center}
html body:not(#_):not(#_):not(#_) .navx-top .navx-copy{display:block!important;columns:auto!important;grid-template-columns:none!important;margin:0!important}
html body:not(#_):not(#_):not(#_):not(#_) .navx-top .navx-copy p{margin:0 0 14px!important;max-width:none!important;font-size:1.0625rem!important;line-height:1.6!important}
html body:not(#_):not(#_):not(#_) .navx-decide{margin-top:18px!important}
html body:not(#_):not(#_):not(#_) .navx-decide strong{display:block;font:800 1.125rem/1.3 var(--nw-display);color:var(--navy);margin-bottom:4px}
html body:not(#_):not(#_):not(#_) .navx-photo{margin:0}
html body:not(#_):not(#_):not(#_) .navx-photo img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:none!important}
html body:not(#_):not(#_):not(#_) .navx-photo figcaption{margin-top:8px;font-size:.875rem;color:var(--slate)}
@media (max-width:759px){html body:not(#_):not(#_):not(#_) .navx-top{grid-template-columns:1fr;gap:20px}html body:not(#_):not(#_):not(#_) .navx-photo{order:-1}}
html body:not(#_):not(#_):not(#_):not(#_):not(#_) .service-overview--navigation .svc-band-lede{margin-bottom:24px!important}
html body:not(#_):not(#_):not(#_):not(#_):not(#_) .service-overview--navigation .navx{margin-top:0!important;padding-top:0!important;gap:0!important;row-gap:0!important}
html body:not(#_):not(#_):not(#_):not(#_):not(#_) .service-overview--navigation .navx-panel{margin-top:24px!important}
html body:not(#_):not(#_):not(#_):not(#_):not(#_) .service-overview--navigation .home-price-strip{margin-top:16px!important}
/* Navigation section balance: copy and photo share one height, tops and bottoms aligned; the photo fills its column */
@media (min-width:760px){
 html body:not(#_):not(#_):not(#_):not(#_) .navx-top{align-items:stretch!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:40px!important}
 html body:not(#_):not(#_):not(#_):not(#_) .navx-top .navx-copy{align-self:center}
 html body:not(#_):not(#_):not(#_):not(#_) .navx-photo{display:flex;flex-direction:column;min-height:300px}
 html body:not(#_):not(#_):not(#_):not(#_) .navx-photo img{flex:1 1 0;height:0!important;min-height:0;object-fit:cover;object-position:50% 45%}
 html body:not(#_):not(#_):not(#_):not(#_) .navx-top .navx-copy p:last-child{margin-bottom:0!important}
}
@media (min-width:1000px){html body:not(#_):not(#_):not(#_):not(#_) .navx-lists{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px 28px!important}}
