/* Personal research archive: formal names, quiet codes, existing reading surfaces. */
html.obs-research{--obs-ink:#f2f0e8;--obs-muted:#c8cec1;--obs-line:#343b30;--obs-accent:#c8ff3d;--obs-bg:#080a09;--obs-serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,serif;--obs-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Yu Gothic UI","Noto Sans JP",sans-serif;--obs-mono:ui-monospace,"SFMono-Regular",Consolas,monospace}
.obs-name{display:block;font-family:var(--obs-serif);font-weight:500;line-height:1.35;letter-spacing:.025em}
.obs-code{display:block;font-family:var(--obs-mono);font-size:16px;font-weight:400;line-height:1.5;letter-spacing:.09em;color:var(--obs-muted);margin-top:6px;text-transform:uppercase;overflow-wrap:anywhere}
.obs-code::before{content:"";display:inline-block;width:12px;height:1px;background:var(--obs-accent);vertical-align:middle;margin-right:8px}
.obs-sector{position:relative;scroll-margin-top:110px}
.obs-sector::after{content:attr(data-obs-state);position:absolute;top:12px;right:0;width:20em;max-width:50%;text-align:right;font:400 16px/1.4 var(--obs-mono);letter-spacing:.13em;color:var(--obs-muted);opacity:0;pointer-events:none;transition:opacity .25s}
.obs-sector.is-accessed::after{opacity:1}
.obs-sector.is-accessed{--obs-scan:1}
.obs-sector .obs-code{color:var(--obs-muted)}
.obs-sector .obs-code::before{transform-origin:left;animation:obs-rule .8s ease-out both;animation-play-state:paused}
.obs-sector.is-accessed .obs-code::before{animation-play-state:running}
@keyframes obs-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
html.obs-research .section-label .obs-name{font-size:inherit;letter-spacing:.02em}
html.obs-research .section-label:has(.obs-name){display:block!important;text-transform:none!important}
html.obs-research .section-label .obs-code{font-size:16px!important}
html.obs-research .pn-page-title-band h1:has(.obs-name){font-size:clamp(32px,4.5vw,58px)!important}
html.obs-research .page-title h1:has(.obs-name){font-size:clamp(34px,5.5vw,64px)}
html.obs-research .theme-card strong .obs-name{font-size:clamp(25px,2.5vw,32px)}
html.obs-research .theme-card strong .obs-code{font-size:16px;line-height:1.6;letter-spacing:.06em}
html.obs-research .theme-card em{font:400 16px/1.5 var(--obs-mono);letter-spacing:.1em}
html.obs-research .theme-card:hover em{color:var(--obs-accent)}
html.obs-research .theme-card:focus-visible{outline:1px solid var(--obs-accent);outline-offset:8px}
html.obs-research .filter-btn:has(.obs-name){padding:12px 16px;text-align:left;white-space:normal}
html.obs-research .filter-btn .obs-name{font-size:16px;line-height:1.4}
html.obs-research .filter-btn .obs-code{font-size:16px;letter-spacing:0;margin-top:2px}
html.obs-research .filter-btn .obs-code::before{display:none}
html.obs-research .cat-badge:has(.obs-name),html.obs-research .cat-label:has(.obs-name){background:transparent!important;padding:0!important;text-align:left}
html.obs-research .cat-badge .obs-name,html.obs-research .cat-label .obs-name{font-size:16px;font-family:var(--obs-sans);font-weight:400;color:var(--obs-muted)}
html.obs-research .cat-badge .obs-code,html.obs-research .cat-label .obs-code{font-size:16px;letter-spacing:0;margin-top:2px;max-width:190px}
html.obs-research .cat-badge .obs-code::before,html.obs-research .cat-label .obs-code::before{display:none}
html.obs-research .article-meta{max-width:210px}
html.obs-research .article-entry__meta{min-width:0}
html.obs-research .cat-name:has(.obs-name){min-width:170px;width:auto!important}
html.obs-research .cat-name .obs-name{font-size:20px}
html.obs-research .cat-name .obs-code{font-size:16px;letter-spacing:0}

/* Fixed navigation reserves room for both naming layers from first paint. */
html.obs-research body.pn-common-shell{padding-top:88px}
html.obs-research body.pn-common-shell{margin-top:0!important;padding-top:88px!important}
html.obs-research body.pn-common-shell #pn-nav,html.obs-research body.pn-common-shell #site-nav{position:fixed!important;top:0;left:0;right:0;z-index:1000}
html.obs-research body.pn-common-shell #pn-nav,html.obs-research body.pn-common-shell #site-nav{height:88px;gap:clamp(16px,2.2vw,30px);padding-inline:max(22px,calc((100vw - 1160px)/2))}
html.obs-research #pn-nav a.obs-nav-link,html.obs-research #site-nav a.obs-nav-link{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:52px;letter-spacing:0!important}
html.obs-research #pn-nav .obs-name,html.obs-research #site-nav .obs-name{font:500 20px/1.4 var(--obs-serif);color:var(--obs-ink);white-space:nowrap}
html.obs-research #pn-nav .obs-code,html.obs-research #site-nav .obs-code{font-size:16px;line-height:1.4;letter-spacing:.08em;margin:3px 0 0}
html.obs-research #pn-nav .obs-code::before,html.obs-research #site-nav .obs-code::before{display:none}
html.obs-research .pn-footer-links a:has(.obs-name){min-height:48px;text-decoration:none}
html.obs-research .pn-footer-links .obs-name{font-size:16px}
html.obs-research .pn-footer-links .obs-code{font-size:16px}
html.obs-research .pn-footer-links .obs-code::before{display:none}
html.obs-research .portfolio-nav a:has(.obs-name){padding-block:8px;line-height:1.4;min-height:64px;white-space:normal}
html.obs-research .portfolio-nav .obs-name{font-size:16px;white-space:nowrap}
html.obs-research .portfolio-nav .obs-code{font-size:16px;margin-top:4px;letter-spacing:.03em;white-space:nowrap}
html.obs-research .portfolio-nav .obs-code::before{display:none}
html.obs-research .obs-portfolio-index{font:500 17px/1.4 var(--obs-serif);letter-spacing:.03em}
html.obs-research .obs-portfolio-index .obs-code{font-size:16px}

/* Record identity is derived from existing URL and publication metadata. */
.obs-record-band{margin:0 0 28px;padding:16px 0;border-top:1px solid var(--obs-line);border-bottom:1px solid var(--obs-line);display:flex;flex-wrap:wrap;gap:14px 30px;align-items:baseline;color:var(--obs-muted);font:400 16px/1.6 var(--obs-mono);letter-spacing:.025em}
.obs-record-band>span{display:block;max-width:100%;overflow-wrap:anywhere}
.obs-record-band b{font-weight:400;color:var(--obs-ink)}
.obs-record-band .obs-record-name{font:500 17px/1.4 var(--obs-serif);color:var(--obs-accent);flex-basis:100%}
html.obs-research body>.obs-record-band{width:min(1120px,calc(100% - 48px));margin:24px auto 28px}
html.obs-research .pn-article-tone .obs-record-band{font-family:var(--obs-mono)}
html.obs-research .obs-module-band{margin:22px 0;color:var(--obs-muted);font:400 16px/1.6 var(--obs-mono);display:flex;flex-wrap:wrap;gap:12px 24px;border-bottom:1px solid var(--obs-line);padding-bottom:15px}
.obs-module-band strong{font:500 18px/1.4 var(--obs-serif);color:var(--obs-ink)}
html.obs-research .pn-native-tool .obs-module-band{background:var(--obs-bg);padding:18px 20px;border-left:2px solid var(--obs-accent);color:var(--obs-muted)}

/* A real process, not a dashboard of invented measures. */
.obs-engine{margin:70px auto 80px;padding:52px 0;border-block:1px solid var(--obs-line);position:relative;color:var(--obs-ink)}
.obs-engine h2{font:500 clamp(28px,4vw,46px)/1.4 var(--obs-serif)!important;letter-spacing:.02em}
.obs-engine-intro{max-width:760px;margin:24px 0 34px!important;font:400 18px/1.85 var(--obs-sans)!important;color:#d7dad2!important}
.obs-process{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;margin:40px 0 0;padding:0;gap:0}
.obs-process li{position:relative;min-width:0;border-top:1px solid var(--obs-line);padding:25px 14px 20px 0;font:400 16px/1.6 var(--obs-sans)!important}
.obs-process li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border:1px solid var(--obs-accent);background:var(--obs-bg);border-radius:50%}
.obs-process .obs-name{font-size:20px;white-space:nowrap}
.obs-process .obs-code{font-size:16px;letter-spacing:.01em}
.obs-process .obs-code::before{display:none}
.obs-process li::after{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--obs-accent),transparent);transform:scaleX(0);transform-origin:left}
.obs-engine.is-active .obs-process li::before{animation:obs-node 12s linear infinite;animation-delay:calc(var(--step)*1.5s)}
.obs-engine.is-active .obs-process li::after{animation:obs-transfer 12s linear infinite;animation-delay:calc(var(--step)*1.5s)}
@keyframes obs-node{0%,14%{background:var(--obs-accent);box-shadow:0 0 12px #c8ff3d66}20%,100%{background:var(--obs-bg);box-shadow:none}}
@keyframes obs-transfer{0%{transform:scaleX(0)}12%,16%{transform:scaleX(1)}22%,100%{transform:scaleX(0)}}
.obs-criteria{border-left:2px solid var(--obs-accent);padding:8px 0 8px 26px;margin-top:38px;max-width:820px}
.obs-criteria h3{font:500 26px/1.4 var(--obs-serif)!important;margin:0}
.obs-criteria p{font:400 18px/1.85 var(--obs-sans)!important;margin:20px 0 0!important;color:#d7dad2!important}
.obs-engine-link{display:inline-block;margin-top:24px;border-bottom:1px solid var(--obs-line);padding-bottom:8px;text-decoration:none;font:500 20px/1.4 var(--obs-serif)}
.obs-engine-link:hover{border-color:var(--obs-accent);color:var(--obs-accent)}
.obs-engine-link .obs-code{font-size:16px}

/* First visit: a short, non-blocking status plate. Content is never hidden. */
.obs-boot{position:fixed;bottom:24px;left:24px;z-index:10010;pointer-events:none;width:min(390px,calc(100vw - 48px));padding:18px 20px;border-left:2px solid var(--obs-accent);background:#080a09ed;color:var(--obs-ink);font:400 16px/1.6 var(--obs-mono);letter-spacing:.035em;animation:obs-boot 1.1s both}
.obs-boot small{display:block;color:var(--obs-muted);font-size:16px;margin-bottom:8px}
.obs-boot::after{content:"";height:1px;background:var(--obs-accent);display:block;transform-origin:left;animation:obs-rule .9s linear both;margin-top:12px}
@keyframes obs-boot{0%{opacity:0;transform:translateY(6px)}10%,83%{opacity:1;transform:none}100%{opacity:0;transform:none}}

/* Domain links sit in the existing hero visual; signals are drawn behind them. */
html.obs-research .obs-field-host{isolation:isolate}
.obs-field-links{position:absolute;inset:0;z-index:2;pointer-events:none}
.obs-field-node{position:absolute;transform:translate(-50%,-50%);width:180px;max-width:42%;text-decoration:none;pointer-events:auto;text-align:left;padding:9px 12px;border-left:1px solid #778559;background:linear-gradient(90deg,#080a09ed,#080a09b0 80%,transparent);transition:border-color .25s}
.obs-field-node .obs-name{font:500 18px/1.35 var(--obs-serif);color:var(--obs-ink)}
.obs-field-node .obs-code{font:400 16px/1.45 var(--obs-mono);letter-spacing:.01em;margin-top:5px;color:#b7bdae}
.obs-field-node .obs-code::before{display:none}
.obs-field-node:hover,.obs-field-node:focus-visible{border-color:var(--obs-accent);outline:1px solid var(--obs-accent);outline-offset:3px}
.obs-field-node.is-transmitting{border-left-color:var(--obs-accent)}
.obs-field-node.is-transmitting .obs-name{color:#deefb2}
html.obs-research .orbit-controls:not(.is-ready){visibility:hidden}
html.obs-research .obs-field-host .metal-shade{pointer-events:none;z-index:1}
html.obs-research .obs-top .hero h1{font-size:clamp(46px,5.2vw,64px);line-height:1.15;letter-spacing:-.025em}
html.obs-research .obs-top .hero .eyebrow{font-size:16px;line-height:1.6;letter-spacing:.09em}
html.obs-research .direction-c .orbit-node{padding:8px 12px;min-height:64px;max-width:45%;white-space:normal}
html.obs-research .direction-c .orbit-node .orbit-label{font:500 17px/1.35 var(--obs-serif);white-space:nowrap}
html.obs-research .direction-c .orbit-node .orbit-code{display:block;font:400 16px/1.4 var(--obs-mono);letter-spacing:.01em;margin-top:4px;max-width:170px;color:#b5bfa6;pointer-events:none}
html.obs-research .direction-c .hero-index{font-size:16px}
html.obs-research .direction-c .field-band .obs-marquee-unit{display:inline-block;vertical-align:middle;font:500 30px/1.1 var(--obs-serif)}
html.obs-research .direction-c .field-band .obs-marquee-unit small{display:block;font:400 16px/1.5 var(--obs-mono);letter-spacing:.08em;margin-top:8px;color:var(--obs-muted)}

@media(max-width:1024px){
 html.obs-research body.pn-common-shell{padding-top:76px}
 html.obs-research body.pn-common-shell{padding-top:76px!important}
 html.obs-research body.pn-common-shell #pn-nav,html.obs-research body.pn-common-shell #site-nav{height:auto;min-height:76px;flex-wrap:wrap;gap:0;padding:0 20px;align-content:flex-start}
 html.obs-research body.pn-common-shell #pn-nav.is-menu-open,html.obs-research body.pn-common-shell #site-nav.is-menu-open{max-height:100dvh;overflow-y:auto!important}
 html.obs-research body.pn-common-shell .pn-menu-toggle{display:block;margin-left:auto;min-height:76px;border:0;background:none;color:var(--obs-ink);font:400 16px/1.4 var(--obs-mono);letter-spacing:.08em;cursor:pointer}
 html.obs-research #pn-nav .pn-home,html.obs-research #site-nav .site-home{min-height:76px;min-width:100px;margin-right:auto}
 html.obs-research body.pn-common-shell #pn-nav .pn-primary-link,html.obs-research body.pn-common-shell #site-nav .pn-primary-link,html.obs-research body.pn-common-shell #pn-nav .pn-lang-link,html.obs-research body.pn-common-shell #site-nav .pn-lang-link{display:none}
 html.obs-research body.pn-common-shell #pn-nav.is-menu-open .pn-primary-link,html.obs-research body.pn-common-shell #site-nav.is-menu-open .pn-primary-link{display:flex;width:100%;min-height:66px;border-top:1px solid var(--obs-line);margin:0}
 html.obs-research body.pn-common-shell #pn-nav.is-menu-open .pn-lang-link,html.obs-research body.pn-common-shell #site-nav.is-menu-open .pn-lang-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin:12px 0 20px}
 html.obs-research #pn-nav .obs-name,html.obs-research #site-nav .obs-name{font-size:20px}
 .obs-process{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 0}
 .obs-process .obs-code{font-size:16px}
}
@media(max-width:720px){
 .obs-record-band{gap:12px 20px;font-size:16px;margin-bottom:24px}
 .obs-engine{padding:38px 0;margin:48px auto}
 .obs-process{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;margin-top:28px}
 .obs-process .obs-name{font-size:20px}
 .obs-criteria{padding-left:20px}
 .obs-criteria h3{font-size:24px!important}
 .obs-sector::after{font-size:16px;top:8px;max-width:45%}
 .obs-sector .obs-code{max-width:100%}
 .obs-boot{bottom:14px;left:16px;width:calc(100vw - 32px);padding:14px 16px}
 .obs-field-node{width:156px;padding:7px 8px;max-width:43%}
 .obs-field-node .obs-name{font-size:16px}
 .obs-field-node .obs-code{font-size:16px;line-height:1.35}
 html.obs-research .obs-top .hero-visual{height:460px;min-height:460px}
 html.obs-research .obs-top .hero h1{font-size:46px}
 html.obs-research .direction-c .orbit-node .orbit-label{font-size:15px}
 html.obs-research .direction-c .orbit-node .orbit-code{font-size:16px}
 html.obs-research .direction-c .interactive-orbit{height:460px}
 html.obs-research .article-meta{max-width:100%;text-align:left}
 html.obs-research .article-meta .cat-badge{margin-left:0}
 html.obs-research .cat-name:has(.obs-name){min-width:0}
}
@media(prefers-reduced-motion:reduce){
 .obs-boot{display:none!important}
 .obs-process li::before,.obs-process li::after,.obs-sector .obs-code::before{animation:none!important}
 .obs-sector::after{transition:none}
 .obs-field-node{transition:none}
}
@media print{.obs-boot,.obs-field-links,.obs-sector::after{display:none!important}.obs-record-band{color:#333;border-color:#bbb}}

/* Portfolio navigation and its return path have their final size from first paint. */
.pn-site-return{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:48px;padding:0 18px;margin-left:16px;border-left:1px solid #43473e;color:#f4f1e9;font:500 16px/1.5 Arial,"Yu Gothic",sans-serif;text-decoration:none;white-space:nowrap}
.pn-site-return:hover{color:#c8ff3d}.pn-site-return:focus-visible{outline:2px solid #c8ff3d;outline-offset:-4px}
@media(max-width:1250px){
 .portfolio-header__inner,.masthead__inner{display:flex!important;flex-wrap:wrap!important;align-items:center!important;padding-right:16px!important}
 .portfolio-brand{order:0;flex:1 1 auto!important;min-width:0!important;font-size:16px!important;min-height:48px!important}
 .pn-site-return{order:1;margin-left:0;padding-right:0}
 .portfolio-nav{order:2;flex:1 0 100%!important;width:100%;overflow-x:auto}
 .portfolio-nav__scroller{justify-content:flex-start!important}
 .portfolio-nav a{font-size:16px!important}
}

/* Reserve node positions before scripts run and when scripts are disabled. */
.obs-field-node:nth-child(odd){left:62%}
.obs-field-node:nth-child(even){left:86%}
.obs-field-node:nth-child(-n+2){top:19%}
.obs-field-node:nth-child(n+3):nth-child(-n+4){top:50%}
.obs-field-node:nth-child(n+5){top:81%}
@media(max-width:719px){
 .obs-field-node:nth-child(odd){left:25%}
 .obs-field-node:nth-child(even){left:75%}
 .obs-field-node:nth-child(-n+2){top:16%}
 .obs-field-node:nth-child(n+3):nth-child(-n+4){top:48%}
 .obs-field-node:nth-child(n+5){top:80%}
}

/* Readable hierarchy: supporting labels carry information, not decoration. */
html.obs-research .obs-code{color:var(--obs-muted)}
html.obs-research #pn-nav .pn-lang-link,html.obs-research #site-nav .pn-lang-link{font-size:16px!important;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
html.obs-research .pn-footer-links .obs-name{font-size:18px}
html.obs-research .pn-footer p{font-size:16px!important}
html.obs-research .direction-c .hero-index{font-size:16px;line-height:1.5}
html.obs-research .direction-c .hero-index .obs-name{font-size:22px}
html.obs-research .direction-c .hero-index .obs-code{display:block;font-size:16px}
html.obs-research .direction-c .hero-index>span:last-child{max-width:46%;text-align:right}
html.obs-research .direction-c .hero .eyebrow{font-size:28px!important;line-height:1.4;letter-spacing:.065em;margin-bottom:16px}
html.obs-research .direction-c .hero-type{top:14%}
html.obs-research .direction-c .hero{height:min(880px,calc(100svh - 88px));min-height:760px}
html.obs-research body.direction-c.pn-common-shell .hero-thesis,
html.obs-research body.direction-c.pn-common-shell .body-text,
html.obs-research body.direction-c.pn-common-shell .strength-card p,
html.obs-research body.direction-c.pn-common-shell .ach-body p,
html.obs-research body.direction-c.pn-common-shell .cta-sub{font-size:22px;line-height:1.85;color:#e0e3dc}
html.obs-research body.direction-c.pn-common-shell .section>.section-label{font-size:42px;line-height:1.4}
html.obs-research body.direction-c.pn-common-shell .section-label .obs-code{font-size:18px!important;line-height:1.6;letter-spacing:.06em;margin-top:12px}
html.obs-research body.direction-c.pn-common-shell .cert-group-label{font-size:26px;line-height:1.5;font-weight:500;color:var(--obs-accent);letter-spacing:.04em;margin-bottom:20px}
html.obs-research body.direction-c.pn-common-shell .cert-group li{font-size:24px;line-height:1.75;color:#e0e3dc}
html.obs-research body.direction-c.pn-common-shell .skill-item,
html.obs-research body.direction-c.pn-common-shell .ind-tag{font-size:22px;line-height:1.8}
html.obs-research body.direction-c.pn-common-shell .ext-link-url,
html.obs-research body.direction-c.pn-common-shell .cta-label{font-size:18px;line-height:1.7;color:var(--obs-muted)}
html.obs-research body.direction-c.pn-common-shell .strength-card h3,
html.obs-research body.direction-c.pn-common-shell .ach-body strong,
html.obs-research body.direction-c.pn-common-shell .ext-link-label{font-size:28px;line-height:1.55}
html.obs-research .direction-c .orbit-node .orbit-label{font-size:20px}
html.obs-research .direction-c .orbit-node .orbit-code{font-size:16px;line-height:1.5;max-width:220px;color:#d2dac5}
html.obs-research .direction-c .field-band .obs-marquee-unit{font-size:34px}
html.obs-research .direction-c .field-band .obs-marquee-unit small{font-size:18px;line-height:1.5;letter-spacing:.04em;margin-top:12px}
.obs-field-node{width:210px}
.obs-field-node .obs-name{font-size:20px}
.obs-field-node .obs-code{color:#d2dac5}
@media(max-width:1024px){
 html.obs-research body.pn-common-shell #pn-nav,html.obs-research body.pn-common-shell #site-nav{min-height:76px!important}
 html.obs-research body.pn-common-shell #pn-nav .pn-home,html.obs-research body.pn-common-shell #site-nav .site-home{min-height:76px!important}
 html.obs-research body.pn-common-shell #pn-nav:not(.is-menu-open) .pn-lang-link,html.obs-research body.pn-common-shell #site-nav:not(.is-menu-open) .pn-lang-link{display:none}
}
@media(max-width:760px){
 html.obs-research .direction-c .hero{height:auto;min-height:0}
 html.obs-research .direction-c .hero-type{top:auto;margin-top:110px}
 html.obs-research .direction-c .hero .eyebrow{font-size:24px!important}
 html.obs-research .direction-c .interactive-orbit{height:550px}
 html.obs-research .direction-c .orbit-node{padding-inline:8px}
 html.obs-research .direction-c .orbit-node .orbit-label{font-size:18px}
 html.obs-research .direction-c .field-band .obs-marquee-unit small{font-size:16px}
 html.obs-research body.direction-c.pn-common-shell .hero-thesis,
 html.obs-research body.direction-c.pn-common-shell .body-text,
 html.obs-research body.direction-c.pn-common-shell .strength-card p,
 html.obs-research body.direction-c.pn-common-shell .ach-body p,
 html.obs-research body.direction-c.pn-common-shell .cta-sub,
 html.obs-research body.direction-c.pn-common-shell .skill-item,
 html.obs-research body.direction-c.pn-common-shell .ind-tag{font-size:20px}
 html.obs-research body.direction-c.pn-common-shell .section>.section-label{font-size:34px}
 html.obs-research body.direction-c.pn-common-shell .section-label .obs-code{font-size:16px!important}
 html.obs-research body.direction-c.pn-common-shell .cert-group li{font-size:22px}
 html.obs-research body.direction-c.pn-common-shell .cert-group-label{font-size:24px}
 html.obs-research body.direction-c.pn-common-shell .strength-card h3,
 html.obs-research body.direction-c.pn-common-shell .ach-body strong,
 html.obs-research body.direction-c.pn-common-shell .ext-link-label{font-size:26px}
 .obs-field-node{width:156px}
 .obs-field-node .obs-name{font-size:18px}
}

html.obs-research body.direction-c.pn-common-shell .hero-authorship{margin:22px 0 0;font-family:var(--obs-sans);font-size:18px;font-weight:400;line-height:1.85;color:var(--obs-muted);max-width:38em}

/* Keep document scrolling in the root; hidden-x on body creates a second vertical scroller. */
html.obs-research body.pn-common-shell{overflow-x:clip!important;overflow-y:visible!important}
/* Separate the interactive field from the following ticker without resizing its canvas. */
html.obs-research .direction-c .field-band{margin-top:112px}

/* The TOP hero copy sits above the canvas visually, but must not block its domain links. */
html.obs-research .obs-top .hero>.container{pointer-events:none}
html.obs-research .obs-top .obs-field-node{cursor:pointer;transition:border-color .25s,background-color .25s,color .25s,transform .18s ease}
html.obs-research .obs-top .obs-field-node:active{transform:translate(-50%,-50%) scale(.96);background:#182111f0}
html.obs-research .obs-top .obs-sector::after{display:none}

/* Profile desktop alignment: anchor navigation and the system label to the viewport composition. */
@media(min-width:1025px){
 html.obs-research body.direction-c.pn-common-shell #pn-nav,
 html.obs-research body.direction-c.pn-common-shell #site-nav{padding-inline:clamp(30px,4vw,72px)}
 html.obs-research body.direction-c.pn-common-shell #pn-nav .pn-home,
 html.obs-research body.direction-c.pn-common-shell #site-nav .site-home{margin-right:auto}
}
@media(min-width:761px){
 html.obs-research .direction-c .hero-index>span:last-child{
  position:absolute;left:72%;width:max-content;max-width:none;transform:translateX(-50%);text-align:center;white-space:nowrap
 }
}
