@font-face { font-family: Mukta; font-style: normal; font-weight: 400; font-display: swap; src: url('/assets/fonts/mukta-400-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 400; font-display: swap; src: url('/assets/fonts/mukta-400-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 400; font-display: swap; src: url('/assets/fonts/mukta-400-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 500; font-display: swap; src: url('/assets/fonts/mukta-500-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 500; font-display: swap; src: url('/assets/fonts/mukta-500-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 500; font-display: swap; src: url('/assets/fonts/mukta-500-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 600; font-display: swap; src: url('/assets/fonts/mukta-600-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 600; font-display: swap; src: url('/assets/fonts/mukta-600-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 600; font-display: swap; src: url('/assets/fonts/mukta-600-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 800; font-display: swap; src: url('/assets/fonts/mukta-800-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 800; font-display: swap; src: url('/assets/fonts/mukta-800-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Mukta; font-style: normal; font-weight: 800; font-display: swap; src: url('/assets/fonts/mukta-800-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09; }

:root {
  --harbor: #24474c;
  --harbor-deep: #173337;
  --clay: #ad6650;
  --clay-dark: #8a5644;
  --moss: #4b7f52;
  --ink: #232823;
  --quiet: #63706a;
  --line: #d9ddd6;
  --focus-ring: #ad6650;
  --link-hover: #8a5644;
  --content-max: 1380px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); font-family: Mukta, 'Noto Sans', sans-serif; font-size-adjust: from-font; -webkit-font-smoothing: antialiased; }
body, button { font-family: Mukta, 'Noto Sans', sans-serif; }
a { color: var(--harbor); text-decoration: none; }
a:hover { color: var(--link-hover); }
p { text-wrap: pretty; }
h1, h2 { text-wrap: balance; }
section { scroll-margin-top: 1.5rem; }

.surface-deep {
  --focus-ring: #c9998a;
  --link-hover: #dec2b9;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E"),
    radial-gradient(120% 130% at 75% 10%, #2d5b60 0%, #24474c 52%, #173337 100%);
}
.surface-base {
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E"),
    linear-gradient(176deg, #f8f8f4 0%, #eeefe9 100%);
}
.surface-raised {
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E"),
    linear-gradient(180deg, #fdfdfa 0%, #f6f6f1 100%);
}

.site-header { height: 5rem; padding: 0 5rem; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; background: rgba(255,255,252,.97); border-bottom: 1px solid rgba(36,71,76,.08); }
.wordmark, .footer-wordmark { display: flex; align-items: center; gap: .5rem; font-size: 1.75rem; font-weight: 800; letter-spacing: -.035em; }
.brand-mark { width: 2.75rem; height: 2.75rem; display: block; flex: 0 0 auto; }
.nav-list, .footer-links, .footer-contact { display: flex; align-items: center; gap: 2rem; margin: 0; padding: 0; list-style: none; }
.nav-list a { font-size: .9375rem; color: var(--harbor); }
.button { appearance: none; border: 0; border-radius: .5rem; font-size: 1rem; font-weight: 600; cursor: pointer; }
.button-header { justify-self: end; padding: .75rem 2rem; background: var(--harbor); color: #fff; }
.button-primary { padding: .875rem 2.75rem; background: linear-gradient(180deg, #c57860, #ad6650); color: #fff; box-shadow: 0 .375rem 1rem rgba(21,42,45,.12); }
[aria-disabled="true"] { cursor: not-allowed; }

.hero { position: relative; min-height: 31rem; padding: 4.5rem 5rem; color: #fff; }
.hero-content { max-width: 39rem; }
.hero h1 { margin: 0; font-size: 3.75rem; line-height: 1.02; letter-spacing: -.035em; font-weight: 800; }
.accent-rule { display: block; width: 3.25rem; height: .1875rem; margin: 1.75rem 0; background: var(--clay); }
.hero p { max-width: 32rem; margin: 0 0 1.75rem; font-size: 1.1875rem; line-height: 1.45; color: #d5e0de; }
.hero-note { position: absolute; top: 27%; right: 9%; max-width: 24rem; }
.hero-note p { margin: 0; color: #f2eee7; font-family: Mukta, 'Noto Sans', sans-serif; font-size: 2rem; line-height: 1.25; letter-spacing: -.02em; }
.hero-note .accent-rule { width: 2.75rem; margin: 1.375rem 0 0; }

.recognition, .care-order { min-height: 38rem; padding: 4rem 5rem; display: grid; grid-template-columns: minmax(20rem, .72fr) minmax(38rem, 1.28fr); gap: 4rem; align-items: center; overflow: hidden; }
.section-copy { max-width: 31rem; }
.section-copy h2, .services h2, .commitments h2, .care-team h2 { margin: 0; color: #102c3a; font-size: 3.25rem; line-height: 1.05; letter-spacing: -.035em; font-weight: 800; }
.section-copy p { margin: 0 0 1.25rem; color: var(--quiet); font-size: 1.125rem; line-height: 1.5; max-width: 31rem; }
.section-copy .quiet-copy { color: #77827d; }

.fragmentation { position: relative; width: 42rem; height: 27rem; min-width: 42rem; justify-self: end; }
.source-card { position: absolute; z-index: 2; width: 15rem; padding: .875rem 1rem; background: rgba(255,255,255,.97); border: 1px solid #e0e2dc; border-radius: .5rem; box-shadow: 0 .75rem 2rem rgba(30,53,55,.09); }
.source-lab { left: 0; top: 1rem; transform: rotate(-3deg); }
.source-rx { right: 0; top: 2rem; transform: rotate(4deg); }
.source-app { left: 4rem; bottom: 1rem; transform: rotate(2deg); }
.source-family { right: 0; bottom: 1.5rem; background: #fff4cf; transform: rotate(4deg); }
.source-heading { display: flex; align-items: center; gap: .625rem; color: #102c3a; }
.source-heading h3 { margin: 0; font-size: 1rem; line-height: 1.1; font-weight: 600; }
.source-heading time { margin-left: auto; color: #7a8580; font-size: .6875rem; }
.source-icon { font-size: 1.125rem; color: var(--harbor); }
.source-rx-mark { font-size: 1.5rem; }
.source-card p { margin: .875rem 0 .625rem; font-size: .875rem; line-height: 1.35; }
.source-card strong { color: #102c3a; font-size: 1rem; }
.lab-lines { margin: .75rem 0 0; font-size: .75rem; color: #53625d; }
.lab-lines div { display: flex; justify-content: space-between; align-items: center; padding: .25rem 0; border-bottom: 1px solid #e4e6e1; }
.lab-lines dt, .lab-lines dd { margin: 0; }
.tag { display: inline-block; min-width: 3.75rem; margin-left: .5rem; padding: .125rem .375rem; border-radius: .25rem; text-align: center; }
.tag-high { color: #8f5b21; background: #f7e7cf; }
.tag-watch { color: #7d631d; background: #f4edc9; }
.tag-low { color: #9a554f; background: #f8dfdc; }
.app-mark { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: .375rem; color: #fff; background: var(--harbor); }
.app-message { padding: .75rem; border-radius: .375rem; background: #f1f2ef; }
.placeholder-line { display: block; width: 55%; height: .375rem; margin-top: .375rem; border-radius: 1rem; background: #dfe2dc; }
.placeholder-line.wide { width: 82%; }
.source-family p { font-size: 1rem; font-style: italic; color: #5e523a; }
.fragment-lines { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; fill: none; stroke: #91a5a4; stroke-width: 1.5; stroke-dasharray: 6 7; }

.care-order { grid-template-columns: minmax(19rem, .58fr) minmax(45rem, 1.42fr); min-height: 42rem; }
.care-order-copy { align-self: center; }
.care-order-copy h2 { font-size: 2.5rem; }
.care-map { position: relative; width: 52rem; height: 31.25rem; justify-self: end; }
.care-inputs { position: absolute; z-index: 2; left: 0; top: 1rem; width: 8.5rem; margin: 0; padding: 0; display: grid; gap: .75rem; list-style: none; }
.care-inputs li { min-height: 4.5rem; padding: .75rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; border: 1px solid #e1e3dd; border-radius: .5rem; background: rgba(255,255,255,.92); box-shadow: 0 .375rem 1.25rem rgba(30,53,55,.06); color: #13323e; font-size: .875rem; font-weight: 600; line-height: 1.1; }
.care-inputs b { color: var(--harbor); font-size: 1.25rem; }
.role-card { position: absolute; z-index: 2; top: 0; width: 13.5rem; height: 26.875rem; border: 1px solid #dedfd9; border-radius: .75rem; background: #f7f4ed; box-shadow: 0 .75rem 1.5rem rgba(32,52,54,.11); }
.physician-flow { left: 13.125rem; }
.coach-flow { left: 38.5rem; }
.role-card img { display: block; width: 100%; height: 10.75rem; object-fit: cover; object-position: 50% 25%; border-radius: .75rem .75rem 0 0; }
.coach-flow img { object-position: 50% 20%; }
.illustration-label { position: absolute; top: 8.25rem; right: .5rem; z-index: 2; padding: .125rem .375rem; border-radius: .25rem; background: rgba(20,47,51,.82); color: #fff; font-size: .625rem; font-weight: 500; line-height: 1.2; }
.role-card-body { position: relative; z-index: 1; min-height: 17.125rem; margin: -1.125rem .5rem 0; padding: 1rem .875rem 1.125rem; border: 1px solid #e0dfd8; border-radius: .5rem; background: rgba(249,247,241,.98); box-shadow: 0 .25rem .75rem rgba(32,52,54,.06); }
.role-card h3 { margin: 0 0 .5rem; color: #14323d; font-size: 1rem; font-weight: 600; }
.role-card ul { margin: 0; padding: 0; list-style: none; }
.role-card li { display: flex; gap: .75rem; align-items: center; min-height: 2.5rem; border-top: 1px solid #deded8; color: #354844; font-size: .9375rem; }
.role-card li span { width: 1.25rem; color: var(--clay); font-size: 1.125rem; text-align: center; }
.coach-flow li span { color: #21647b; }
.one-plan { position: absolute; z-index: 3; left: 30.5rem; top: 9.375rem; width: 4.75rem; height: 8.125rem; display: grid; place-content: center; gap: .75rem; border: 1px solid #e0e2dd; border-radius: .5rem; background: rgba(255,255,255,.97); box-shadow: 0 .5rem 1.5rem rgba(32,52,54,.08); color: #163540; text-align: center; }
.one-plan span { position: relative; display: grid; place-items: center; width: 2.25rem; height: 2.75rem; margin: auto; border: .125rem solid #769397; border-radius: .1875rem; color: var(--moss); background: #f4f7f5; font-weight: 800; }
.one-plan span::after { content: ''; position: absolute; top: -.125rem; right: -.125rem; width: .625rem; height: .625rem; border-bottom: .125rem solid #769397; border-left: .125rem solid #769397; background: #fff; }
.one-plan strong { font-size: .875rem; }
.care-connectors { position: absolute; inset: 0; z-index: 3; width: 100%; height: 100%; fill: #fff; stroke: #24647a; stroke-width: 2.25; pointer-events: none; }
.care-connectors path { fill: none; }
.care-connectors marker path { stroke: none; }
.care-connectors .marker-blue { fill: #24647a; }
.care-connectors .marker-clay { fill: var(--clay); }
.care-connectors .line-clay { stroke: var(--clay); }
.care-connectors .line-green { stroke: var(--moss); }
.care-connectors .line-grey { stroke: #849695; }
.care-connectors .line-forward { marker-end: url(#arrow-blue); }
.care-connectors .line-return { marker-end: url(#arrow-clay); }
.care-connectors .return-node { fill: #fff; stroke: var(--clay); }

.services, .commitments { padding: 3.75rem 5rem 4.25rem; border-top: 1px solid var(--line); }
.services h2, .commitments h2 { font-size: 2.75rem; }
.services .accent-rule, .commitments .accent-rule { margin: 1.25rem 0 2rem; }
.services-grid, .commitments-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; }
.services-grid > li, .commitments-grid > li { min-height: 8.75rem; padding: .75rem 2.5rem; display: flex; gap: 1.25rem; border-left: 1px solid var(--line); }
.services-grid > li:first-child, .commitments-grid > li:first-child { padding-left: 0; border-left: 0; }
.services-grid h3, .commitments-grid h3 { margin: 0 0 .75rem; color: #17333e; font-size: 1.125rem; line-height: 1.25; font-weight: 600; }
.services-grid p, .commitments-grid p { margin: 0; color: #6e7874; font-size: 1rem; line-height: 1.45; }
.feature-icon, .commitment-icon { flex: 0 0 auto; color: var(--harbor); font-size: 2rem; line-height: 1; }
.commitment-icon.clay { color: var(--clay); }

.care-team { padding: 3.75rem 5rem 4rem; display: grid; grid-template-columns: minmax(20rem, .8fr) minmax(38rem, 1.2fr); gap: 3rem; align-items: end; border-top: 1px solid var(--line); }
.care-team h2 { font-size: 2.5rem; }
.care-team-intro p { max-width: 28rem; margin: 0; color: #6b7772; font-size: 1.0625rem; line-height: 1.45; }
.team-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.team-cards li { position: relative; min-height: 11rem; display: grid; grid-template-columns: 7.5rem 1fr; overflow: hidden; border: 1px solid #dfe1db; border-radius: .625rem; background: rgba(255,255,255,.78); box-shadow: 0 .375rem 1.5rem rgba(30,53,55,.05); }
.team-cards img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
.team-cards .illustration-label { top: auto; right: auto; bottom: .5rem; left: .5rem; }
.team-cards div { padding: 1.5rem 1.25rem; }
.team-cards h3 { margin: 0 0 .625rem; color: #17333e; font-size: 1.125rem; font-weight: 600; }
.team-cards p { margin: 0; color: #5f6d67; font-size: .9375rem; line-height: 1.45; }

.pilot { padding: 3.5rem 5rem; display: flex; align-items: center; justify-content: space-between; gap: 3rem; color: #fff; }
.pilot h2 { margin: 0; font-size: 2.5rem; line-height: 1.1; letter-spacing: -.025em; }
.pilot .accent-rule { margin: 1rem 0; }
.pilot p { margin: 0; color: #d1dddb; font-size: 1.0625rem; }
.pilot .button { flex: 0 0 auto; min-width: 13rem; }

.site-footer { padding: 2.5rem 5rem; display: grid; grid-template-columns: 1fr auto auto; align-items: start; gap: 2.5rem; background: #fff; }
.footer-wordmark { margin: 0; color: var(--harbor); }
.footer-links, .footer-contact { gap: 1.5rem; }
.footer-links a, .footer-contact a, .footer-contact span { color: #5d6964; font-size: .875rem; }
.footer-disclaimer { grid-column: 1 / 3; max-width: 45rem; margin: 0; color: #697570; font-size: .8125rem; line-height: 1.5; }
.copyright { justify-self: end; margin: 0; color: #75807b; font-size: .8125rem; }

@keyframes riseIn { from { opacity: 0; transform: translateY(.875rem); } to { opacity: 1; transform: translateY(0); } }
.rise { animation: riseIn .6s cubic-bezier(.16,1,.3,1) both; }
.skip-link { position: fixed; top: -6.25rem; left: 1.25rem; z-index: 20; padding: .75rem 1.25rem; background: #fff; }
.skip-link:focus { top: 1rem; }
:where(a, button):focus-visible { outline: .1875rem solid var(--focus-ring); outline-offset: .375rem; }
a[data-waitlist]:hover { filter: brightness(.94); }

@media (min-width: 1600px) {
  .site-header, #main-content > section, .site-footer { padding-left: max(5rem, calc((100vw - var(--content-max)) / 2)); padding-right: max(5rem, calc((100vw - var(--content-max)) / 2)); }
  .recognition, .care-order { gap: 6rem; }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .site-header, #main-content > section, .site-footer { padding-left: 2.5rem; padding-right: 2.5rem; }
  .nav-list { gap: 1.25rem; }
  .hero h1 { font-size: 3.25rem; }
  .recognition { grid-template-columns: 19rem 1fr; gap: 1.5rem; }
  .care-order { grid-template-columns: 17rem 1fr; gap: 1.25rem; }
  .section-copy h2 { font-size: 2.5rem; }
  .care-order-copy h2 { font-size: 2rem; }
  .fragmentation { min-width: 0; transform: scale(.88); transform-origin: center; }
  .hero-note { top: 29%; right: 2.5rem; max-width: 18rem; }
  .hero-note p { font-size: 1.5rem; }
  .care-map { transform: scale(.76); transform-origin: left center; }
  .care-team { grid-template-columns: 19rem 1fr; gap: 1.5rem; }
  .team-cards li { grid-template-columns: 6rem 1fr; }
  .team-cards div { padding: 1.25rem 1rem; }
  .services-grid > li, .commitments-grid > li { padding-left: 1.5rem; padding-right: 1.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .rise { animation: none; }
}

/* What we do today page */
.today-hero { min-height: 31rem; padding: 5rem 5rem 5.5rem; display: grid; grid-template-columns: minmax(0, .9fr) minmax(30rem, 1.1fr); gap: 6rem; align-items: end; color: #fff; }
.today-hero-copy { max-width: 36rem; }
.today-eyebrow { margin: 0 0 1rem; color: #c9998a; font-size: .8125rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.today-eyebrow-dark { color: var(--clay-dark); }
.today-hero h1 { margin: 0; font-size: 4.25rem; line-height: .98; letter-spacing: -.045em; font-weight: 800; }
.today-hero .accent-rule { margin: 1.75rem 0 1.5rem; }
.today-hero-copy > p:last-child { max-width: 34rem; margin: 0; color: #d5e0de; font-size: 1.25rem; line-height: 1.45; }
.today-cohorts { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; list-style: none; }
.today-cohorts li { min-height: 12rem; padding: 1.5rem; border: 1px solid rgba(231,239,236,.24); border-radius: .625rem; background: rgba(255,255,255,.08); }
.today-number { color: var(--clay); font-size: .8125rem; font-weight: 600; letter-spacing: .12em; }
.today-cohorts .today-number { color: #c9998a; }
.today-cohorts h2 { margin: .75rem 0 .625rem; color: #fff; font-size: 1.5rem; line-height: 1.1; font-weight: 600; }
.today-cohorts p { margin: 0; color: #d5e0de; font-size: 1rem; line-height: 1.45; }
.today-services { padding: 4.75rem 5rem 5rem; border-top: 1px solid rgba(36,71,76,.1); }
.today-services-head { max-width: 68rem; margin: 0 auto 3rem; display: flex; justify-content: space-between; gap: 4rem; align-items: end; }
.today-services-head h2 { max-width: 31rem; margin: 0; color: #102c3a; font-size: 3rem; line-height: 1.04; letter-spacing: -.035em; font-weight: 800; }
.today-services-head > p { max-width: 27rem; margin: 0; color: var(--quiet); font-size: 1.125rem; line-height: 1.5; }
.today-service-grid { max-width: 68rem; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; list-style: none; }
.today-service-grid li { min-height: 18rem; padding: 1.5rem; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: .625rem; background: rgba(255,255,255,.76); box-shadow: 0 .375rem 1.5rem rgba(30,53,55,.045); }
.today-service-grid h3 { margin: 1.5rem 0 .75rem; color: #17333e; font-size: 1.375rem; line-height: 1.12; font-weight: 600; }
.today-service-grid p { margin: 0; color: #5f6d67; font-size: .9375rem; line-height: 1.45; }

@media (min-width: 1600px) {
  .today-hero, .today-services { padding-left: max(5rem, calc((100vw - var(--content-max)) / 2)); padding-right: max(5rem, calc((100vw - var(--content-max)) / 2)); }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .today-hero, .today-services { padding-left: 2.5rem; padding-right: 2.5rem; }
  .today-hero { grid-template-columns: minmax(0, .85fr) minmax(27rem, 1.15fr); gap: 3rem; }
  .today-hero h1 { font-size: 3.5rem; }
  .today-services-head { gap: 2rem; }
  .today-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Our care delivery page */
.delivery-hero { min-height: 30rem; padding: 4.5rem 5rem 4.25rem; display: grid; grid-template-columns: minmax(22rem, .9fr) minmax(30rem, 1.1fr); gap: 5rem; align-items: center; color: #fff; }
.delivery-hero-copy { max-width: 35rem; }
.delivery-eyebrow { margin: 0 0 1rem; color: #c9998a; font-size: .8125rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.delivery-eyebrow-dark { color: var(--clay-dark); }
.delivery-hero h1 { margin: 0; font-size: 4rem; line-height: 1; letter-spacing: -.04em; font-weight: 800; }
.delivery-hero .accent-rule { margin: 1.75rem 0 1.5rem; }
.delivery-hero-copy > p:last-child { max-width: 31rem; margin: 0; color: #d5e0de; font-size: 1.25rem; line-height: 1.45; }
.delivery-thread { position: relative; margin: 0; padding: .5rem 0 .5rem 2.5rem; display: grid; gap: .875rem; list-style: none; color: #eef3ef; font-size: 1.125rem; }
.delivery-thread::before { content: ''; position: absolute; top: 1.125rem; bottom: 1.125rem; left: .625rem; border-left: 1px solid rgba(213,224,222,.45); }
.delivery-thread li { position: relative; min-height: 2.25rem; display: flex; align-items: center; gap: 1rem; }
.delivery-thread li::before { content: ''; position: absolute; left: -2.25rem; width: .75rem; height: .75rem; border: .1875rem solid #c9998a; border-radius: 50%; background: var(--harbor-deep); }
.delivery-thread span { width: 1.75rem; color: #c9998a; font-size: .8125rem; font-weight: 600; letter-spacing: .08em; }
.delivery-journey { padding: 4.75rem 5rem 5rem; border-top: 1px solid rgba(36,71,76,.1); }
.delivery-journey-head { max-width: 68rem; margin: 0 auto 3rem; display: flex; justify-content: space-between; gap: 4rem; align-items: end; }
.delivery-journey-head h2 { max-width: 32rem; margin: 0; color: #102c3a; font-size: 3rem; line-height: 1.04; letter-spacing: -.035em; font-weight: 800; }
.delivery-journey-head > p { max-width: 27rem; margin: 0; color: var(--quiet); font-size: 1.125rem; line-height: 1.5; }
.delivery-cards { max-width: 68rem; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; list-style: none; }
.delivery-card { min-height: 20rem; padding: 1.5rem 1.5rem 1.375rem; display: flex; flex-direction: column; border: 1px solid #d9ddd6; border-radius: .625rem; background: rgba(255,255,255,.76); box-shadow: 0 .375rem 1.5rem rgba(30,53,55,.045); }
.delivery-number { color: var(--clay-dark); font-size: .8125rem; font-weight: 600; letter-spacing: .12em; }
.delivery-card h3 { margin: .75rem 0 .625rem; color: #17333e; font-size: 1.25rem; line-height: 1.16; font-weight: 600; }
.delivery-card > p:not(.delivery-output) { margin: 0; color: #5f6d67; font-size: .9375rem; line-height: 1.45; }
.delivery-output { margin: auto 0 0; padding-top: 1.25rem; color: #354844; font-size: .875rem; line-height: 1.4; }
.delivery-output strong { display: block; margin-bottom: .25rem; color: var(--harbor); font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; }
.delivery-closing { padding: 3.25rem 5rem; color: #fff; text-align: center; }
.delivery-closing p { max-width: none; margin: 0 auto; color: #e7efec; font-family: Mukta, 'Noto Sans', sans-serif; font-size: 1.5rem; line-height: 1.25; letter-spacing: -.02em; white-space: nowrap; }

@media (min-width: 1600px) {
  .delivery-hero, .delivery-journey, .delivery-closing { padding-left: max(5rem, calc((100vw - var(--content-max)) / 2)); padding-right: max(5rem, calc((100vw - var(--content-max)) / 2)); }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .delivery-hero, .delivery-journey, .delivery-closing { padding-left: 2.5rem; padding-right: 2.5rem; }
  .delivery-hero { grid-template-columns: minmax(19rem, .85fr) minmax(27rem, 1.15fr); gap: 3rem; }
  .delivery-hero h1 { font-size: 3.25rem; }
  .delivery-journey-head { gap: 2rem; }
  .delivery-journey-head h2 { font-size: 2.5rem; }
  .delivery-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
