:root{
  --cream:#f4efe6; --paper:#fbf8f2; --ink:#20211f; --muted:#66645e; --line:#d8d1c5;
  --terra:#c86b46;--terra-text:#a14f32;--terra-action:#a14f32; --terra-dark:#944b31; --mustard:#c69a45; --sage:#74806c; --sage-dark:#5f6b58;
  --deep:#202421; --white:#fffdf8; --max:1480px;
  --serif:Georgia,'Times New Roman',serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--cream)}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.shell{width:min(calc(100% - 64px),var(--max));margin:auto}[data-observe]{scroll-margin-top:148px}
.reading-progress{position:fixed;z-index:130;top:0;left:0;width:100%;height:3px}.reading-progress i{display:block;width:0;height:100%;background:var(--terra)}
.site-header{position:sticky;top:0;z-index:100;background:rgba(244,239,230,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:42px;height:42px;object-fit:contain}.brand-title{font-weight:800;font-size:.88rem;letter-spacing:.08em}.brand-sub{font-size:.64rem;color:var(--muted);letter-spacing:.06em;margin-top:1px}.main-nav{display:flex;align-items:center;gap:20px;font-size:.70rem;font-weight:700;color:#4f514c}.main-nav .nav-active{color:var(--terra-dark)}.main-nav>.linkedin{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;border-radius:999px;background:var(--terra-action);color:white;font-weight:850;white-space:nowrap}.lang{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px}.lang a,.lang span{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:25px;padding:4px 7px;border-radius:999px;font-size:.70rem;font-weight:900}.lang .active{background:var(--ink);color:white}.lang .disabled{opacity:.38}.menu{display:none;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:8px 11px;font-size:1.15rem}.context-bar{background:var(--paper);border-bottom:1px solid var(--line)}.context-inner{min-height:40px;display:flex;align-items:center;gap:12px;font-size:.67rem;font-weight:800;letter-spacing:.07em;color:#62635e}.context-inner span+span:before{content:'·';margin-right:12px;color:#a7a097}.context-inner em{margin-left:auto;font-style:normal;color:var(--terra-dark)}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(500px,.95fr);gap:52px;align-items:center;padding:72px 0 60px;min-height:690px}.hero-kicker-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.kicker{margin:0;color:var(--terra-dark);font-size:.75rem;font-weight:900;letter-spacing:.11em}.project-state{display:inline-flex;align-items:center;gap:8px;border:1px solid #c9c4b8;border-radius:999px;padding:7px 12px;font-size:.72rem;font-weight:700;color:#51564f;background:rgba(251,248,242,.65)}.project-state i{width:8px;height:8px;border-radius:50%;background:var(--mustard);box-shadow:0 0 0 5px rgba(198,154,69,.14)}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(4rem,5.8vw,6.7rem);line-height:.94;letter-spacing:-.045em;margin:24px 0 28px;max-width:1000px}.hero h1 em{font-style:normal;color:var(--sage)}.lead{font-size:1.16rem;line-height:1.65;color:#4f4d48;max-width:900px;margin:0 0 28px}.hero-tags{display:flex;gap:8px;flex-wrap:wrap}.hero-tags span{border:1px solid #d6d0c4;border-radius:999px;padding:8px 12px;background:rgba(251,248,242,.6);font-size:.72rem;font-weight:760}
.health-map{position:relative;min-height:520px;border:1px solid #d7d1c7;border-radius:28px;background:linear-gradient(160deg,#fffdf9,#f8f5ee);box-shadow:0 26px 55px rgba(63,53,41,.11);overflow:hidden;padding:24px}.map-head{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:.61rem;font-weight:900;letter-spacing:.11em;color:#5b6159}.map-head b{font-family:var(--serif);font-size:.96rem;font-weight:700;letter-spacing:.04em;color:var(--terra-text);white-space:nowrap}.map-canvas{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.9fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:34px 16px;align-items:center;min-height:410px;margin-top:18px;padding:16px 2px 8px}.map-core{position:relative;z-index:4;grid-column:2;grid-row:1 / 3;width:100%;max-width:184px;min-width:0;justify-self:center;padding:20px 13px;border-radius:22px;background:var(--sage-dark);color:white;text-align:center;box-shadow:0 18px 36px rgba(72,84,67,.22)}.map-core small,.map-core span{display:block;font-size:.53rem;font-weight:900;letter-spacing:.1em}.map-core strong{display:block;font-family:var(--serif);font-size:1.18rem;line-height:1.12;margin:7px 0}.map-core span{opacity:.8}.map-point{position:relative;z-index:3;width:100%;max-width:none;min-width:0;padding:14px 13px;border:1px solid var(--line);border-radius:15px;background:rgba(255,253,248,.98);box-shadow:0 10px 20px rgba(62,53,43,.05);overflow:hidden}.map-point span{font-size:.53rem;font-weight:900;letter-spacing:.04em;color:var(--terra-text)}.map-point b{display:block;font-family:var(--serif);font-size:clamp(.78rem,.74vw,.92rem);line-height:1.14;margin:3px 0 4px;overflow-wrap:anywhere}.map-point small{display:block;font-size:.56rem;color:#6f6b64;line-height:1.32;overflow-wrap:anywhere}.p1{grid-column:1;grid-row:1;justify-self:start}.p2{grid-column:3;grid-row:1;justify-self:end}.p3{grid-column:1;grid-row:2;justify-self:start}.p4{grid-column:3;grid-row:2;justify-self:end}.map-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.map-lines path{fill:none;stroke:#b7c0b1;stroke-width:2;stroke-dasharray:6 7}
.story-nav{position:sticky;top:76px;z-index:70;background:rgba(251,248,242,.96);border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.story-nav-inner{display:grid;grid-template-columns:repeat(5,1fr);min-height:60px}.story-nav a{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.69rem;color:#686961;border-right:1px solid #e2ddd4;position:relative}.story-nav a:first-child{border-left:1px solid #e2ddd4}.story-nav a span{font-size:.64rem;font-weight:900;color:#6a665f}.story-nav a b{font-weight:800}.story-nav a.active{color:var(--ink)}.story-nav a.active:after{content:'';position:absolute;left:18%;right:18%;bottom:-1px;height:3px;background:var(--terra)}
.section{padding:76px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);gap:72px;align-items:start;margin-bottom:38px}.section-head h2{font-family:var(--serif);font-size:clamp(2.9rem,4.4vw,5.1rem);font-weight:400;line-height:1.02;letter-spacing:-.03em;margin:16px 0 0}.section-head>p{font-size:1.02rem;color:#66635d;line-height:1.7;margin:45px 0 0;max-width:550px}.section-head.light h2{color:var(--white)}.section-head.light>p{color:#c8c7c0}.section-head.light .kicker{color:#e39570}.paper{background:var(--paper)}.dark{background:var(--deep);color:var(--white)}
.perspective-band{display:grid;grid-template-columns:1fr 46px 1fr 46px 1fr;align-items:stretch}.perspective-band article{border:1px solid var(--line);border-radius:20px;padding:26px 24px;background:rgba(251,248,242,.56)}.perspective-band article span{font-size:.61rem;font-weight:900;letter-spacing:.09em;color:var(--terra-dark)}.perspective-band article b{display:block;font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:14px 0 8px}.perspective-band article p{margin:0;color:#68645e;font-size:.86rem}.perspective-band>i{display:grid;place-items:center;font-style:normal;color:var(--terra-text);font-size:1.3rem}.thesis-quote{margin:24px 0 0;padding:22px 26px;border-left:4px solid var(--mustard);background:#eee7dc;border-radius:0 18px 18px 0;font-family:var(--serif);font-size:1.3rem;line-height:1.4}.thesis-quote b{font-weight:400;color:var(--sage-dark)}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.case-card{border:1px solid var(--line);border-radius:24px;background:var(--white);overflow:hidden;display:grid;grid-template-columns:42% 58%;min-height:350px;box-shadow:0 10px 25px rgba(68,57,44,.04)}.case-card.featured{border-color:#aeb8aa}.case-visual{min-height:100%;background:#ece7dd;display:grid;place-items:center;overflow:hidden}.case-visual.image-cover img{width:100%;height:100%;object-fit:cover}.case-card.featured .case-visual img{object-position:center center}.case-visual.vector-visual img{width:88%;height:88%;object-fit:contain}.case-visual.echo-visual{background:#050505}.case-visual.echo-visual img{width:92%;height:92%;object-fit:contain}.case-body{padding:26px 26px 24px;display:flex;flex-direction:column}.case-meta{display:flex;justify-content:space-between;gap:12px;align-items:center}.case-meta span{font-size:.58rem;font-weight:900;letter-spacing:.09em;color:var(--terra-dark)}.case-meta i{font-style:normal;font-size:.62rem;color:#777169}.case-body h3{font-family:var(--serif);font-size:1.75rem;line-height:1.08;font-weight:400;margin:18px 0 12px}.case-body p{font-size:.84rem;line-height:1.6;color:#66625c;margin:0}.case-focus{margin-top:18px;padding-top:16px;border-top:1px solid #e1dbd0;font-size:.64rem;font-weight:800;color:#5b6656;line-height:1.5}.case-body a,.future-link{margin-top:auto;padding-top:20px;font-size:.72rem;font-weight:850;color:var(--terra-dark)}.future-link{color:#888178}.boundary-card{display:grid;grid-template-columns:1fr 86px 1fr;align-items:stretch;margin-top:28px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--cream)}.boundary-side{padding:30px 32px}.boundary-side span{font-size:.61rem;font-weight:900;letter-spacing:.1em}.boundary-side h3{font-family:var(--serif);font-weight:400;font-size:2rem;margin:12px 0 8px}.boundary-side p{font-size:.86rem;color:#66635e;margin:0;line-height:1.65}.boundary-side.social span{color:#9a7228}.boundary-side.professional{background:#eef1eb}.boundary-side.professional span{color:var(--sage-dark)}.boundary-mark{display:grid;place-items:center;font-family:var(--serif);font-size:2.5rem;color:var(--terra-text);border-left:1px solid var(--line);border-right:1px solid var(--line)}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.method-grid article{border:1px solid #484d48;border-radius:20px;padding:25px 23px;background:#282c28;min-height:230px}.method-grid article>span{font-family:var(--serif);font-size:1.4rem;color:#e49b78}.method-grid h3{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:30px 0 10px}.method-grid p{font-size:.82rem;color:#c9c9c3;margin:0}.method-principle{margin-top:24px;padding:24px 0;border-top:1px solid #484d48;border-bottom:1px solid #484d48;display:grid;grid-template-columns:160px 1fr;gap:28px;align-items:center}.method-principle span{font-size:.61rem;font-weight:900;letter-spacing:.1em;color:#e39570}.method-principle b{font-family:var(--serif);font-size:1.65rem;font-weight:400}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.cap-grid article{border:1px solid var(--line);border-radius:18px;padding:25px;background:rgba(251,248,242,.55);min-height:190px}.cap-grid span{font-size:.61rem;font-weight:900;color:var(--terra-text);letter-spacing:.08em}.cap-grid h3{font-family:var(--serif);font-size:1.45rem;font-weight:400;margin:24px 0 10px}.cap-grid p{font-size:.84rem;color:#66635e;margin:0}
.organizations{background:#e7ebe3}.org-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center}.org-copy h2{font-family:var(--serif);font-size:clamp(2.8rem,4.1vw,4.8rem);font-weight:400;line-height:1.03;letter-spacing:-.03em;margin:16px 0 24px}.org-copy>p{font-size:1rem;color:#596155;max-width:780px}.org-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.org-tags span{border:1px solid #bec8ba;border-radius:999px;padding:8px 11px;font-size:.69rem;font-weight:760;color:#4e5d4b;background:rgba(255,255,255,.35)}.org-cta{background:var(--deep);color:white;border-radius:24px;padding:32px}.org-cta>span{font-size:.6rem;font-weight:900;letter-spacing:.1em;color:#e39570}.org-cta h3{font-family:var(--serif);font-size:1.75rem;line-height:1.3;font-weight:400;margin:20px 0 12px}.org-cta p{font-size:.83rem;color:#c8c8c2}.org-cta a{display:inline-flex;margin-top:16px;padding:11px 15px;background:var(--terra-action);border-radius:999px;color:white;font-size:.75rem;font-weight:850}
.closing{padding:76px 0 40px}.closing>span{font-size:.61rem;font-weight:900;letter-spacing:.1em;color:var(--terra-dark)}.closing h2{font-family:var(--serif);font-size:clamp(3rem,5vw,5.8rem);font-weight:400;line-height:1;letter-spacing:-.035em;max-width:1100px;margin:18px 0}.closing>p{font-size:1rem;color:#66635e}.next-links{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:48px;padding-top:20px;font-size:.72rem;font-weight:800;color:var(--terra-dark)}
@media(max-width:1180px){.menu{display:block}.main-nav{display:none;position:absolute;right:32px;top:67px;width:240px;flex-direction:column;align-items:flex-start;gap:0;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:8px;box-shadow:0 16px 40px rgba(40,35,29,.12)}.main-nav.open{display:flex}.main-nav>a,.main-nav .lang{width:100%;padding:10px 12px}.main-nav>.linkedin{margin-top:8px}.hero{grid-template-columns:1fr;gap:38px;padding-top:56px;min-height:0}.health-map{max-width:820px}.story-nav-inner{grid-template-columns:repeat(5,1fr)}.section-head{grid-template-columns:1fr;gap:14px}.section-head>p{margin-top:0}.case-card{grid-template-columns:38% 62%}.boundary-card{grid-template-columns:1fr 66px 1fr}.org-layout{grid-template-columns:1fr;gap:28px}.method-grid{grid-template-columns:1fr 1fr}.cap-grid{grid-template-columns:1fr 1fr}}

@media(max-width:980px) and (min-width:761px){.map-canvas{gap:32px 18px}.map-point{max-width:none}.map-core{max-width:205px}.case-visual.vector-visual img{width:82%;height:82%}}
@media(max-width:760px){[data-observe]{scroll-margin-top:140px}.shell{width:min(calc(100% - 32px),var(--max))}.navbar{min-height:68px}.brand img{width:36px;height:36px}.brand-title{font-size:.78rem}.brand-sub{font-size:.55rem}.main-nav{right:16px}.context-inner{overflow:auto;white-space:nowrap}.context-inner em{display:none}.hero{padding:42px 0 38px}.hero h1{font-size:clamp(3.1rem,15vw,4.8rem);margin-top:18px}.lead{font-size:1rem}.health-map{min-height:0;padding:18px}.map-head{align-items:flex-start}.map-head b{font-size:.90rem}.map-canvas{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;gap:14px;min-height:0;margin-top:24px;padding:0}.map-core{grid-column:1 / 3;grid-row:1;max-width:none;width:100%;padding:19px 16px}.map-core strong{font-size:1.12rem}.map-point{max-width:none;min-height:118px}.p1{grid-column:1;grid-row:2}.p2{grid-column:2;grid-row:2}.p3{grid-column:1;grid-row:3}.p4{grid-column:2;grid-row:3}.map-lines{display:none}.story-nav{top:68px;overflow-x:auto}.story-nav-inner{display:flex;width:max-content;min-width:100%}.story-nav a{min-width:138px;padding:0 14px}.section{padding:54px 0}.section-head{margin-bottom:32px}.section-head h2{font-size:2.8rem}.section-head>p{font-size:.92rem}.perspective-band{grid-template-columns:1fr}.perspective-band>i{height:34px}.case-grid{grid-template-columns:1fr}.case-card{grid-template-columns:1fr}.case-visual{height:220px}.boundary-card{grid-template-columns:1fr}.boundary-mark{height:64px;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.method-grid,.cap-grid{grid-template-columns:1fr}.method-principle{grid-template-columns:1fr;gap:10px}.org-cta{padding:26px}.closing{padding-top:58px}.next-links{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* v2.9.2 · FINAL FREEZE RC · touch-target polish */
@media(max-width:1180px){
  .menu{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center;line-height:1}
  .main-nav .lang a,.main-nav .lang span{min-width:40px;min-height:36px;display:inline-flex;align-items:center;justify-content:center}
  .next-links a{min-height:44px;display:inline-flex;align-items:center}
}


/* =========================================================
   HF WEB v2.9.4 · UNIFIED GLOBAL NAV
   Same visual lockup as Home / Work. Context bars remain only
   where they work as a real breadcrumb (HealthTech / Deep Dives).
   ========================================================= */
:root{--hf-header:64px}
.site-header{
  height:64px!important;
  min-height:64px!important;
  background:rgba(251,248,242,.94)!important;
  border-bottom:1px solid rgba(70,57,41,.06)!important;
  backdrop-filter:blur(12px);
}
.site-header .navbar{height:64px!important;min-height:64px!important;gap:22px!important}
.site-header .brand{display:flex;align-items:center;gap:10px!important;min-width:max-content}
.site-header .brand img{width:48px!important;height:45px!important;object-fit:contain}
.site-header .brand-title{
  font-family:Georgia,"Times New Roman",serif!important;
  letter-spacing:.16em!important;
  font-size:1rem!important;
  font-weight:400!important;
  line-height:1!important;
}
.site-header .brand-sub{
  font-size:.54rem!important;
  letter-spacing:.13em!important;
  color:var(--sage-dark)!important;
  margin-top:1px!important;
  font-weight:400!important;
  line-height:1.2!important;
}
.site-header .main-nav{
  display:flex;
  align-items:center;
  gap:26px!important;
  font-size:.76rem!important;
  font-weight:400!important;
  color:var(--ink)!important;
}
.site-header .main-nav>a:not(.linkedin),.site-header .main-nav>span.nav-active{white-space:nowrap;color:inherit!important}
.site-header .main-nav>a:not(.linkedin):hover{color:var(--terra-text)!important}
.site-header .main-nav .nav-active{
  color:var(--ink)!important;
  font-weight:400!important;
  border-bottom:1.5px solid var(--terra)!important;
  padding-bottom:7px!important;
}
.site-header .main-nav>.linkedin{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--terra-action)!important;color:#fff!important;
  padding:8px 14px!important;border-radius:999px!important;font-weight:800!important;
  white-space:nowrap;
}
.site-header .main-nav>.linkedin:hover{background:var(--terra-dark)!important;color:#fff!important}
.site-header .lang{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;white-space:nowrap}
.site-header .lang a,.site-header .lang span{padding:4px 7px;border-radius:999px;font-size:.63rem!important;font-weight:900!important;line-height:1}
.site-header .lang .active{background:var(--ink)!important;color:#fff!important}
.site-header .menu{display:none}
.about-index,.story-nav{top:64px!important}

@media(max-width:1099px){
  :root{--hf-header:62px}
  .site-header{height:62px!important;min-height:62px!important}
  .site-header .navbar{height:62px!important;min-height:62px!important}
  .site-header .brand img{width:42px!important;height:40px!important}
  .site-header .brand-title{font-size:.82rem!important}
  .site-header .brand-sub{font-size:.47rem!important}
  .site-header .menu{
    display:flex!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
    padding:0!important;align-items:center!important;justify-content:center!important;
    border:0!important;background:transparent!important;border-radius:0!important;font-size:1.35rem!important;line-height:1!important;
  }
  .site-header .main-nav{
    display:none!important;position:absolute!important;z-index:120!important;
    top:62px!important;left:14px!important;right:14px!important;width:auto!important;
    flex-direction:column!important;align-items:stretch!important;gap:0!important;
    background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:14px!important;
    padding:16px!important;box-shadow:0 18px 40px rgba(40,30,20,.12)!important;
  }
  .site-header .main-nav.open{display:flex!important}
  .site-header .main-nav>a:not(.linkedin),.site-header .main-nav>span.nav-active{
    width:100%!important;padding:10px 12px!important;border-bottom:1px solid var(--line)!important;
  }
  .site-header .main-nav .nav-active{padding-bottom:10px!important}
  .site-header .lang{margin:8px 12px!important;align-self:flex-start!important}
  .site-header .lang a,.site-header .lang span{min-width:40px!important;min-height:36px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .site-header .main-nav>.linkedin{width:100%!important;margin-top:8px!important;padding:11px 14px!important;text-align:center!important}
  .about-index{top:62px!important}
}
