:root{--deep:#30171d;--ink:#301e20;--paper:#eee5da;--paper2:#f5eee5;--line:#c8b4a8;--muted:#6e5553;--green:#986e6c}
body{color:#301e20;background:#eee5da;font-family:"Times New Roman",Times,serif}.topbar{position:sticky;top:0;z-index:100;background:#f5eee5eF;border-bottom:1px solid #c8b4a8;backdrop-filter:blur(12px)}.navwrap{width:min(calc(100% - 44px),1300px);height:74px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.sitebrand{font-size:29px;font-weight:bold;letter-spacing:-.05em;white-space:nowrap}.sitebrand span{color:#a36f68}.navigation{display:flex;align-items:center;gap:clamp(12px,1.9vw,28px);font-size:16px}.navigation>a{white-space:nowrap}.navigation a[aria-current]{color:#883d4a;border-bottom:1px solid}.navigation a:hover,.moreitems a:hover{text-decoration:underline;text-underline-offset:5px}.more{position:relative}.more summary{list-style:none;cursor:pointer}.more summary::-webkit-details-marker{display:none}.moreitems{position:absolute;top:33px;right:0;min-width:185px;background:#f5eee5;border:1px solid #c8b4a8;padding:12px;box-shadow:0 19px 40px #29111725;display:grid;gap:13px}.mobile-more{display:none}.mobile-more summary{cursor:pointer;list-style:none;padding:8px;border:1px solid #c8b4a8}.mobile-more summary::-webkit-details-marker{display:none}.mobile-more nav{position:absolute;left:0;right:0;top:74px;background:#f5eee5;padding:17px 25px;display:grid;gap:11px;box-shadow:0 30px 40px #30171d28}.skip{position:absolute;top:-100px;background:white;padding:8px;z-index:200}.skip:focus{top:0}
.hero{background:linear-gradient(115deg,#271018,#4a2730 80%,#6b493b);color:#f5eee5}.hero-inner{display:block;min-height:auto;padding-top:100px;padding-bottom:118px}.hero-inner>div:first-child{max-width:1050px}.hero h1{font-size:clamp(65px,8vw,124px);max-width:1000px;line-height:.94}.hero h1 em{color:#d5aea6}.hero .lead{color:#eddbce;max-width:750px}.hero .eyebrow{color:#d4b4a9}.note-graphic{display:none}.precision-viewport{background:radial-gradient(ellipse at center,#eee5da,#ddc9be)}.precision-card{background:#f5eee5}.precision-card:nth-of-type(2){background:#e4d0c7}.focus-intro,.gallery-wrap,.section{background:#eee5da}.focus-outro{color:#805f58}.short-end{padding:80px 0 110px;background:#43242c;color:#f5eee5}.short-end h2{font-size:clamp(48px,6vw,88px);max-width:790px;font-weight:400;line-height:1.04}.short-end .page-links{border-color:#94686a}.sitefoot{background:#261218;color:#f5eee5;padding:58px 0 25px}.sitefoot .frame{width:min(calc(100% - 50px),1230px);margin:auto}.footrow{display:flex;justify-content:space-between;gap:24px}.footrow strong{font-size:35px}.footrow p{font-size:16px;color:#c6aca3}.footrow nav{display:flex;gap:21px;align-items:center;flex-wrap:wrap;font:12px ui-monospace,monospace}.footfine{margin-top:38px;padding-top:14px;border-top:1px solid #7d5a5c;color:#ad9288;font:11px ui-monospace,monospace}
.intro-hero{background:#361b24;color:#f5eee5;padding:96px 0 96px}.frame{width:min(calc(100% - 50px),1230px);margin:auto}.intro-hero .caps{color:#caa99e}.caps{font:11px ui-monospace,Menlo,monospace;letter-spacing:.13em;text-transform:uppercase}.copper{color:#975c58}.intro-hero h1{font-size:clamp(65px,9vw,128px);line-height:.96;font-weight:400;letter-spacing:-.065em;margin:22px 0}.intro-hero p{font-size:clamp(20px,2.2vw,25px);max-width:790px;line-height:1.45;color:#dcc3b9}.content-section{padding:90px 0}.content-section.soft{background:#e5d9ce}.content-section.dark{background:#43212a;color:#f5eee5}.content-section.dark .timeline-row{border-color:#8d6970}.twocol{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:start}.prose p{font-size:21px;line-height:1.65;margin-bottom:21px}.twocol figure{margin:0}.twocol figure img{width:100%;height:auto;max-height:460px;object-fit:cover}.twocol figcaption{font:11px ui-monospace,monospace;color:#805f58;margin-top:10px}.timeline-row{border-top:1px solid #c7b2a8;padding:27px 0;display:grid;grid-template-columns:210px 1fr;gap:28px}.timeline-row span{font:11px ui-monospace,monospace;text-transform:uppercase;color:#96726a}.timeline-row h2{font-size:clamp(27px,3vw,43px);font-weight:400;line-height:1.05;margin-bottom:9px}.timeline-row p{font-size:18px;max-width:790px;line-height:1.5}.timeline-row .org{color:#8d5959;margin-bottom:9px}.section-h{font-size:clamp(47px,5.8vw,85px);font-weight:400;line-height:1.02;max-width:900px;margin:22px 0}.lede{font-size:clamp(22px,2.4vw,30px);line-height:1.42;max-width:950px}.page-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:28px}.page-links a{border-bottom:1px solid;padding-bottom:6px;font-size:19px}.page-links .filled-link{background:#43212a;color:#f5eee5;padding:12px 20px;border:0}.project-pair,.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px;margin-top:20px}.project-tile{background:#f7f0e7;border:1px solid #c7b3a8;display:block}.project-tile img{width:100%;height:305px;object-fit:cover}.tile-body{padding:27px}.tile-body h2{font-size:clamp(31px,3vw,47px);font-weight:400;line-height:1.05;margin:12px 0}.tile-body p{font-size:18px}.project-detail{padding:55px 0 44px;border-bottom:1px solid #c7b3a8;scroll-margin-top:100px}.project-detail h2{font-size:clamp(37px,4vw,60px);font-weight:400;margin:12px 0}.project-detail p{font-size:19px;max-width:860px}.project-detail summary{margin:23px 0;border:1px solid #6a4b4d;display:inline-block;padding:10px 16px;cursor:pointer;list-style:none}.project-detail summary::-webkit-details-marker{display:none}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.detail-grid img{width:100%;max-height:350px;object-fit:cover}.inline-anchor{display:inline-block;margin-top:13px;text-decoration:underline}.blog-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:26px 0}.searchbox{padding:12px 16px;min-width:220px;flex:1;border:1px solid #bda69c;background:#fff8f0}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{border:1px solid #bda69c;background:transparent;padding:12px;font:11px ui-monospace,monospace}.filters button[aria-pressed=true]{background:#43212a;color:white}.blog-section{padding:28px 0}.blog-section h2{font-size:clamp(33px,3.5vw,50px);font-weight:400;margin-bottom:20px}.article-row{display:grid;grid-template-columns:50px 1fr auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #c7b3a8}.article-row span{font:11px ui-monospace,monospace;color:#876760}.article-row a{font-size:clamp(19px,2vw,26px);line-height:1.18}.article-row a:hover{text-decoration:underline}.trailing-link{margin-top:40px}.trailing-link a{text-decoration:underline}.skillpanel{background:#f7f0e7;border:1px solid #c7b3a8;padding:30px}.skillpanel h2{font-size:36px;font-weight:400;margin-bottom:14px}.skillpanel p{font-size:19px;line-height:1.58}
.gallery-wrap{background:#eee5da}.art-piece:hover{transform:translateY(-3px)}.gallery{columns:3}
@media(max-width:1140px){.navigation{display:none}.mobile-more{display:block}.navwrap{position:relative}}@media(max-width:780px){.twocol,.project-pair,.skills-grid,.detail-grid{grid-template-columns:1fr}.timeline-row{grid-template-columns:1fr;gap:10px}.footrow{display:block}.footrow nav{margin-top:20px}.content-section{padding:65px 0}}@media(max-width:540px){.frame,.sitefoot .frame{width:calc(100% - 34px)}.hero h1{font-size:clamp(56px,12.6vw,78px)}.hero-inner{padding-top:82px;padding-bottom:93px}.intro-hero{padding:69px 0}.intro-hero h1{font-size:clamp(53px,12vw,75px)}.gallery{columns:2}.short-end{padding:64px 0}.navwrap{height:67px}.mobile-more nav{top:67px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Experience details and research preprint */
.experience-row{padding-top:34px;padding-bottom:36px}.experience-row>div p{line-height:1.55}.exp-focus{font:11px/1.7 ui-monospace,Menlo,monospace;color:#885e5b;margin-top:16px}.exp-links{display:flex;gap:13px 23px;flex-wrap:wrap;margin-top:14px}.exp-links a,.preprint-reference a{font:13px/1.5 ui-monospace,Menlo,monospace;color:#76374a;border-bottom:1px solid #ab8580;padding-bottom:3px}.preprint-reference{margin-top:26px;border:1px solid #bea99f;background:#f6ede5;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.preprint-reference p{font-size:20px;line-height:1.35;margin:8px 0 6px}.preprint-reference span:not(.caps){font:11px ui-monospace,Menlo,monospace;color:#88665f}.preprint-reference a{white-space:nowrap}@media(max-width:700px){.preprint-reference{display:block}.preprint-reference a{display:inline-block;margin-top:16px}}


/* Home project introduction: editorial spacing and responsive, readable hierarchy. */
.focus-intro{
  padding:clamp(80px,8vw,135px) 0 clamp(95px,8vw,145px) !important;
}
.focus-intro .introline{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(28px,3vw,46px);
  align-items:start;
}
.focus-intro .introline>div{min-width:0}
.focus-intro .eyebrow{
  display:block;
  margin:0 0 clamp(24px,3vw,38px);
}
.focus-intro h2{
  font-size:clamp(3.65rem,6.3vw,7.2rem);
  font-weight:400;
  letter-spacing:-.06em;
  line-height:1.06;
  max-width:1160px;
  margin:0;
  text-wrap:balance;
}
.focus-intro .desc{
  display:block;
  font-size:clamp(1.25rem,1.8vw,1.65rem);
  line-height:1.55;
  margin:0;
  max-width:680px;
  color:#715b55;
}
.demo-bar,.precision-hint{display:none !important}
.leadership-link{
  display:inline-block;
  margin-top:12px;
  font:13px/1.5 ui-monospace,Menlo,monospace;
  color:#76374a;
  border-bottom:1px solid #ab8580;
  padding-bottom:3px;
}
.leadership-link:hover{border-color:#76374a}
.skills-followup{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;margin-top:28px}
.skills-followup a{font:13px/1.6 ui-monospace,Menlo,monospace;color:#76374a;border-bottom:1px solid #ab8580;padding-bottom:5px}
.skills-followup a:hover{border-color:#76374a}
@media(max-width:760px){
 .focus-intro{padding:70px 0 90px !important}
 .focus-intro h2{font-size:clamp(3.2rem,9vw,5rem);line-height:1.08;letter-spacing:-.05em}
 .focus-intro .eyebrow{margin-bottom:25px}
 .focus-intro .introline{gap:28px}
}
@media(max-width:480px){
 .focus-intro{padding:62px 0 76px !important}
 .focus-intro h2{font-size:clamp(3rem,10.8vw,4rem)}
 .focus-intro .desc{font-size:1.16rem;line-height:1.5}
}

/* Living Lab link styling: keep navigation and article links consistent across
   unvisited, visited, hover, and focus states. Avoid browser default blue/purple. */
a:link, a:visited { color:inherit; text-decoration:none; }
.sitebrand:link, .sitebrand:visited,
.navigation>a:link, .navigation>a:visited,
.moreitems a:link, .moreitems a:visited,
.mobile-more nav a:link, .mobile-more nav a:visited {
  color:#352227;
  text-decoration:none;
}
.navigation a[aria-current="page"],
.mobile-more nav a[aria-current="page"] {
  color:#352227;
  border-bottom:0;
  font-weight:700;
}
.navigation a:hover, .navigation a:focus-visible,
.moreitems a:hover, .moreitems a:focus-visible,
.mobile-more nav a:hover, .mobile-more nav a:focus-visible,
.sitebrand:hover, .sitebrand:focus-visible {
  color:#70424a;
  text-decoration:none;
}
.article-row a:link, .article-row a:visited,
.article-row a:hover, .article-row a:focus-visible {
  color:#3d262b;
  text-decoration:none;
}
.article-row { transition:background-color 180ms ease; }
.article-row:hover, .article-row:focus-within { background:#e8dacf; }
.article-row a:hover, .article-row a:focus-visible { color:#3d262b; }
.page-links a:link, .page-links a:visited,
.exp-links a:link, .exp-links a:visited,
.leadership-link:link, .leadership-link:visited,
.preprint-reference a:link, .preprint-reference a:visited,
.inline-anchor:link, .inline-anchor:visited,
.skills-followup a:link, .skills-followup a:visited {
  text-decoration:none;
}
.page-links a, .page-links a:link, .page-links a:visited {
  border-bottom:0;
  color:#512c36;
}
.sitefoot a:link, .sitefoot a:visited,
.home-end a:link, .home-end a:visited,
.hero a:link, .hero a:visited { color:inherit; text-decoration:none; }
.hero .hero-links a { border-bottom:0; }
a:focus-visible { outline:2px solid #98596a; outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .article-row { transition:none; } }

/* Research detail refresh */
.project-pair.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.project-pair.three-up .project-tile img{height:245px;object-fit:cover}
.project-pair.three-up .tile-body h2{font-size:clamp(28px,2.6vw,39px)}
.project-detail{scroll-margin-top:90px}
.project-detail>p{max-width:950px;line-height:1.6}
.research-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:27px 0 8px}
.research-highlights>div{background:#f7efe6;border:1px solid #ccb6ac;padding:19px}
.research-highlights strong{display:block;font:normal clamp(23px,2.7vw,34px)/1.1 "Times New Roman",serif;color:#4d2933;margin-bottom:12px}
.research-highlights span{display:block;font-size:16px;line-height:1.35;color:#66514f}
.research-details{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:start;gap:24px;margin:12px 0 27px}
.research-details ul{margin:0;padding-left:23px;font-size:18px;line-height:1.55}
.research-details li{margin:0 0 14px}
.research-details img{width:100%;object-fit:contain;max-height:390px;background:#f8f0e7;border:1px solid #ccb6ac}
.project-resources{margin:23px 0}
.project-resources a,.concept-gallery a{display:inline-block;color:#5d303c;border-bottom:0;text-decoration:none;font:13px/1.5 ui-monospace,monospace}
.project-footnote{color:#785755;font-size:16px!important;margin:20px 0}
.concept-gallery{padding:80px 0 20px}
.concept-gallery h2{font-size:clamp(44px,5.3vw,74px);line-height:1.03;font-weight:400;margin:16px 0 20px}
.concept-intro{font-size:21px;max-width:790px;margin-bottom:28px}
.concept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.concept-grid>div{border:1px solid #ccb6ac;background:#f7efe6;padding:26px}
.concept-grid h3{font-size:29px;font-weight:400;line-height:1.15;margin:14px 0}
.concept-grid p{font-size:17px;line-height:1.45}
@media(max-width:900px){.project-pair.three-up{grid-template-columns:repeat(2,minmax(0,1fr))}.research-details{grid-template-columns:1fr}.research-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.project-pair.three-up{grid-template-columns:1fr}.research-highlights,.concept-grid{grid-template-columns:1fr}}


/* Research project design v2: center the layout and prevent full-width images. */
.rp-research,.rp-research *{box-sizing:border-box}
.rp-research{background:#eee5da;padding:clamp(65px,7vw,110px) 0}
.rp-shell{width:min(1200px,calc(100% - 64px));margin:0 auto}
.rp-eyebrow{font:11px/1.5 ui-monospace,Menlo,monospace;text-transform:uppercase;letter-spacing:.13em;color:#94605b;margin:0 0 15px}
.rp-overview{display:grid;grid-template-columns:1.2fr .8fr;gap:55px;align-items:end;margin:0 0 42px}
.rp-overview h2{font-size:clamp(44px,5.2vw,72px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:0}
.rp-overview>p{font-size:21px;color:#715a59;line-height:1.48;margin:0}
.rp-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 78px}
.rp-index a,.rp-index a:link,.rp-index a:visited{min-height:78px;display:flex;align-items:center;gap:15px;background:#f8f1e9;border:1px solid #d3bfb5!important;border-radius:8px;color:#432730!important;font-size:18px;padding:14px 17px;text-decoration:none!important}
.rp-index a span:first-child{font:11px ui-monospace,Menlo,monospace;color:#986864}
.rp-index a span:last-child{margin-left:auto}
.rp-index a:hover{background:#f1e5db}
.rp-project{padding:55px 0 0;margin:0 0 95px;border-top:1px solid #c7b5ac;scroll-margin-top:100px}
.rp-project-heading{max-width:920px;margin:0 0 37px}
.rp-project-heading h2{font-size:clamp(44px,5vw,72px);font-weight:400;letter-spacing:-.05em;line-height:1.02;margin:14px 0 19px}
.rp-project-heading>p:last-child{font-size:clamp(19px,1.9vw,23px);line-height:1.49;color:#5a4547;margin:0}
.rp-project-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(25px,4vw,55px);align-items:start}
.rp-project-details,.rp-photos{min-width:0}
.rp-reverse .rp-project-details{grid-column:2;grid-row:1}
.rp-reverse .rp-photos{grid-column:1;grid-row:1}
.rp-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 0 24px}
.rp-metric{min-width:0;padding:18px 13px;background:#faf4ed;border:1px solid #d4bfb5;border-radius:8px}
.rp-metric strong{display:block;font-size:clamp(22px,2.1vw,29px);font-weight:400;color:#4c2833;line-height:1.1;margin:0 0 10px}
.rp-metric p{font-size:15px;color:#6e5555;line-height:1.4;margin:0;overflow-wrap:break-word}
.rp-technical{border:1px solid #d4bfb5;background:#f8f1ea;border-radius:8px;padding:0 20px}
.rp-technical summary{list-style:none;display:flex;justify-content:space-between;align-items:center;font-size:21px;cursor:pointer;padding:18px 0}
.rp-technical summary::-webkit-details-marker{display:none}
.rp-technical summary span{color:#895759}
.rp-technical[open] summary{border-bottom:1px solid #d4bfb5}
.rp-technical ul{font-size:17px;color:#5a4849;line-height:1.53;padding:18px 0 21px 20px;margin:0}
.rp-technical li+li{margin-top:12px}
.rp-note{font-size:15px;color:#7a6061;line-height:1.5;margin:19px 0 0}
.rp-link,.rp-link:link,.rp-link:visited{display:inline-block;margin:24px 0 0;background:#482630;border:1px solid #482630!important;color:#fff8f0!important;border-radius:60px;padding:11px 20px;font-size:17px;text-decoration:none!important}
.rp-link:hover{background:#6b3a49}
.rp-photos{display:grid;gap:13px}
.rp-photo{margin:0;background:#f8f1ea;border:1px solid #d1beb5;border-radius:9px;overflow:hidden;min-width:0}
.rp-photo img{display:block;width:100%;height:210px;object-fit:cover;max-width:100%}
.rp-photo.rp-primary img{height:clamp(270px,30vw,390px);object-fit:contain;background:#e7dad1}
.rp-photo.rp-chart img{height:auto;max-height:400px;object-fit:contain;background:#fff}
.rp-photo figcaption{font-size:14px;color:#735959;padding:11px 14px;line-height:1.3}
.rp-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.rp-photo-pair .rp-photo img{height:155px}
.rp-media-note{padding:21px;border:1px solid #d1beb5;border-radius:9px;background:#f8f1ea}
.rp-media-note small{display:block;font:11px ui-monospace,Menlo,monospace;color:#91615f;text-transform:uppercase;margin-bottom:8px}
.rp-media-note strong{font-size:28px;font-weight:400}
.rp-media-note p{font-size:16px;color:#6d5656;line-height:1.45;margin:8px 0 0}
.rp-concepts{padding:55px 0 0;border-top:1px solid #c7b5ac}
.rp-concepts h2{font-size:clamp(42px,5vw,70px);font-weight:400;margin:0 0 14px;letter-spacing:-.04em}
.rp-concepts>p:not(.rp-eyebrow){font-size:19px;color:#685253;max-width:820px;margin:0 0 27px}
.rp-concept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.rp-concept-grid>div{padding:25px;border:1px solid #d2bfb5;background:#f8f1ea;border-radius:9px}
.rp-concept-grid small{font:10px ui-monospace,Menlo,monospace;color:#98645f}
.rp-concept-grid h3{font-size:28px;font-weight:400;line-height:1.1;margin:15px 0 13px}
.rp-concept-grid p{font-size:17px;line-height:1.4;color:#70595a;margin:0}
.exp-links a,.exp-links a:link,.exp-links a:visited,.leadership-link,.leadership-link:visited{
 font:italic 17px/1.5 "Times New Roman",Times,serif!important;color:#845761!important;text-decoration:none!important;border-bottom:0!important;padding:0!important}
.exp-links a:hover,.leadership-link:hover{color:#4e2934!important}
@media(max-width:1000px){.rp-overview{grid-template-columns:1fr}.rp-project-layout{gap:24px}.rp-metrics{grid-template-columns:1fr}.rp-metric{padding:13px 17px}.rp-metric strong{font-size:25px}}
@media(max-width:800px){.rp-shell{width:calc(100% - 44px)}.rp-index{grid-template-columns:1fr;gap:8px;margin-bottom:58px}.rp-index a{min-height:57px}.rp-project-layout{display:flex;flex-direction:column}.rp-reverse .rp-project-details,.rp-reverse .rp-photos{grid-column:auto;grid-row:auto}.rp-photos,.rp-project-details{width:100%}.rp-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.rp-concept-grid{grid-template-columns:1fr 1fr}.rp-project{margin-bottom:70px}}
@media(max-width:550px){.rp-shell{width:calc(100% - 32px)}.rp-research{padding:55px 0}.rp-project-heading h2{font-size:43px}.rp-metrics,.rp-concept-grid{grid-template-columns:1fr}.rp-primary img{height:250px}.rp-photo-pair{gap:8px}.rp-photo-pair .rp-photo img{height:128px}.rp-technical{padding:0 16px}}
@media(prefers-reduced-motion:reduce){.rp-link,.rp-index a{transition:none}}

/* High contrast PDF action and readable secondary link */
.page-links a.filled-link,.page-links a.filled-link:link,.page-links a.filled-link:visited,.page-links a.filled-link:hover,.page-links a.filled-link:active{display:inline-flex;align-items:center;justify-content:center;background:#45232d!important;color:#fff8f0!important;border:1px solid #45232d!important;border-radius:5px;padding:14px 22px;font-size:18px;line-height:1.25;text-decoration:none!important;min-height:48px}
.page-links a.filled-link:hover,.page-links a.filled-link:focus-visible{background:#603442!important;color:#fff8f0!important}
.page-links a:not(.filled-link),.page-links a:not(.filled-link):visited{color:#4b2e37!important}

/* In vitro CNS project gallery. Keep the main portrait and supporting evidence readable. */
.rp-spinal-gallery .rp-photo a {display:block;line-height:0;text-decoration:none!important;border:0!important;overflow:hidden}
.rp-spinal-gallery .rp-primary img {width:100%;height:clamp(350px,39vw,480px);object-fit:contain;background:#e7dad1}
.rp-spinal-gallery .rp-photo-pair .rp-photo img {width:100%;height:205px;object-fit:contain;background:#e7dad1}
.rp-spinal-gallery .rp-photo a:focus-visible {outline:3px solid #88515e;outline-offset:-3px}
.rp-spinal-gallery .rp-photo img {transition:filter .2s ease}
.rp-spinal-gallery .rp-photo a:hover img {filter:brightness(.96)}
@media(max-width:550px) {.rp-spinal-gallery .rp-primary img{height:340px}.rp-spinal-gallery .rp-photo-pair .rp-photo img{height:165px}}
@media(prefers-reduced-motion:reduce){.rp-spinal-gallery .rp-photo img{transition:none}}

/* Additional EEG electrode presentation gallery. */
.rp-eeg-gallery-heading{padding:6px 2px 2px}
.rp-eeg-gallery-heading strong{display:block;font-size:22px;font-weight:400;line-height:1.22;color:#432831}
.rp-eeg-gallery-heading span{display:block;font-size:15px;line-height:1.45;color:#775e5d;margin-top:6px}
.rp-eeg-new-gallery .rp-photo a{display:block;border:0!important;text-decoration:none!important;line-height:0;overflow:hidden}
.rp-eeg-new-gallery .rp-photo img{width:100%;height:215px;max-width:100%;object-fit:contain;background:#e7dad1}
.rp-eeg-new-gallery .rp-photo a:focus-visible{outline:3px solid #895562;outline-offset:-3px}
.rp-eeg-new-gallery .rp-photo img{transition:filter .18s ease}
.rp-eeg-new-gallery .rp-photo a:hover img{filter:brightness(.96)}
@media(max-width:550px){.rp-eeg-new-gallery .rp-photo img{height:168px}}
@media(prefers-reduced-motion:reduce){.rp-eeg-new-gallery .rp-photo img{transition:none}}


/* Homepage directory and broad portfolio focus */
.home-directory {background:#eee5da;padding:clamp(70px,8vw,115px) 0 90px;scroll-margin-top:74px;}
.home-directory-heading {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.62fr);gap:45px;align-items:end;margin-bottom:36px;}
.home-directory-heading .eyebrow {color:#986b64;margin:0 0 18px;}
.home-directory-heading h2 {font-size:clamp(47px,6vw,86px);line-height:1.03;letter-spacing:-.055em;font-weight:400;margin:0;}
.home-directory-heading>p {font-size:clamp(18px,1.6vw,22px);line-height:1.5;color:#725957;max-width:470px;margin:0;}
.home-directory-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.home-directory-grid a,.home-directory-grid a:link,.home-directory-grid a:visited {
 display:flex;position:relative;flex-direction:column;min-height:190px;padding:25px 26px 26px;border-radius:8px;
 border:1px solid #cbb7ae!important;background:#f7eee6;color:#362127!important;
 text-decoration:none!important;transition:background .2s ease,transform .2s ease;
}
.home-directory-grid a:hover{background:#ead9ce;transform:translateY(-3px);}
.home-link-index{font:11px ui-monospace,Menlo,monospace;letter-spacing:.1em;color:#9a6665;}
.home-directory-grid strong{font-size:clamp(23px,2.2vw,32px);line-height:1.08;font-weight:400;letter-spacing:-.03em;margin-top:20px;}
.home-link-description{font-size:16px;color:#765f5e;line-height:1.35;margin-top:13px;padding-right:23px;}
.home-link-arrow{position:absolute;right:24px;top:21px;color:#864852;font-size:20px;}
.focus-intro {padding-top:85px!important;padding-bottom:75px!important;}
.precision-track {height:520vh;}
.precision-card[data-project="1"]{background:#f4ece3;}
.precision-card[data-project="2"]{background:#e9dbd3;}
.precision-card[data-project="3"]{background:#f7f1e8;}
.precision-card .focus-visual-editorial,.precision-card .focus-visual-resume{
 display:grid;place-items:center;padding:clamp(19px,4vw,56px);background:linear-gradient(135deg,#c3a59b,#92706e);
}
.precision-card .focus-visual-editorial:before,.precision-card .focus-visual-resume:before{display:none;}
.focus-editorial-sheet {background:#f7eee6;color:#45262f;padding:clamp(25px,3.5vw,54px);width:min(100%,460px);min-height:70%;display:flex;flex-direction:column;gap:22px;box-shadow:13px 16px 0 #442b3538;transform:rotate(-2deg);}
.focus-editorial-sheet .mono{color:#845158;font-size:11px;}
.focus-editorial-line,.focus-document-rule{height:1px;background:#b69b91;width:100%;display:block;}
.focus-editorial-sheet strong{font-size:clamp(31px,3.25vw,54px);line-height:1.02;font-weight:400;letter-spacing:-.05em;}
.focus-editorial-sheet>span:last-child{font-size:15px;color:#866660;margin-top:auto;}
.precision-card .focus-visual-resume{background:linear-gradient(145deg,#b1a29b,#d5bdb2);}
.focus-document-sheet {background:#f7f1e8;color:#452630;padding:clamp(26px,3.3vw,46px);width:min(100%,410px);height:90%;max-height:500px;display:flex;flex-direction:column;gap:12px;box-shadow:14px 15px 0 #442e3a2e;transform:rotate(2deg);}
.focus-document-sheet strong{font-size:clamp(32px,3.2vw,52px);font-weight:400;letter-spacing:-.05em;margin:12px 0 0;}
.focus-document-sheet .mono{color:#966b65;}
.focus-document-sheet>span:not(.mono):not(.focus-document-rule){font-size:18px;}
.focus-document-rule.short{width:68%;}
.precision-card .focus-art-visual{background:#e8d9cb;}
.precision-card .focus-art-visual img {object-fit:contain;background:#f0e7dd;}
.home-final-intro{font-size:clamp(19px,2vw,24px);line-height:1.5;color:#dfc9bf;max-width:710px;margin:24px 0 0;}
@media(max-width:900px){
 .home-directory-heading{grid-template-columns:1fr;gap:18px}
 .home-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .precision-track{height:510vh}
 .focus-editorial-sheet{min-height:0;height:100%;gap:14px}
 .focus-editorial-sheet strong{font-size:clamp(28px,5vw,48px)}
 .focus-document-sheet{height:100%}
}
@media(max-width:600px){
 .home-directory{padding:60px 0 70px}
 .home-directory-grid{grid-template-columns:1fr;gap:10px}
 .home-directory-grid a{min-height:140px;padding:20px}
 .home-directory-grid strong{margin-top:12px}
 .home-link-description{margin-top:8px}
 .focus-intro{padding-top:65px!important;padding-bottom:65px!important}
 .precision-track{height:490vh}
 .focus-editorial-sheet,.focus-document-sheet{width:100%;max-height:100%;padding:20px;box-shadow:none;transform:none}
 .focus-editorial-sheet strong{font-size:32px}
 .focus-document-sheet strong{font-size:35px;margin:4px 0}
 .focus-document-sheet>span:not(.mono):not(.focus-document-rule){font-size:15px}
 .focus-document-sheet{gap:8px}
}
@media(prefers-reduced-motion:reduce){
 .precision-track{height:auto!important}
 .home-directory-grid a{transition:none}
}


/* FORGE work in progress and EEG open-source references. */
.rp-index.rp-index-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.rp-index.rp-index-four a{font-size:clamp(15px,1.3vw,18px);padding:14px 12px;gap:10px;overflow-wrap:anywhere}
.rp-resource-links{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin-top:24px}
.rp-resource-links .rp-link{margin:0;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1.3;text-align:center}
.rp-resource-links .rp-link-outline,.rp-resource-links .rp-link-outline:link,.rp-resource-links .rp-link-outline:visited{background:transparent!important;border:1px solid #6f4a51!important;color:#4e2933!important}
.rp-resource-links .rp-link-outline:hover{background:#e1cec3!important;color:#43242c!important}
.rp-resource-description{color:#785e5d;line-height:1.5;font-size:15px;margin:14px 0 0}
.rp-project-ongoing .rp-project-heading{max-width:1010px}
.rp-status{display:inline-block;vertical-align:middle;color:#f7eee7;background:#754653;border-radius:24px;padding:5px 11px;letter-spacing:.06em;font:11px/1.2 ui-monospace,Menlo,monospace;text-transform:uppercase;margin-left:12px}
.rp-forge-visual{min-width:0;align-self:stretch;background:#f6eee6;border:1px solid #d1bcb2;border-radius:10px;padding:clamp(18px,2.1vw,30px);display:flex;flex-direction:column;gap:20px}
.rp-forge-visual-label{font:11px/1.5 ui-monospace,Menlo,monospace;letter-spacing:.09em;color:#896164;text-transform:uppercase;margin:0}
.rp-forge-pipeline{display:flex;flex-direction:column;gap:0;flex:1;justify-content:center}
.rp-forge-step{padding:18px 20px;border:1px solid #ccb6ae;border-radius:9px;background:#eee1d7;overflow-wrap:break-word}
.rp-forge-step>span{display:block;font:11px/1.3 ui-monospace,Menlo,monospace;text-transform:uppercase;letter-spacing:.06em;color:#966a65;margin-bottom:9px}
.rp-forge-step>strong{display:block;font-size:clamp(22px,2.25vw,31px);font-weight:400;color:#462630;line-height:1.13}
.rp-forge-step>p{margin:10px 0 0;color:#715858;font-size:15px;line-height:1.35}
.rp-forge-connector{height:36px;display:grid;place-items:center;color:#8b5a5e;font:22px/1 "Times New Roman",Times,serif}
.rp-forge-branches{background:#f7f0e9}
.rp-forge-branches-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.rp-forge-branches-grid>div{border:1px solid #d1bcb1;background:#eee0d6;border-radius:7px;padding:15px 11px;min-width:0}
.rp-forge-branches-grid strong{display:block;color:#442630;font-size:22px;font-weight:400;margin:9px 0 5px}
.rp-forge-branches-grid small{display:block;font-size:14px;line-height:1.35;color:#705759}
.rp-forge-dot-group{display:flex;gap:6px;justify-content:center;align-items:center;min-height:12px}
.rp-forge-dot-group i{display:block;width:10px;height:10px;border-radius:50%;background:#905e62}
.rp-forge-visual-foot{font-size:13px;line-height:1.4;color:#816967;margin:0}
@media(max-width:1070px){.rp-index.rp-index-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.rp-index.rp-index-four{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-forge-visual{width:100%}}
@media(max-width:550px){.rp-index.rp-index-four{grid-template-columns:1fr}.rp-resource-links{flex-direction:column}.rp-resource-links .rp-link{width:100%}.rp-forge-branches-grid{grid-template-columns:1fr 1fr}.rp-status{margin-left:8px}}
