/* Higher Self identity, 5 October 2026. Fonts served by this website only.
   Copyright/licence notices live beside the font files. */
@font-face{font-family:"HS Archivo";src:url("./archivo-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"HS Source Serif";src:url("./source-serif-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{
  color-scheme:light dark;
  --paper:#f5f1e8;--surface:#fffdfa;--white:#fffdfa;--ink:#17332f;
  --secondary:#53635b;--muted:#53635b;--line:#c8cec2;
  --accent:#ab3e23;--signal:#ab3e23;--signal-dark:#87301b;--focus:#ab3e23;
  --wash:#e4e9de;--dark:#17332f;--band:#17332f;--band-ink:#f5f1e8;
  --band-accent:#f2ad91;--band-line:#3d5a53;--brand-stop:#ab3e23;
}
body{background:var(--paper);color:var(--ink)}
h1,h2,h3,h4{font-family:"HS Archivo","Arial Black",Arial,sans-serif;font-weight:800;letter-spacing:-.035em;line-height:1.12}
h1{max-width:20ch}
.intro h1{font-size:clamp(2.5rem,5.3vw,4.5rem);max-width:16ch}
.intro-copy,.lead,.page-lead{font-family:"HS Source Serif",Georgia,serif;line-height:1.55}
.intro-copy{font-size:clamp(1.2rem,2vw,1.4rem)}
.brand{display:inline-flex!important;align-items:flex-start!important;flex-direction:column!important;gap:0!important;flex-shrink:1!important;text-decoration:none!important;color:var(--ink);min-width:0!important;width:clamp(10rem,19vw,15rem);max-width:100%;padding:0}
.brand .hs-lockup{display:block;width:100%;height:auto;max-width:100%;overflow:visible}
.brand .hs-stop{fill:var(--brand-stop)}
.brand img{width:100%;height:auto}
.site-head,.header{border-bottom:1px solid var(--line)}
.head-inner,.masthead,.header-inner{gap:1rem 2rem;min-height:112px;padding-block:1.35rem}
.discipline,.kicker,.eyebrow.cap{color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.record{border-top:5px solid var(--ink)}
.record h3{font-size:1.4rem}
.reply-promise{border-top-width:3px}
.intro-links{margin-top:1.5rem;gap:.4rem 1.5rem}
.brand-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.65rem 1rem;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:3px;text-decoration:none;font-weight:700;line-height:1.4}
.brand-action:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}
.outline-note{font-size:1rem;color:var(--secondary)}
#reply .brand-action{background:var(--band-ink);color:var(--band);border-color:var(--band-ink)}
.site-foot .brand,.footer .brand{width:11rem;margin-bottom:1.5rem}
.closing-quiet,.closing-note{border-top:4px solid var(--ink)}
.band .brand,.dark .brand{color:var(--band-ink);--brand-stop:var(--band-accent)}
@media(prefers-color-scheme:dark){
  :root{--paper:#0f1f1c;--surface:#17332f;--white:#17332f;--ink:#f5f1e8;--secondary:#b9c4bb;--muted:#b9c4bb;--line:#3d5a53;--accent:#f2ad91;--signal:#f2ad91;--signal-dark:#f2ad91;--focus:#f2ad91;--wash:#143029;--dark:#0a1513;--band:#0a1513;--band-line:#2c4540;--brand-stop:#f2ad91}
  .brand-action:hover{color:#0a1513}
}
@media(max-width:720px){
  .brand{width:11rem}
  .head-inner,.masthead,.header-inner{min-height:96px;padding-block:1.15rem;flex-wrap:wrap}
  .intro h1{font-size:clamp(2.4rem,10vw,3.5rem)}
  .intro-copy{font-size:1.2rem}
}
@media(forced-colors:active){
  :root{--paper:Canvas;--surface:Canvas;--white:Canvas;--ink:CanvasText;--secondary:CanvasText;--muted:CanvasText;--line:CanvasText;--accent:CanvasText;--signal:CanvasText;--focus:Highlight;--wash:Canvas;--band:Canvas;--band-ink:CanvasText;--brand-stop:CanvasText}
  .brand-action{border:2px solid ButtonText;background:ButtonFace;color:ButtonText}
}
@media print{
  :root{--paper:#fff;--surface:#fff;--white:#fff;--ink:#000;--secondary:#000;--muted:#000;--accent:#000;--brand-stop:#000}
  .brand{width:45mm}
  .head-inner,.masthead,.header-inner{min-height:0;padding-block:0 8pt}
  .intro h1{font-size:28pt}
  .intro-copy{font-size:11pt}
  .brand-action{background:transparent;color:#000;padding:0;border:0}
}

/* One footer across the public practice pages. */
.hs-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--ink);padding-block:clamp(2rem,4vw,3.5rem);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.55}
.hs-footer-top{display:grid;grid-template-columns:1.25fr 1fr .8fr;gap:2rem 3rem;align-items:start}
.hs-footer-identity,.hs-footer-contact,.hs-footer-nav{min-width:0}
.hs-footer .brand{width:14rem;max-width:100%;margin:0 0 1.25rem}
.hs-footer-identity p{font-family:"HS Source Serif",Georgia,serif;font-size:1.15rem;line-height:1.4;color:var(--secondary)}
.hs-footer-label{margin:0 0 .65rem;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.hs-footer-contact a,.hs-footer-nav a,.hs-footer-policy a{display:flex;align-items:center;width:fit-content;max-width:100%;min-height:44px;line-height:1.5;text-decoration:none;padding-block:.45rem;overflow-wrap:anywhere}
.hs-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.hs-footer a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.hs-footer-nav a[aria-current="page"]{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.hs-footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:1rem 3rem;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.35rem;font-size:.875rem;color:var(--secondary)}
.hs-footer-legal{max-width:65ch;min-width:0}
.hs-footer-legal p{margin:0;max-width:none}
.hs-footer-legal p+p{margin-top:.25rem}
.hs-footer-legal a{display:inline;min-height:0}
.hs-footer-policy{display:flex;gap:.5rem 1.5rem;flex-wrap:wrap;flex-shrink:0}
.hs-footer-hosting{margin:1rem 0 0!important;max-width:85ch!important;color:var(--secondary);font-size:.875rem}
.hs-footer-print{display:none}
.hs-offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.hs-price-label{font-weight:700;font-size:1.1rem;line-height:1.4;margin-top:.75rem}
.hs-reference-note{padding-block:1.75rem;border-top:1px solid var(--line);color:var(--secondary);font-size:.875rem}
.hs-reference-notice{padding-block:1.25rem;background:var(--wash);border-bottom:1px solid var(--line)}
@media(max-width:960px){
 .hs-footer-top{grid-template-columns:1.15fr 1fr;gap:2rem}
 .hs-footer-identity{grid-column:1/-1}
 .hs-footer-bottom{flex-direction:column;gap:.75rem}
 .hs-offer-grid{grid-template-columns:1fr!important}
}
@media(max-width:540px){
 .hs-footer-top{grid-template-columns:1fr;gap:1.75rem}
 .hs-footer-identity{grid-column:auto}
 .hs-footer .brand{width:12rem}
 .hs-footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
 .hs-footer-policy{gap:.25rem 1.25rem}
}
@media print{
 .hs-footer{padding-block:12pt;background:#fff;font-size:9pt}
 .hs-footer-top{grid-template-columns:1fr 1fr;gap:12pt}
 .hs-footer-nav,.hs-footer-policy,.hs-footer-hosting{display:none}
 .hs-footer .brand{width:42mm;margin-bottom:6pt}
 .hs-footer-identity{grid-column:auto}
 .hs-footer-identity p{font-size:10pt}
 .hs-footer-contact a{min-height:0;padding:0}
 .hs-footer-bottom{margin-top:10pt;padding-top:8pt;font-size:8pt}
 .hs-footer-print{display:block;font-weight:700;margin-top:6pt}
 .hs-offer-grid{grid-template-columns:1fr!important}
}

/* Team and contact copy, October 2026. */
.hs-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 4rem;align-items:start}
.hs-copy-grid>*{min-width:0}
.hs-copy-intro h1{font-size:clamp(2.5rem,5.3vw,4.5rem);max-width:20ch}
.hs-copy-intro .lead{margin-top:.4rem}
.hs-copy-actions{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start;margin-top:1.5rem}
.hs-copy-actions>a{max-width:100%;min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere}
.hs-copy-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style:none;counter-reset:step;margin:2rem 0 0;padding:0}
.hs-copy-steps li{counter-increment:step;border-top:3px solid var(--ink);padding-top:1rem;min-width:0}
.hs-copy-steps li::before{content:"0" counter(step);display:block;margin-bottom:.75rem;color:var(--accent);font-size:.85rem;letter-spacing:.1em;font-weight:700}
.hs-copy-steps h3{font-size:1.35rem}
.hs-copy-steps p{margin-top:.75rem}
.hs-copy-list{margin:0;padding-left:1.2rem}
.hs-copy-list li+li{margin-top:.75rem}
.hs-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.hs-profile{border-top:5px solid var(--ink);background:var(--surface);padding:clamp(1.5rem,3vw,2.5rem);min-width:0}
.hs-profile h2{font-size:clamp(1.8rem,3vw,2.5rem)}
.hs-profile-title{font-weight:700;margin-top:.5rem}
.hs-profile-summary{margin-top:1.5rem}
.hs-profile dl{margin:1.5rem 0 0}
.hs-profile dl>div{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}
.hs-profile dt{font-weight:700}
.hs-profile dd{margin:.35rem 0 0}
.hs-copy-band{background:var(--band);color:var(--band-ink)}
.hs-copy-band .brand-action{background:var(--band-ink);color:var(--band);border-color:var(--band-ink)}
.hs-copy-band .discipline{color:var(--band-accent)}
.hs-ai-situations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}
.hs-ai-situation{border-top:3px solid var(--ink);padding-top:1.25rem;min-width:0}
.hs-ai-situation h3{font-size:1.35rem}
.hs-ai-situation p{margin-top:1rem}
.hs-ai-situation .hs-ai-sees{font-size:.9375rem;color:var(--secondary)}
.hs-ai-checks{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
@media(max-width:860px){.hs-copy-grid,.hs-copy-steps,.hs-profile-grid,.hs-ai-situations{grid-template-columns:1fr}.hs-copy-intro h1{font-size:clamp(2.4rem,8vw,3.5rem)}}
@media print{.hs-copy-grid,.hs-copy-steps,.hs-profile-grid,.hs-ai-situations{grid-template-columns:1fr;gap:12pt}.hs-profile{break-inside:avoid;padding:12pt}.hs-copy-band{background:#fff;color:#000}.hs-copy-band .brand-action{background:#fff;color:#000}.hs-copy-intro h1{font-size:28pt}.hs-copy-actions>a{min-height:0}.hs-copy-steps li{break-inside:avoid}.hs-ai-checks{margin-top:12pt;padding-top:12pt}}
.hs-ai-intro{margin-top:1.5rem;max-width:65ch}

.hs-price-intro h1{font-size:clamp(2.5rem,4.1vw,3.5rem);max-width:20ch}
@media print{.hs-price-intro h1{font-size:28pt}}
