/* Shared finishing layer for static pages. The homepage owns its own layout.
   Existing Beacon tokens, routes, controls and content remain the foundation. */
body {
  --finish-ease: cubic-bezier(.22,1,.36,1);
  --finish-edge: color-mix(in oklab,var(--social) 12%,transparent);
  --finish-shadow: 0 20px 48px -30px color-mix(in oklab,var(--social) 24%,transparent);
  --finish-hero: radial-gradient(ellipse at 90% 25%,#2784a009,transparent 56%),radial-gradient(ellipse at 65% 5%,#a5489106,transparent 50%),#fff;
}
main :is(h1,h2,h3), .page-header h1 { text-wrap: balance; }
main :is(p,dd,li) { text-wrap: pretty; }
main a:focus-visible, main button:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
:is(.page-clinicians,.page-team,.page-pricing) .page-hero {
  padding-block:clamp(3rem,5.5vw,5rem);
  background:var(--finish-hero);
}
:is(.page-clinicians,.page-team,.page-pricing) .page-hero h1,
.gs-intro h1, .legacy-page .page-header h1 {
  font-size:clamp(2.75rem,4.5vw,4.25rem);
  font-weight:560;
  line-height:1.07;
  letter-spacing:-.055em;
}
:is(.page-clinicians,.page-team) .page-hero .lede {
  font-size:clamp(1.0625rem,1.4vw,1.2rem);
  line-height:1.65;
  max-width:34rem;
}
:is(.page-clinicians,.page-team,.page-pricing) .p3-field { opacity:.13; }
:is(.page-clinicians,.page-team) .page-hero .grad,
.page-pricing .page-hero .grad { color:var(--bio); }
:is(.page-clinicians,.page-team) .section { padding-block:clamp(3.5rem,6vw,5.5rem); }
:is(.page-clinicians,.page-team) .section-title,
.page-team .advisors-title { font-weight:550; letter-spacing:-.045em; line-height:1.14; }
/* Keep reading surfaces still. Local demonstrations provide the motion. */
html.motion :is(.page-clinicians,.page-team,.page-patients) .reveal { transform:none; opacity:1; }

/* Clinical story: the same navy enclosure and white output used on the home. */
.page-clinicians .bc-story {
  padding:8px;
  border:1px solid var(--finish-edge);
  border-radius:24px;
  background:linear-gradient(140deg,#163f5c,#092e4d);
  box-shadow:var(--finish-shadow);
}
.page-clinicians .bc-title { color:#edf6fa; margin:0; padding:7px 8px 13px; font-size:.8125rem; }
.page-clinicians .bc-title .motion-toggle { min-height:36px; color:#d7e9f1; border-color:#ffffff28; background:#ffffff08; }
.page-clinicians .bc-title .motion-toggle:hover { background:#ffffff16; }
.page-clinicians .bc-visual { border:0; border-radius:16px; }
.page-clinicians .bc-stage { aspect-ratio:1.85; border-radius:16px 16px 0 0; }
.page-clinicians .bc-roles { font-size:.75rem; }
.page-clinicians .bc-setting { opacity:.85; }
.page-clinicians .bc-output { min-height:96px; padding:12px 16px; }
.page-clinicians .bc-story .bc-output-items li { font-size:.75rem; }
.page-clinicians .bc-readout { padding:4px 8px 0; margin-top:12px; }
.page-clinicians .bc-steps { gap:7px; }
.page-clinicians .bc-steps li { border-left:0; padding-left:0; grid-template-columns:95px 1fr; gap:12px; align-items:center; }
.page-clinicians .bc-steps button { color:#e4eef5; background:#ffffff08; border-color:#ffffff16; }
.page-clinicians .bc-steps button[aria-pressed='true'] { color:#fff; background:#2784a055; border-color:#8fc4d366; }
.page-clinicians .bc-steps p { color:#c8dce7; font-size:.75rem; margin:0; }
.page-clinicians .bc-step-label { display:flex; align-items:center; gap:7px; min-height:40px; color:#bdd2e0; font-size:.75rem; padding-left:10px; border-left:2px solid #ffffff18; transition:color 200ms var(--finish-ease),border-color 200ms var(--finish-ease); }
.page-clinicians .bc-story[data-phase='0'] .bc-steps li:nth-child(1) .bc-step-label,
.page-clinicians .bc-story[data-phase='1'] .bc-steps li:nth-child(2) .bc-step-label,
.page-clinicians .bc-story[data-phase='2'] .bc-steps li:nth-child(3) .bc-step-label { color:#fff; border-color:#85cedc; }
.page-clinicians .bc-disclosure { color:#acc6d7; padding:0 8px 5px; font-size:.625rem; }
.page-clinicians .domains { align-items:center; gap:clamp(2rem,6vw,6rem); }
.page-clinicians .domain-list { display:grid; gap:12px; }
.page-clinicians .domain-row { padding:18px 20px; border:1px solid var(--finish-edge); border-radius:12px; background:#fff; }
.page-clinicians .compass-shell { border:1px solid #fff; border-radius:24px; padding:20px; background:#fff; box-shadow:var(--finish-shadow); }
.page-clinicians .cards { counter-reset:clinical-step; gap:20px; }
.page-clinicians .cards .card { counter-increment:clinical-step; padding:32px; border-color:var(--finish-edge); border-radius:18px; box-shadow:none; }
.page-clinicians .cards .card::before { display:none; }
.page-clinicians .cards .card::after { content:'0' counter(clinical-step); display:block; color:var(--bio); font-size:.75rem; font-weight:600; margin-bottom:22px; }
.page-clinicians .cards .card { display:flex; flex-direction:column; }
.page-clinicians .cards .card::after { order:-1; }
.page-clinicians .cards .card h3 { font-size:1.5rem; letter-spacing:-.035em; font-weight:550; }
.page-clinicians .cards .card p { font-size:1rem; line-height:1.65; }
.page-clinicians .card-icon { opacity:.7; }

/* Patient story: warmer, with the founder's experience treated as the centre. */
.patient-story .ps-hero { background:var(--finish-hero); }
.ps-home-art { isolation:isolate; }
.ps-home-halo { box-shadow:inset 0 0 0 8px #ffffff80,0 30px 65px -50px #a5489140; }
.ps-home-ring { border-color:#927ac12a; }
.ps-life-note { border-color:#ffffff; box-shadow:0 12px 28px -18px #00356245; }
.patient-story .ps-between { padding-block:clamp(3.5rem,6vw,5.5rem); }
.patient-story .ps-how { background:linear-gradient(130deg,#edf5f7,#f8f7fa); }
.ps-moments li { padding:18px 20px; border:1px solid #ffffff; border-radius:16px; background:#ffffffb8; }
.ps-moments li:not(:last-child)::after { display:none; }
.ps-moments { gap:12px; }
.ps-step-number { background:#f4f9fa; border-color:#c8dfe7; }
.patient-story .ps-moments p { line-height:1.65; }
.patient-story .ps-origin { background:var(--wash); padding-block:clamp(4rem,7vw,6.5rem); }
.ps-origin-grid { grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr); align-items:center; }
.ps-founder { max-width:340px; }
.ps-founder > img { padding:6px; border:1px solid #fff; background:#fff; border-radius:22px; box-shadow:var(--finish-shadow); }
.ps-origin blockquote { font-size:clamp(1.05rem,1.5vw,1.25rem); line-height:1.7; }
.ps-origin blockquote strong { color:var(--social); font-weight:600; }
.page-patients .patient-story .privacy-band { background:#fff; }
.page-patients .patient-story .privacy-qa > div { padding:20px; background:var(--wash); border:1px solid var(--finish-edge); border-radius:14px; }
.patient-story .ps-close { background:linear-gradient(140deg,#edf5f7,#f7f3f8); }

/* People: compact portraits, quiet cards and a clear name/role/bio hierarchy. */
.page-team .p3-team { transform:scale(.88); }
.page-team .p3-face { padding:2px; box-shadow:0 20px 45px -28px #00356244; }
.page-team .team-grid { gap:20px; }
.page-team .team-card { border-color:var(--finish-edge); border-radius:18px; box-shadow:0 10px 30px -24px #0035622b; }
.page-team .team-card > div::before { display:none; }
.page-team .team-card h2 { font-size:1.5rem; font-weight:560; letter-spacing:-.035em; }
.page-team .team-bio { line-height:1.7; font-size:.9375rem; }
.page-team .advisor-card { text-align:left; justify-items:start; padding:28px; border-color:var(--finish-edge); border-radius:18px; }
.page-team .advisor-photo { width:76px; padding:2px; box-shadow:none; }
.page-team .team-link,.page-team .advisor-link { min-height:44px; }
.page-team .team-close { background:var(--wash); padding-block:clamp(3.5rem,6vw,5rem); }
.page-team .team-close::before { display:none; }

/* Plans retain every rate and term. Contrast makes the entry route clear. */
.page-pricing .page-hero > .wrap > .rail { display:block; }
.page-pricing .page-hero h1 { margin-top:20px; max-width:19ch; }
.page-pricing .banner { padding:14px 20px; border:0; border-radius:12px; background:var(--wash); }
.page-pricing .plans { gap:20px; margin-top:24px; }
.page-pricing .plan { border-color:var(--finish-edge); border-radius:20px; padding:28px; box-shadow:var(--finish-shadow); }
.page-pricing .plan.featured { background:linear-gradient(145deg,#163f5c,#092e4d); border-color:#163f5c; box-shadow:0 25px 50px -32px #00356280; }
.page-pricing .plan.featured::before { display:none; }
.page-pricing .plan.featured :is(h2,.price b) { color:#fff; }
.page-pricing .plan.featured :is(p,li,.price span,.plan-foot) { color:#d4e4ef; }
.page-pricing .plan.featured .plan-tag { color:#a3dbe4; }
.page-pricing .plan.featured .btn { background:#fff; color:var(--social); border-color:#fff; }
.page-pricing .plan.featured li::before { border-color:#89cbd9; }
.page-pricing .price { margin-top:24px; }
.page-pricing .price b { font-size:clamp(2.5rem,3.7vw,3.5rem); font-weight:550; letter-spacing:-.05em; }
.page-pricing .plan h2 { font-weight:550; }
.page-pricing .plan ul { gap:12px; }
.page-pricing .monitoring-terms { max-width:none; padding:28px; border:1px solid var(--finish-edge); border-radius:18px; background:#fff; }
.page-pricing .monitoring-terms h2 { font-size:1.375rem; font-weight:550; letter-spacing:-.025em; }
.page-pricing .monitoring-terms p { max-width:82ch; font-size:.9375rem; line-height:1.65; }
.page-pricing .pr-bridge { margin-top:48px; }
.page-pricing .pr-bridge h2 { font-weight:550; font-size:1.625rem; letter-spacing:-.035em; }
.page-pricing .bc-wide { padding:28px; border:1px solid var(--finish-edge); border-radius:24px; background:var(--wash); }
.page-pricing .pr-close { align-items:center; }
.page-pricing .pr-close::before,.page-pricing .pr-close::after { display:none; }

/* The request page prioritises the form and a short, concrete next step. */
.page-get-started { background:var(--finish-hero); }
.gs-intro h1 { max-width:16ch; }
.gs-intro .lede { font-size:1.125rem; line-height:1.65; }
.gs-decide::before { display:none; }
.gs-card { border:1px solid var(--finish-edge); border-radius:22px; box-shadow:var(--finish-shadow); }
.gs-card::before { opacity:.6; }
.gs-panel h3 { font-size:1.5rem; font-weight:550; letter-spacing:-.035em; }
.gs-opt { box-shadow:none; border-color:var(--finish-edge); transition:border-color 200ms var(--finish-ease),background-color 200ms var(--finish-ease); }
.gs-opt-title { font-weight:600; }
.gs-form .field :is(input,select,textarea) { border-color:#c9d7e1; border-radius:10px; background:#fcfdfe; }
.gs-form .field :is(input,select,textarea):focus { background:#fff; border-color:var(--bio); }
.gs-box { border-color:var(--finish-edge); box-shadow:none; background:#fff; }
.gs-box::before { display:none; }
.gs-rail h2 { font-weight:550; letter-spacing:-.03em; font-size:1.375rem; }
.gs-steps { margin-top:20px; }

/* Editorial pages use the same type rhythm without altering article/legal text. */
.legacy-page .page-header { background:var(--finish-hero); padding-top:clamp(3.5rem,6vw,5.5rem); padding-bottom:clamp(3rem,5vw,4.5rem); }
.legacy-page .page-header h1 { max-width:20ch; }
.legacy-page .page-header p { max-width:65ch; font-size:1.0625rem; line-height:1.65; }
.legacy-news .featured { padding:clamp(24px,4vw,48px); border:1px solid #123f5e; border-radius:22px; background:linear-gradient(140deg,#163f5c,#092e4d); box-shadow:var(--finish-shadow); }
.legacy-news .featured::before { display:none; }
.legacy-news .featured h2 { color:#fff; font-weight:550; line-height:1.15; letter-spacing:-.035em; }
.legacy-news .featured p { color:#d6e5ee; }
.legacy-news .featured-source,.legacy-news .featured-date { color:#9ccee0; }
.legacy-news .featured-tag { color:#e7c6e4; background:#ffffff0d; border:1px solid #e7c6e44d; }
.legacy-news .featured .featured-link { display:inline-flex; align-items:center; gap:12px; color:var(--social); background:#fff; border-color:#fff; }
.legacy-news .featured-link > span:last-child { flex-shrink:0; }
.legacy-news .news-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.legacy-news .news-item { border-color:var(--finish-edge); border-radius:16px; }
.legacy-news .ni-body { padding:24px; gap:14px; }
.legacy-news .news-headline { font-size:1.25rem; line-height:1.3; letter-spacing:-.02em; }
.legacy-news .news-summary { line-height:1.65; }
.legacy-news .filter-chip { min-height:44px; padding-inline:20px; }
.legacy-news .newsletter-section { border:1px solid var(--finish-edge); border-radius:20px; background:var(--wash); }
.legacy-legal .legal-wrap,.legacy-press .pr-wrap { max-width:780px; }
.legacy-legal .legal-wrap { padding-top:48px; }
.legacy-legal .legal-toc { padding:24px; border-radius:16px; border:1px solid var(--finish-edge); background:var(--wash); }
.legacy-legal .legal-toc ol { columns:2; display:block; column-gap:32px; }
.legacy-legal .legal-toc li { break-inside:avoid; padding:4px 0; }
.legacy-legal .legal-section h2,.legacy-press .pr-wrap h2 { font-weight:550; font-size:1.75rem; line-height:1.25; letter-spacing:-.03em; }
.legacy-legal :is(.sms-box,.highlight-box,.cap-box,.contact-block),.legacy-press .pr-quote { border-radius:16px; }
.legacy-legal .legal-section p,.legacy-press .pr-wrap > p { line-height:1.8; }
.legacy-404 .content { padding:32px; border:1px solid var(--finish-edge); border-radius:24px; background:#fff; box-shadow:var(--finish-shadow); }
.legacy-404 .main { background:var(--finish-hero); padding-block:64px; }

/* Responsive changes preserve reading order and comfortable touch targets. */
@media(max-width:1023px) {
  .page-clinicians .page-hero .rail { max-width:42rem; }
  .page-clinicians .p3-hero-grid .bc-story { margin-top:12px; }
  .page-team .p3-team { transform:none; }
  .legacy-news .news-list { grid-template-columns:1fr; }
}
@media(max-width:660px) {
  :is(.page-clinicians,.page-team,.page-pricing) .page-hero { padding-block:40px; }
  :is(.page-clinicians,.page-team,.page-pricing) .page-hero h1,.gs-intro h1,.legacy-page .page-header h1 { font-size:clamp(2.35rem,10vw,3rem); letter-spacing:-.055em; }
  .page-clinicians .bc-story { border-radius:20px; padding:6px; }
  .page-clinicians .bc-stage { aspect-ratio:1.5; }
  .page-clinicians .bc-title { gap:8px; font-size:.75rem; }
  .page-clinicians .bc-title .motion-toggle { min-height:44px; }
  .page-clinicians .bc-steps li { grid-template-columns:84px 1fr; gap:9px; }
  .page-clinicians .bc-steps p { font-size:.6875rem; }
  .page-clinicians .cards .card { padding:24px; }
  .page-clinicians .compass-shell { padding:10px; border-radius:18px; }
  .ps-moments li { padding:16px; gap:12px; }
  .ps-origin-grid { grid-template-columns:1fr; gap:32px; }
  .ps-founder { max-width:240px; }
  .page-team .advisor-card { padding:20px; }
  .page-team .advisor-photo { width:68px; }
  .page-team .team-card h2 { font-size:1.25rem; }
  .page-team .team-grid .team-card { grid-template-columns:80px minmax(0,1fr); row-gap:6px; column-gap:16px; }
  .page-team .team-grid .team-card > img { grid-column:1; grid-row:1 / span 3; width:80px; height:80px; }
  .page-team .team-grid .team-card > div { display:contents; }
  .page-team .team-card :is(h2,.team-role,.team-org) { grid-column:2; margin:0; }
  .page-team .team-card .team-bio { grid-column:1 / -1; margin:16px 0 0; }
  .page-team .team-card .team-link { grid-column:1 / -1; justify-self:start; margin-top:4px; }
  .page-pricing .plan { padding:24px; border-radius:18px; }
  .page-pricing .monitoring-terms { padding:22px; }
  .page-pricing .bc-wide { padding:16px; }
  .legacy-page .page-header { padding-block:44px; }
  .legacy-news .ni-body { padding:20px; gap:12px; }
  .legacy-news .ni-icon { display:none; }
  .legacy-news .featured h2 { font-size:1.75rem; }
  .legacy-legal .legal-toc ol { columns:1; }
  .legacy-legal .legal-wrap { padding-top:28px; }
  .legacy-404 .content { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { main :is(a,button,.reveal) { transition:none !important; } }
