/* Site pages (home, about, privacy, disclaimer) — neutral chrome */
body[data-module="site"]{
  --brand-mark:#2A2721; --col:660px; --pad:20px;
}

/* ==================================================================
   7. Site pages: home / about / privacy / disclaimer
   ================================================================== */

body[data-module="site"]{-webkit-text-size-adjust:none;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-synthesis:none}
body[data-module="site"]{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--text);background:var(--bg)}
[data-module="site"] .wrap{max-width:var(--col);margin:0 auto;padding:0 var(--pad)}
[data-module="site"] header{border-bottom:1px solid var(--divider);background:var(--bg);position:sticky;top:0;z-index:10}
[data-module="site"] .headrow{display:flex;align-items:center;height:60px}
[data-module="site"] .brandrow{display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit}
[data-module="site"] .lockup{display:block;height:22px;width:auto}
[data-module="site"] .hero{padding:72px 0 64px;text-align:center;border-bottom:1px solid var(--divider)}
[data-module="site"] .kick{font-size:.6875rem;text-transform:uppercase;letter-spacing:.13em;color:var(--faint);font-weight:500;margin-bottom:22px}
[data-module="site"] h1{font-family:var(--font-display);font-weight:400;font-size:2.25rem;line-height:1.15;max-width:18em;margin:0 auto 18px}
[data-module="site"] .lede{font-size:.9375rem;line-height:1.55;color:var(--muted);max-width:34em;margin:0 auto 24px}
[data-module="site"] .reassure{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
[data-module="site"] .pill{font-size:.75rem;color:var(--muted);background:var(--surface);border:1px solid var(--divider);border-radius:999px;padding:5px 12px}
[data-module="site"] section{padding:56px 0;border-bottom:1px solid var(--divider)}
[data-module="site"] .eyebrow{font-size:.6875rem;text-transform:uppercase;letter-spacing:.11em;color:var(--faint);font-weight:500;margin-bottom:20px}
[data-module="site"] h2{font-family:var(--font-display);font-weight:400;font-size:1.5rem;line-height:1.25;margin-bottom:12px}
[data-module="site"] .sectlede{font-size:.9375rem;color:var(--muted);max-width:36em;margin-bottom:24px}
[data-module="site"] .sectlede+.sectlede{margin-top:-12px}
[data-module="site"] .cards{display:grid;gap:14px}
[data-module="site"] .card{display:block;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-md);padding:20px;text-decoration:none;color:inherit;transition:all var(--ease)}
[data-module="site"] .card{--accent:var(--muted);--accent-tint:var(--surface-2);--accent-meta:var(--faint)}
@media (hover:hover){
[data-module="site"] .card:hover,[data-module="site"] .card:focus-visible{border-color:var(--accent);background:var(--accent-tint);box-shadow:var(--shadow-sm);transform:translateY(-1px)}
}
[data-module="site"] .card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[data-module="site"] .cardtitle{font-family:var(--font-display);font-size:1.1875rem;line-height:1.3;margin-bottom:6px}
[data-module="site"] .cardbody{font-size:.875rem;color:var(--muted)}
/* SITE-CARDMETA-V2:start */
/* SITE-CARDMETA-V2 — Pathery - index cards, meta line v2. Full note in the session log, 15 Aug 2026. */
[data-module="site"] .cardmeta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  margin-top:14px;font-size:.75rem;color:var(--accent-meta)}
[data-module="site"] .cardmeta .mitem{display:inline-flex;align-items:center;gap:5px;line-height:1}
[data-module="site"] .cardmeta .mitem svg{width:12px;height:12px;flex:none;color:var(--accent-meta)}
/* SITE-CARDMETA-V2:end */
[data-module="site"] .steps{display:grid;gap:12px;counter-reset:s;margin-top:12px}
[data-module="site"] .step{display:flex;gap:14px;align-items:flex-start}
[data-module="site"] .stepnum{font-family:var(--font-display);font-size:1.25rem;color:var(--faint);line-height:1.2;min-width:1.2em}
[data-module="site"] .steptitle{font-weight:500;font-size:.9375rem;margin-bottom:2px}
[data-module="site"] .steptext{font-size:.875rem;color:var(--muted)}
[data-module="site"] .plainlist{list-style:none;display:grid;gap:12px}
[data-module="site"] .plainlist li{font-size:.9375rem;color:var(--muted);padding-left:18px;position:relative}
[data-module="site"] .plainlist li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--faint)}
[data-module="site"] .plainlist strong{color:var(--text);font-weight:500}
[data-module="site"] .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[data-module="site"] .sub{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
[data-module="site"] .sub input{flex:1 1 240px;min-width:0;font-family:inherit;font-size:.9375rem;color:var(--text);background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-md);padding:12px 14px;transition:border-color var(--ease)}
[data-module="site"] .sub input::placeholder{color:var(--faint)}
[data-module="site"] .sub input:focus{outline:none;border-color:var(--muted);box-shadow:var(--shadow-sm)}
[data-module="site"] .sub button{font-family:inherit;font-size:.9375rem;font-weight:500;color:var(--surface);background:var(--text);border:1px solid var(--text);border-radius:var(--radius-md);padding:12px 20px;cursor:pointer;transition:background var(--ease),border-color var(--ease)}
@media (hover:hover){
[data-module="site"] .sub button:hover{background:var(--muted);border-color:var(--muted)}
}
[data-module="site"] footer{padding:40px 0 56px;font-size:.8125rem;color:var(--muted)}
[data-module="site"] .crisis{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-md);padding:16px 18px;margin-bottom:24px;line-height:1.55}
[data-module="site"] .crisis strong{display:block;color:var(--text);font-weight:500;margin-bottom:4px}
[data-module="site"] .flinks{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:14px}
[data-module="site"] .flinks a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;transition:all var(--ease)}
@media (hover:hover){
[data-module="site"] .flinks a:hover{color:var(--text);border-bottom-color:var(--divider)}
}
[data-module="site"] .fine{font-size:.75rem;color:var(--faint);line-height:1.5}
@media (min-width:768px){
body[data-module="site"]{--col:1080px;--pad:40px}
[data-module="site"] .pagehead .lede{font-size:1.125rem;line-height:1.6}
[data-module="site"] .hero{padding:112px 0 96px}
[data-module="site"] h1{font-size:3.25rem}
[data-module="site"] .lede{font-size:1.125rem;line-height:1.6;margin-bottom:28px}
[data-module="site"] .narrow{max-width:660px}
[data-module="site"] .cards{grid-template-columns:1fr 1fr;gap:18px}
[data-module="site"] .card{padding:24px}
[data-module="site"] .twocol{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:56px;align-items:start}
[data-module="site"] .twocol .eyebrow{margin-bottom:8px}
[data-module="site"] .twocol .steps{margin-top:0}
[data-module="site"] section{padding:80px 0}
[data-module="site"] .steps{gap:14px}
}
@media (prefers-reduced-motion:reduce){
[data-module="site"] *{transition:none!important;animation:none!important}
body[data-module="site"]{scroll-behavior:auto}
}
/* legal page */
[data-module="site"] .pagehead{padding:56px 0 40px;border-bottom:1px solid var(--divider)}
[data-module="site"] .pagehead h1{font-size:2rem;max-width:22em;margin:0 0 12px}
[data-module="site"] .updated{font-size:.8125rem;color:var(--faint)}
[data-module="site"] .doc{padding:48px 0 56px}
[data-module="site"] .doc h2{margin:0 0 12px}
[data-module="site"] .doc .block{margin-bottom:36px}
[data-module="site"] .doc .block:last-child{margin-bottom:0}
[data-module="site"] .doc p{font-size:.9375rem;color:var(--muted);max-width:36em;margin-bottom:12px}
[data-module="site"] .doc p:last-child{margin-bottom:0}
[data-module="site"] .doc p strong{color:var(--text);font-weight:500}
[data-module="site"] .doc ul{list-style:none;display:grid;gap:12px;max-width:36em;margin-bottom:12px}
[data-module="site"] .doc ul li{font-size:.9375rem;color:var(--muted);padding-left:18px;position:relative}
[data-module="site"] .doc ul li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--faint)}
[data-module="site"] .doc a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--divider);transition:border-color var(--ease)}
@media (hover:hover){
[data-module="site"] .doc a:hover{border-bottom-color:var(--muted)}
}
[data-module="site"] .back{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--muted);text-decoration:none;margin-bottom:28px;transition:color var(--ease)}
@media (hover:hover){
[data-module="site"] .back:hover{color:var(--text)}
}
@media (min-width:768px){
[data-module="site"] .pagehead{padding:80px 0 56px}
[data-module="site"] .pagehead h1{font-size:2.75rem}
[data-module="site"] .doc{padding:72px 0 80px}
[data-module="site"] .doc .block{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:48px}
[data-module="site"] .doc .block h2{grid-column:1}
[data-module="site"] .doc .block .body{grid-column:2}
}
[data-module="site"] .pagehead .lede{font-size:.9375rem;line-height:1.55;color:var(--muted);max-width:34em;margin:.9rem 0 0}
[data-module="site"] .placeholder{background:rgba(180,140,60,.10);border-left:2px solid rgba(180,140,60,.55);
  padding:.7rem .85rem;border-radius:4px;color:#6b5a38;font-style:italic}
/* --- Ligatures: Instrument Serif liga/clig — added 31 Jul 2026 --- */
[data-module="site"] .title,[data-module="site"] h1,[data-module="site"] h2,[data-module="site"] h3,[data-module="site"] .cardtitle,[data-module="site"] .stepnum,[data-module="site"] .pagehead h1{font-variant-ligatures:common-ligatures contextual;font-feature-settings:"liga" 1,"clig" 1;font-kerning:normal}

/* ---- Home page only: newsletter + PWA install banner ---- */
/* Self-hosted fonts — MW-FONTS-V1 */
[data-module="site"] .sub input:focus-visible{outline:2px solid var(--muted);outline-offset:2px}
[data-module="site"] .sub input:-webkit-autofill,[data-module="site"] .sub input:-webkit-autofill:hover,[data-module="site"] .sub input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);-webkit-box-shadow:0 0 0 100px var(--surface) inset;box-shadow:0 0 0 100px var(--surface) inset;transition:background-color 9999s ease-out 0s}
[data-module="site"] .sub input:autofill{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 100px var(--surface) inset}
[data-module="site"] .sub input:invalid:not(:placeholder-shown){border-color:var(--divider)}
[data-module="site"] .sub button:focus-visible{outline:2px solid var(--text);outline-offset:2px}
[data-module="site"] .subdone{font-size:.8125rem;line-height:1.55;color:var(--text);margin:14px 0 18px;font-weight:400;max-width:40em}
[data-module="site"] .subdone a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--divider);font-size:inherit;margin:0;transition:border-color var(--ease)}
@media (hover:hover){
[data-module="site"] .subdone a:hover{border-bottom-color:var(--text)}
}
[data-module="site"] iframe.vh{position:absolute;width:1px;height:1px;border:0;clip:rect(0 0 0 0);overflow:hidden}
/* --- Ligatures: Instrument Serif liga/clig — added 31 Jul 2026 --- */
/* ---- next style block ---- */
[data-module="site"] #pwa-banner{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:0 var(--pad) calc(12px + env(safe-area-inset-bottom))}
[data-module="site"] .pwa-inner{max-width:560px;margin:0 auto;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);box-shadow:0 6px 24px rgba(42,39,33,.12);padding:12px 14px}
[data-module="site"] .pwa-icon{width:40px;height:40px;border-radius:10px;flex:none}
[data-module="site"] .pwa-text{flex:1;min-width:0;font-size:.8125rem;line-height:1.45;color:var(--muted)}
[data-module="site"] .pwa-text>strong{display:block;font-size:.875rem;color:var(--text)}
[data-module="site"] .pwa-text span strong{color:var(--text);font-weight:500}
[data-module="site"] .pwa-text .shr{display:inline-block;vertical-align:-2px;width:13px;height:13px}
[data-module="site"] #pwa-install{flex:none;font:inherit;font-size:.8125rem;font-weight:500;color:var(--bg);background:var(--text);border:0;border-radius:999px;padding:8px 16px;cursor:pointer;transition:background var(--ease)}
@media (hover:hover){[data-module="site"] #pwa-install:hover{background:var(--muted)}}
[data-module="site"] #pwa-close{flex:none;font-size:1.1rem;line-height:1;color:var(--faint);background:none;border:0;padding:6px;cursor:pointer}
/* VC-STATE-V22:end */

/* PATHERY-TOUCH-V1-SITE — Pathery — gesture policy, site pages. Full note in the session log, 15 Aug 2026. */
body[data-module="site"]{touch-action:manipulation}
/* PATHERY-TAPHL-V1-SITE — Pathery — tap highlight, site pages. */
body[data-module="site"]{-webkit-tap-highlight-color:transparent}

/* SITE-LIBRARY-V1 — the library row and its sorting, 20 Aug 2026. */
[data-module="site"] .cards.free{display:grid;gap:14px}
@media (min-width:768px){
[data-module="site"] .cards.free{grid-template-columns:1fr 1fr 1fr;gap:18px}
}
[data-module="site"] .pagehead h1 .eyebrow{display:block;font-family:var(--font-body);font-size:.6875rem;line-height:1.4;letter-spacing:.11em;margin:0 0 20px}
[data-module="site"] .hero h1 .kick{display:block;font-family:var(--font-body);font-size:.6875rem;line-height:1.4;letter-spacing:.13em;margin:0 0 22px}
[data-module="site"] h2 .eyebrow{display:block;font-family:var(--font-body);font-size:.6875rem;line-height:1.4;letter-spacing:.11em;margin:0 0 20px}
[data-module="site"] h3.cardtitle{margin:0 0 6px;font-weight:400}

/* SITE-BUTTONS-V1, 26 Aug 2026. Filled buttons rested at --muted and darkened to --text, so a
   button strengthened under the pointer instead of fading. SITE-BUTTONS-V2, 6 Sep 2026,
   reversed that by decision: filled buttons now rest at --text and soften to --muted, on
   the form buttons and the install banner alike, so a button is at full strength before it
   is touched. Nothing else about them moved. Both opacity fades are gone, and the
   install banner’s hover now sits behind a pointer check, so it cannot stick after a tap. A
   chosen library pill softens to --muted, which lets the existing chosen-plus-pointer rule
   darken it to --text, matching the ladder in the modules. The rested pill edge is the object
   edge --divider, as settled. The unchosen pill hover keeps --surface-2 by decision.
   SITE-FIX-V1: the rested edge returned to --divider and the pointer state was reduced to the
   fill alone — edge and words both hold still. A chosen pill still darkens as one piece. */

/* SITE-LABELS-V1, 26 Aug 2026. The four reassurance labels in the hero are not tappable, so
   they no longer look it: no outline, no fill, small grey words with a dot between them. An
   outlined pill on this site now always means you can tap it. The page carries the plain marker;
   .pill itself is unchanged and still dresses the seven sorting buttons. */
[data-module="site"] .reassure.plain{gap:0 12px;font-size:.75rem;color:var(--faint)}
[data-module="site"] .reassure.plain span{display:inline-flex;align-items:center;gap:12px}
[data-module="site"] .reassure.plain span::after{content:"";width:4px;height:4px;border-radius:50%;background:var(--faint);display:inline-block}
[data-module="site"] .reassure.plain span:last-child::after{display:none}

/* SITE-HEADLINK-V1, 6 Sep 2026. The For therapists button in the header of home,
   about, privacy and disclaimer. Not on the exercises, not on /therapists itself,
   not on /offline.
   A ghost button by decision: ink hairline and ink words at rest, filling with ink
   under the pointer. That is the opposite direction to the filled buttons after
   SITE-BUTTONS-V2, and deliberately so — the header should strengthen when touched,
   while the one solid button on each page stays the primary action.
   Size is .8125rem with 8px 16px, the #pwa-install recipe reused rather than a new
   pair of numbers. .headrow is a flex row with no justify-content, so margin-left:
   auto places it without touching a rule every site page shares. */
[data-module="site"] .headlink{margin-left:auto;font-family:inherit;font-size:.8125rem;font-weight:500;color:var(--text);background:transparent;border:1px solid var(--text);border-radius:var(--radius-md);padding:8px 16px;line-height:1;text-decoration:none;white-space:nowrap;transition:background var(--ease),color var(--ease)}
@media (hover:hover){
[data-module="site"] .headlink:hover{background:var(--text);color:var(--surface)}
}
[data-module="site"] .headlink:focus-visible{outline:2px solid var(--text);outline-offset:2px}

/* SITE-PRICING-V1:start */
/* SITE-PRICING-V1, 9 Sep 2026. The pricing block on /therapists: the tag under the
   heading, the monthly and annual switch, the four-plan table above 768 and the stacked
   cards below it. Tokens only, no new colour. --border and --surface-offset are used
   nowhere else in this file, so both carry a fallback. The tag is an outlined pill that
   cannot be tapped, accepted by decision here, against the SITE-LABELS-V1 convention. */
/* SITE-PRICING-V2, 9 Sep 2026. The tag is respecified past [data-module="site"] .doc p,
   which was winning on specificity, and the heading, tag and body spacing is set here. */
[data-module="site"] .pr-head{margin-bottom:18px}
[data-module="site"] .pr-head h2{margin-bottom:10px}
[data-module="site"] .doc p.pr-tag{display:inline-block;margin:0;font-size:.75rem;line-height:1;color:var(--muted);background:var(--surface-2);border:1px solid var(--divider);border-radius:999px;padding:5px 12px}
[data-module="site"] .pr-bar{display:flex;justify-content:flex-start;margin-bottom:14px}
[data-module="site"] .pr-switch{position:relative;display:inline-flex;align-items:stretch;background:var(--surface-offset,#EFEDE8);border-radius:999px;padding:3px;isolation:isolate}
[data-module="site"] .pr-thumb{position:absolute;top:3px;bottom:3px;left:3px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform var(--ease),width var(--ease);z-index:0}
[data-module="site"] .pr-switch button{position:relative;z-index:1;font-family:inherit;font-size:.75rem;color:var(--faint);background:none;border:0;border-radius:999px;padding:8px 15px;min-height:30px;cursor:pointer;white-space:nowrap;transition:color var(--ease)}
[data-module="site"] .pr-switch button[aria-pressed="true"]{color:var(--text);font-weight:500}
[data-module="site"] .pr-switch .pr-save{color:var(--faint);font-weight:400;margin-left:5px}
[data-module="site"] .pr-switch button:focus-visible{outline:2px solid var(--text);outline-offset:2px}
@media (hover:hover){
[data-module="site"] .pr-switch button:not([aria-pressed="true"]):hover{color:var(--muted)}
}
[data-module="site"] .pr-tab{display:none}
[data-module="site"] .pr-cards{display:grid;gap:12px}
[data-module="site"] .pr-card{border:1px solid var(--divider);border-radius:var(--radius-md);padding:14px 16px;background:var(--surface)}
[data-module="site"] .pr-cardtop{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
[data-module="site"] .pr-name{font-family:var(--font-display);font-size:1.0625rem;line-height:1.3}
[data-module="site"] .pr-card .pr-cost{font-family:var(--font-display);font-size:1.25rem;line-height:1.2;color:var(--text);font-variant-numeric:tabular-nums}
[data-module="site"] .pr-card .pr-per{font-family:var(--font-body);font-size:.75rem;color:var(--faint);margin-left:5px}
[data-module="site"] .pr-card .pr-none{color:var(--faint)}
[data-module="site"] .pr-pairs{display:grid;gap:2px;margin:10px 0 0}
/* SITE-PRICING-V3, 10 Sep 2026. The label and its value align on the baseline, which is
   what .pr-cardtop already does. The 1.9 line height it replaces was a guess at the gap. */
[data-module="site"] .pr-pair{display:flex;gap:12px;font-size:.875rem;align-items:baseline}
[data-module="site"] .pr-pair dt{font-size:.6875rem;text-transform:uppercase;letter-spacing:.11em;color:var(--faint);width:76px;flex:none;line-height:1.6}
[data-module="site"] .pr-pair dd{margin:0;color:var(--muted);min-width:0;flex:1 1 auto}
[data-module="site"] .pr-fine{margin-top:16px}
@media (min-width:768px){
[data-module="site"] .pr-cards{display:none}
[data-module="site"] .pr-head{margin-bottom:0}
[data-module="site"] .pr-tab{display:table;width:100%;border-collapse:collapse;font-size:.875rem;table-layout:fixed}
[data-module="site"] .pr-tab col{width:19.25%}
[data-module="site"] .pr-tab col.pr-c1{width:23%}
[data-module="site"] .pr-tab th,[data-module="site"] .pr-tab td{text-align:left;padding:11px 9px;vertical-align:baseline}
[data-module="site"] .pr-tab th:first-child,[data-module="site"] .pr-tab td:first-child{padding-left:12px}
[data-module="site"] .pr-tab th:last-child,[data-module="site"] .pr-tab td:last-child{padding-right:12px}
[data-module="site"] .pr-tab thead th{font-family:var(--font-display);font-weight:400;font-size:1.0625rem;line-height:1.3;color:var(--text);border-bottom:1px solid var(--border,var(--divider))}
[data-module="site"] .pr-tab thead th.pr-lab{font-family:var(--font-body);font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-weight:500}
[data-module="site"] .pr-tab tbody th{font-family:var(--font-body);font-size:.6875rem;text-transform:uppercase;letter-spacing:.11em;color:var(--faint);font-weight:500;border-bottom:1px solid var(--divider)}
[data-module="site"] .pr-tab tbody th .pr-cur{display:block;text-transform:none;letter-spacing:normal;font-weight:400;font-size:.75rem;color:var(--faint);margin-top:3px}
[data-module="site"] .pr-tab tbody td{border-bottom:1px solid var(--divider);color:var(--muted)}
[data-module="site"] .pr-tab .pr-price td{font-family:var(--font-display);font-size:1.25rem;line-height:1.2;color:var(--text);font-variant-numeric:tabular-nums}
[data-module="site"] .pr-tab .pr-price td .pr-per{display:block;font-family:var(--font-body);font-size:.75rem;color:var(--faint)}
[data-module="site"] .pr-tab .pr-span{text-align:center}
[data-module="site"] .pr-tab .pr-none{color:var(--faint)}
}
/* SITE-PRICING-V1:end */
/* SITE-STEPTOP-V1, 13 Sep 2026. On desktop the two columns of .doc .block already
   align at start, but .steps carries margin-top:12px from the mobile rules, so the
   first step sat twelve pixels below its heading. The 768 rules zero this for
   .twocol .steps and never did for .doc .block. Desktop only; the mobile gap between
   a heading and its steps is unchanged. */
@media (min-width:768px){
[data-module="site"] .doc .block .body .steps{margin-top:0}
}


/* SITE-STEPLEAD-V1, 13 Sep 2026. The opening words of a step, inline at the front of
   .steptext, where a separate .steptitle line used to sit. Weight and colour are copied
   from .steptitle so the entry point still reads as one; the size is not, because the
   point of the change is a single line at a single size. Scoped to .step, so it cannot
   reach anything else. .steptitle itself is untouched and still dresses the home page. */
[data-module="site"] .step .steplead{font-weight:500;color:var(--text)}
/* SIGNIN-CORE-V1 - 22 Sep 2026. The sign-in panel rules left this file for
   pathery-core.css, widened from site pages to any Pathery page, because the
   returned-homework screens open the same panel. One copy, and it is there. */
