/* Reworked from Endfield Industries; source attribution retained. */
:root{--paper:#f3f3ed;--white:#fff;--ink:#202d27;--muted:#68736b;--line:#d7ddd3;--green:#244b3d;--lime:#d3e8ab;--serif:'Songti SC','STSong','SimSun',serif;--sans:'PingFang SC','Microsoft YaHei',system-ui,sans-serif;--mono:'SFMono-Regular',Consolas,monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.8 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer;color:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{border:0;border-radius:0;background:none}
button:disabled{cursor:default}
img{display:block;max-width:100%}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500;line-height:1.4}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #719e59;outline-offset:5px}
[hidden]{display:none!important}
::selection{background:var(--lime);color:var(--green)}
.skip-link{position:fixed;left:20px;top:-80px;background:var(--green);color:white;padding:12px;z-index:100}
.skip-link:focus{top:8px}
.container{max-width:1384px;width:calc(100% - 128px);margin:auto}
.utility-bar{height:32px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;font:9px/1 var(--mono);letter-spacing:1.2px;background:#e7eae1;color:#5c6e60}
.utility-bar b{color:#9ba890;margin:0 10px}
.utility-bar>span:nth-child(2){font:10px var(--sans);letter-spacing:2px}
.utility-bar a{font:10px var(--sans);letter-spacing:1px}
.site-nav{height:92px;display:flex;align-items:center;gap:34px;justify-content:space-between;background:rgba(247,248,241,.97);padding:0 36px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}
.nav-brand{display:flex;align-items:center;gap:12px;flex:none}
.nav-menu{display:flex;align-self:stretch;gap:29px;align-items:center;margin-left:auto}
.nav-menu a{position:relative;font-size:13px;letter-spacing:1px;white-space:nowrap}
.nav-menu a:after{content:'';position:absolute;height:3px;background:var(--green);bottom:-34px;left:0;width:0;transition:width .2s}
.nav-menu a:hover:after,.nav-menu a[aria-current]:after{width:100%}
.nav-menu a[aria-current]{font-weight:600}
.nav-archive{display:flex;align-items:center;gap:10px;padding:11px 17px;border:1px solid #acbba6;font-size:11px;white-space:nowrap}
.nav-archive:hover{background:var(--lime)}
#nav-hamburger{display:none;width:36px;height:40px;padding:6px}
#nav-hamburger span{display:block;height:1px;background:var(--ink);margin:7px 0}
#nav-drawer{position:fixed;z-index:29;top:92px;left:0;right:0;background:var(--paper);padding:22px;border-bottom:1px solid var(--line)}
#nav-drawer a{display:block;padding:12px;border-bottom:1px solid var(--line)}
.hero{position:relative;min-height:610px;height:calc(100svh - 186px);max-height:820px;color:#fff;isolation:isolate;background:#394b41;overflow:hidden}
.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-3;filter:saturate(.72);transition:opacity .25s}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,32,24,.79),rgba(18,35,26,.35) 42%,rgba(15,32,24,.04) 78%),linear-gradient(0deg,rgba(13,27,20,.7),transparent 45%)}
.hero-grid{position:absolute;inset:24px 25px;z-index:-1;border:1px solid #fff2;pointer-events:none}
.hero-grid:before,.hero-grid:after{content:'+';position:absolute;font:24px var(--mono);color:#c9e2c9;left:-8px;top:-16px}
.hero-grid:after{left:auto;top:auto;right:-8px;bottom:-16px}
.hero-content{max-width:1384px;width:calc(100% - 128px);margin:0 auto;padding-top:66px}
.hero-kicker{font:9px/1.6 var(--mono);letter-spacing:1.7px;display:flex;gap:12px;align-items:center;color:#e0e8d7}
.hero-kicker i{width:5px;height:5px;background:var(--lime);display:inline-block}
.hero-kicker span{color:#c1d3ac}
.hero h1{font:500 clamp(58px,5.25vw,88px)/1.35 var(--serif);letter-spacing:6px;margin:28px 0 20px}
.hero-copy{font-size:15px;letter-spacing:3px;color:#edf3e8}
.hero-actions{display:flex;gap:30px;align-items:center;margin-top:35px}
.btn-primary,.btn-dark{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:48px;padding:12px 22px;background:var(--lime);color:var(--green);font-size:12px;letter-spacing:1px;border:1px solid transparent;transition:background .2s,transform .2s}
.btn-primary:hover{background:#e7f2ce;transform:translateY(-2px)}
.btn-primary>span:last-child{font:22px/1 var(--sans)}
.btn-dark{background:var(--green);color:white}
.btn-dark:hover{background:#35604e}
.video-link{display:flex;align-items:center;gap:12px;font-size:10px;color:white;letter-spacing:1px;text-align:left}
.video-link small{display:block;font:7px/1.8 var(--mono);color:#d8e1d5;letter-spacing:1.5px}
.play-icon{border:1px solid #cadaca80;border-radius:50%;width:37px;height:37px;display:grid;place-content:center;font-size:17px}
.video-link:hover .play-icon{background:#ffffff25}
.hero-side{position:absolute;right:11px;top:98px;writing-mode:vertical-rl;font:8px/1 var(--mono);letter-spacing:3px;color:#e1e9da}
.hero-caption{position:absolute;right:66px;bottom:108px;display:flex;gap:12px;align-items:center}
.cross{font:38px var(--mono);color:var(--lime)}
.hero-caption p{font-size:11px;letter-spacing:2px}
.hero-caption b{font:8px/2 var(--mono);letter-spacing:1.5px;font-weight:400}
.hero-image-label{display:none}
.hero-bottom{position:absolute;bottom:0;left:64px;right:64px;min-height:76px;border-top:1px solid #c8dbbd65;display:flex;align-items:center;gap:30px}
.scroll-cue{font-size:14px;line-height:1.4;letter-spacing:2px;display:flex;align-items:center;gap:24px;margin-right:auto}
.scroll-arrow{display:flex;align-items:center;width:24px;height:32px;color:var(--lime);flex:none}
.scroll-arrow svg{display:block;width:24px;height:32px}
.scroll-label{display:block}
.hero-slides{display:flex;gap:36px;height:76px}
.hero-slides>button{position:relative;color:#c5d0c2;font-size:10px;letter-spacing:1px;display:flex;align-items:center;gap:12px;padding:0}
.hero-slides>button b{font:11px var(--mono)}
.hero-slides>button:before{position:absolute;content:'';height:3px;background:var(--lime);top:-2px;left:0;width:100%;transform:scaleX(0);transform-origin:left center}
.hero-slides>button.active:before{transform:scaleX(var(--hero-progress,0))}
.hero-slides>button.active{color:white}
.research-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:0 64px;background:#e9ede3;border-bottom:1px solid var(--line)}
.research-strip a{padding:22px 28px;border-right:1px solid var(--line);transition:background .2s}
.research-strip a:first-child{padding-left:0}
.research-strip a:last-child{padding-right:0;border:0}
.research-strip small{display:block;font:7px/1.6 var(--mono);color:#75836e;letter-spacing:1px;margin-bottom:8px}
.research-strip span{font-size:15px;display:flex;justify-content:space-between;align-items:center}
.research-strip b{font-size:19px;font-weight:400;color:#5d7357}
.research-strip a:hover{background:#e0e8d7}
.section{padding:90px 0}
.section-title-block{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:42px;gap:24px}
.eyebrow{font:9px/1.6 var(--mono);letter-spacing:1.6px;color:#69805e;margin-bottom:16px}
.eyebrow>span{margin-right:8px;color:#344c2c}
.section-title-block h2{font:500 38px/1.4 var(--serif);letter-spacing:2px}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:11px;border-bottom:1px solid #83957b;padding:7px 0;white-space:nowrap}
.text-link>span{font-size:21px;font-weight:400;line-height:1}
.text-link:hover{color:#5b7d3a;border-color:#5b7d3a}
.about-section{background:#f6f6f0}
.about-layout{display:grid;grid-template-columns:1.06fr 1fr;gap:90px;align-items:center}
.about-content h3{font:500 35px/1.55 var(--serif);letter-spacing:2px;margin-bottom:25px}
.about-content p{max-width:490px;color:#677367;font-size:12px;line-height:2.1;margin-bottom:13px}
.about-content>p:first-of-type{font-size:15px;color:#314932;margin-bottom:20px}
.underlined-link{display:inline-block;padding:9px 0 3px;border-bottom:1px solid #9ba88e;font-size:10px;line-height:1.8}
.underlined-link:hover{color:#537f43}
.academy-identity{position:relative;background:#122318;overflow:hidden;aspect-ratio:1.42}
.academy-identity img{width:100%;height:100%;object-fit:cover;opacity:.9}
.academy-identity:after{content:'';position:absolute;inset:20px;border:1px solid #bfd5b127;pointer-events:none}
.academy-identity figcaption{position:absolute;left:32px;right:32px;bottom:26px;color:#d0dbbf;display:flex;align-items:end;justify-content:space-between}
.academy-identity figcaption>span:first-child{font:10px var(--mono);letter-spacing:4px}
.academy-identity figcaption>span:last-child{font-size:10px;line-height:1.8;letter-spacing:2px;text-align:right}
.about-principles{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-principles>div{padding:24px 30px;position:relative;border-right:1px solid var(--line)}
.about-principles>div:first-child{padding-left:0}
.about-principles>div:last-child{border:0}
.about-principles span{font-size:10px;color:#7b8a70;margin-right:20px;vertical-align:top}
.about-principles strong{font:500 24px var(--serif);letter-spacing:2px}
.about-principles small{display:block;font:7px var(--mono);color:#85927f;letter-spacing:1px;margin-top:10px}
.research-section{background:#e9ede4}
.research-showcase{display:grid;grid-template-columns:320px 1fr;min-height:480px;border:1px solid #c8d0c2}
.research-sidebar{padding:0 28px;display:flex;flex-direction:column;background:#f4f5ee}
.research-tabs{display:flex;flex-direction:column}
.research-tabs button{min-height:72px;display:flex;align-items:center;gap:17px;text-align:left;border-bottom:1px solid #d5ddce;padding:0 4px;font-size:15px}
.research-tabs button span{font:9px var(--mono);color:#819376}
.research-tabs button b{font-size:20px;font-weight:400;margin-left:auto;opacity:0}
.research-tabs button[aria-selected=true]{color:var(--green);font-weight:600}
.research-tabs button[aria-selected=true] b{opacity:1}
.research-tabs button[aria-selected=true] span{color:#3c6635}
.research-tabs button:hover{color:#537f43}
.research-tab-note{padding:34px 3px 25px;margin-top:auto}
.research-tab-note>span:first-child{font:7px var(--mono);letter-spacing:2px;color:#8b9a7d}
.research-tab-note p{font-size:11px;line-height:1.9;margin:12px 0;color:#718066}
.tiny-crosses{font:11px var(--mono);letter-spacing:9px;color:#8b9a7d}
.research-panel{position:relative;min-height:480px;background:#253b2b;isolation:isolate;color:white;overflow:hidden}
.research-panel>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:-3}
.research-panel-shade{position:absolute;inset:0;background:linear-gradient(0deg,#112b22e8,transparent 85%);z-index:-1}
.image-code{position:absolute;top:25px;left:29px;font:8px var(--mono);letter-spacing:2px;color:#e5f0d7}
.research-panel-content{position:absolute;bottom:38px;left:38px;right:38px}
.research-panel .eyebrow{color:#d1e2bd;font-size:8px;margin-bottom:10px}
.research-panel h3{font:500 33px var(--serif);letter-spacing:3px;margin-bottom:14px}
.research-panel-content>p:not(.eyebrow){font-size:11px;line-height:1.9;max-width:440px;color:#e7eddf}
.light-link{display:flex;align-items:center;gap:35px;padding:0 0 5px;margin-top:20px;border-bottom:1px solid #c3d5ad8c;font-size:10px;color:white}
.light-link span{font-size:20px}
.wuling-section{height:565px;position:relative;background:#314c3a;color:white;isolation:isolate;overflow:hidden}
.wuling-image{width:100%;height:100%;object-fit:cover;object-position:50% 55%;position:absolute;z-index:-3}
.wuling-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0c241ad9,transparent 80%),linear-gradient(0deg,#13271e55,transparent 65%);z-index:-2}
.wuling-content{width:calc(100% - 128px);max-width:1384px;margin:auto;padding-top:84px}
.wuling-content .eyebrow{color:#d5e4c8}
.wuling-content h2{font:500 48px/1.5 var(--serif);letter-spacing:3px;margin:25px 0 20px}
.wuling-content>p:not(.eyebrow){font-size:12px;line-height:2;color:#e4ecdf}
.wuling-content .btn-primary{margin-top:30px}
.wuling-coordinate{position:absolute;right:64px;bottom:42px;font:8px/1.8 var(--mono);letter-spacing:2px;text-align:right}
.news-section{background:#f6f6ef}
.news-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:55px}
.feature-film{min-height:400px;position:relative;isolation:isolate;overflow:hidden;padding:0;text-align:left;color:white;background:#203626}
.feature-film:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#15251ced,transparent 80%)}
.feature-film>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s}
.feature-film:hover>img{transform:scale(1.03)}
.film-play{width:55px;height:55px;display:grid;place-content:center;border:1px solid #ffffff7a;border-radius:50%;position:absolute;top:28px;right:28px;font-size:25px}
.film-caption{position:absolute;bottom:30px;left:32px;right:32px}
.film-caption small{display:block;font:8px var(--mono);letter-spacing:1.5px;color:#c9d7c2}
.film-caption strong{display:block;font:500 29px var(--serif);letter-spacing:2px;margin:12px 0}
.film-caption>span{font-size:10px;color:#d2dfca}
.news-list{display:flex;flex-direction:column}
.news-item{text-align:left;padding:19px 0 21px;border-bottom:1px solid var(--line);flex:1}
.news-item:first-child{padding-top:0}
.news-item:hover h3{color:#648443}
.news-meta{display:flex;justify-content:space-between;font-size:10px;color:#69805e}
.news-meta b{font:7px var(--mono);letter-spacing:1px;color:#8b9784}
.news-item h3{font-size:17px;line-height:1.7;margin:11px 0 14px;font-weight:500;transition:color .2s}
.news-bottom{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#87927d}
.news-bottom b{font-size:20px;font-weight:400;color:#3f5b36}
.people-feature{background:#dce3d4;border-top:1px solid #c6d1bc;overflow:hidden}
.people-inner{display:grid;grid-template-columns:1fr 1fr;min-height:450px}
.people-text{padding:70px 0 62px}
.people-text h2{font:500 37px/1.65 var(--serif);letter-spacing:2px;margin:24px 0}
.people-text>p:not(.eyebrow){font-size:12px;color:#76816c;line-height:2}
.people-text .text-link{margin-top:25px}
.featured-person{position:relative;isolation:isolate;min-height:450px;overflow:hidden}
.featured-person img{position:absolute;height:445px;width:auto;max-width:none;bottom:0;left:10%;filter:saturate(.75)}
.portrait-type{position:absolute;font:210px var(--serif);color:#c1cdb5;top:15px;left:0;z-index:-2;letter-spacing:-20px}
.person-caption{position:absolute;bottom:30px;right:0;background:#e9eee1e8;padding:18px 26px;border-left:2px solid #547545}
.person-caption small{font:6px var(--mono);letter-spacing:1px;color:#7e9072}
.person-caption h3{font:500 29px var(--serif);letter-spacing:4px;margin:8px 0}
.person-caption p{font-size:9px;color:#6a7d5e;line-height:1.9}
.join-banner{display:flex;align-items:center;justify-content:space-between;padding:50px 64px;background:#cde1ae;border-top:1px solid #bbcea0;gap:30px}
.join-banner .eyebrow{font-size:8px;margin-bottom:10px}
.join-banner h2{font:500 32px var(--serif);letter-spacing:2px}
.join-banner p:last-child{font-size:11px;color:#61744b;margin-top:12px}
.join-action{height:76px;width:76px;display:grid;place-content:center;border:1px solid #809467;color:var(--green);transition:background .2s}
.join-action:hover{background:#e1edcf}
.site-footer{padding:45px 36px 24px;background:#f5f5ee}
.footer-top{display:flex;align-items:center;gap:40px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:34px}
.footer-links{display:flex;gap:30px;margin-left:auto;font-size:10px;color:#6c7c61}
.footer-links a:hover{color:#203d1f}
.back-top{display:grid;place-content:center;width:35px;height:35px;border:1px solid #b6c2ab;font-size:22px}
.footer-bottom{display:flex;justify-content:space-between;margin-top:22px;gap:25px}
.footer-bottom p{font-size:8px;color:#929b88}
.footer-bottom>span{font:7px/1.8 var(--mono);letter-spacing:1px;color:#8d9a80;white-space:nowrap}
.page-intro{padding-top:65px;padding-bottom:52px;border-bottom:1px solid var(--line)}
.page-intro h1{font:500 52px/1.5 var(--serif);letter-spacing:3px;margin-bottom:18px}
.page-intro>p:last-child{font-size:13px;color:#7b8772;max-width:700px}
.section.compact{padding-top:38px}
.filter-bar{display:flex;gap:12px;border-bottom:1px solid var(--line);margin-bottom:38px;flex-wrap:wrap}
.filter-bar button{font-size:12px;padding:12px 18px;border-bottom:3px solid transparent}
.filter-bar button.active{background:#e5ebdb;border-bottom-color:var(--green)}
.filter-bar span{font:8px var(--mono);margin-left:14px}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 36px}
.project-image{padding:0;width:100%;aspect-ratio:1.8;position:relative;overflow:hidden;background:#dce5d0;text-align:left}
.project-image img{height:100%;width:100%;object-fit:cover;transition:transform .4s}
.project-image:hover img{transform:scale(1.035)}
.project-image span{position:absolute;top:15px;left:15px;padding:3px 9px;font:8px/1.8 var(--mono);letter-spacing:1px;background:#eef3e2df}
.project-image>b{position:absolute;bottom:0;right:0;display:grid;place-content:center;width:44px;height:44px;background:var(--lime);font-size:24px;font-weight:400}
.project-card>.eyebrow{margin-top:23px;margin-bottom:6px;font-size:8px}
.project-card h2{font:500 29px var(--serif);letter-spacing:2px;margin-bottom:12px}
.project-card>p:not(.eyebrow){font-size:12px;color:#7b8772;max-width:500px;margin-bottom:13px}
.project-card{scroll-margin-top:120px}
.content-note{border-top:1px solid var(--line);padding-top:22px;margin-top:40px;font-size:10px;color:#8a9581}
.research-callout{padding:42px 0 70px}
.research-callout h2{font:500 29px var(--serif);margin-bottom:15px}
.research-callout>p:not(.eyebrow){font-size:12px;color:#75866a;margin-bottom:24px}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px}
.person-card{display:grid;grid-template-columns:.85fr 1fr;border:1px solid #cbd5c1;min-height:340px}
.person-image{position:relative;overflow:hidden;background:#dce6d1;min-height:330px;isolation:isolate}
.person-image>span{position:absolute;top:20px;left:15px;writing-mode:vertical-rl;font:10px var(--mono);letter-spacing:3px;color:#788f65;z-index:2}
.person-image img{height:100%;width:100%;object-fit:cover;object-position:48% center;position:absolute;bottom:0;left:0}
.person-info{padding:30px 25px}
.person-info .eyebrow{font:8px/1.7 var(--sans);letter-spacing:1px;margin-bottom:14px}
.person-info h2{font:500 32px var(--serif);letter-spacing:3px;margin-bottom:15px}
.person-info>p:not(.eyebrow){font-size:11px;color:#728367;margin-bottom:16px}
.person-info .person-tag{font-size:9px;color:#8b9b80}
.notice-box{padding:20px 26px;background:#e5ecda;display:flex;gap:36px;align-items:center;border-left:2px solid #819d62;margin-bottom:34px}
.notice-box>span{font:8px var(--mono);letter-spacing:1.5px;white-space:nowrap;color:#667d50}
.notice-box p{font-size:11px;color:#748366;line-height:1.9}
.job-item{border-top:1px solid var(--line)}
.job-item:last-child{border-bottom:1px solid var(--line)}
.job-item summary{display:flex;list-style:none;align-items:center;gap:28px;padding:25px 10px;cursor:pointer}
.job-item summary::-webkit-details-marker{display:none}
.job-number{font:12px var(--mono);color:#839674}
.job-item summary small{display:block;font-size:9px;color:#8a9b7a;margin-bottom:4px}
.job-item summary strong{font-size:20px;font-weight:400;letter-spacing:1px}
.job-item summary>b{margin-left:auto;font:28px var(--mono);font-weight:400;color:#6f895b}
.job-item[open] summary>b{transform:rotate(45deg)}
.job-body{padding:0 65px 30px;max-width:800px}
.job-body p{font-size:12px;color:#78886c;line-height:2;margin-bottom:20px}
.job-body h3{font-size:12px;margin-bottom:10px}
.interest-form{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#e9eede;padding:48px;margin-top:65px}
.interest-form h2{font:500 28px var(--serif);letter-spacing:2px;margin:16px 0 20px}
.interest-form>div>p:not(.eyebrow){font-size:11px;color:#829273;line-height:2}
.form-fields{display:flex;flex-direction:column;gap:10px}
.form-fields label{font-size:11px}
.form-fields label>span{font-size:8px;color:#8c9b7e;float:right}
.form-fields input,.form-fields textarea,.form-fields select{border:1px solid #bfceb2;background:#f7f8f1;padding:11px 13px;width:100%;font-size:12px;outline-offset:2px;color:var(--ink);border-radius:0}
.form-fields input,.form-fields select{margin-bottom:9px}
.form-fields textarea{resize:vertical;min-height:110px}
.form-fields>.btn-primary{margin-top:8px;border:1px solid #b2c49d}
.form-status{font-size:10px;min-height:20px;color:#4e7138}
.archive-search{max-width:820px;margin:0 auto 38px}
.archive-search label{display:block;font:9px var(--sans);color:#86957a;letter-spacing:2px;margin-bottom:12px}
.archive-search>div{display:flex;border-bottom:1px solid #869d71}
.archive-search input{flex:1;min-width:0;padding:15px 10px;background:none;border:0;font-size:17px;line-height:1.8}
.archive-search button{font-size:13px;padding:15px;color:var(--green)}
.archive-toolbar{display:flex;justify-content:space-between;font-size:10px;color:#839375;margin-bottom:18px}
.archive-toolbar button{font-size:10px}
.archive-row{padding:28px 15px;width:100%;display:flex;gap:38px;align-items:center;text-align:left;border-top:1px solid var(--line);transition:background .2s}
.archive-row:last-child{border-bottom:1px solid var(--line)}
.archive-row:hover{background:#e9efde}
.archive-code{font:10px var(--mono);color:#8e9e80}
.archive-row>span:nth-child(2){display:block}
.archive-row small{font:8px var(--mono);letter-spacing:1px;color:#8c9c7d;display:block;margin-bottom:6px}
.archive-row strong{display:block;font:500 24px var(--serif);letter-spacing:1px;margin-bottom:9px}
.archive-row>span:nth-child(2)>span{font-size:11px;color:#7b8c6b}
.archive-row>b{font-size:28px;font-weight:400;margin-left:auto;flex:none}
.empty-state{text-align:center;padding:70px 0 90px;border:1px solid var(--line)}
.empty-state>span{font-size:55px;color:#8ba475}
.empty-state h2{font:24px var(--serif);margin:18px 0}
.empty-state p{font-size:12px;color:#839375}
.sources-content{max-width:1000px}
.sources-content>h2{font:500 27px var(--serif);letter-spacing:1px;margin-top:45px;margin-bottom:22px}
.source-intro{max-width:850px}
.source-intro h2{font:500 27px var(--serif);margin-bottom:20px;letter-spacing:1px}
.source-intro p{font-size:12px;color:#7d8d6e;line-height:2.2;margin-bottom:20px}
.source-intro:last-child{margin-top:55px}
.source-list>a{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px solid var(--line)}
.source-list>a:last-child{border-bottom:1px solid var(--line)}
.source-list small{display:block;font-size:9px;color:#8d9b7e;margin-bottom:6px}
.source-list strong{font-size:14px;font-weight:400}
.source-list b{font-size:24px;font-weight:400}
.source-list>a:hover{color:#658a4d}
#detail-dialog{padding:0;border:1px solid #a6b499;max-width:840px;width:calc(100% - 40px);max-height:88svh;color:var(--ink);background:var(--paper);overflow:auto}
#detail-dialog::backdrop{background:#0c1f18b8;backdrop-filter:blur(5px)}
.dialog-close{position:absolute;top:15px;right:15px;width:38px;height:38px;background:#eef3e4;color:#34492d;font-size:26px;line-height:1;z-index:3;border:1px solid #aabb99}
.dialog-image{width:100%;height:280px;object-fit:cover}
.dialog-body{padding:35px 45px}
.dialog-body .eyebrow{font-size:8px}
.dialog-body h2{font:500 34px var(--serif);letter-spacing:2px;margin-bottom:22px}
.dialog-body>p:not(.eyebrow){font-size:13px;line-height:2;color:#6d7f5f;margin-bottom:18px}
.dialog-source{display:block;border-top:1px solid var(--line);margin-top:27px;padding-top:20px;font-size:10px;color:#789165}
.dialog-actions{display:flex;gap:25px;flex-wrap:wrap;margin-top:25px}
.bookmark-button{padding:9px 14px;border:1px solid #aabc9a;color:#5f7e47;font-size:10px}
.bookmark-button[aria-pressed=true]{background:#d5e7be}
.dialog-film{width:100%;aspect-ratio:16/9;border:0;background:#16251b}
.dialog-film iframe{display:block;width:100%;height:100%;border:0}
.video-note{font-size:10px;color:#8a9b7a}
#toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,10px);background:#234b3e;color:#edf4e4;padding:10px 22px;font-size:11px;z-index:60;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100% - 32px);text-align:center}
#toast.visible{opacity:1;transform:translate(-50%,0)}
.in-view{animation:pageIn .6s ease both}
@keyframes pageIn{from{opacity:.4;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1700px){
  .hero-content{padding-top:100px}
  .hero h1{font-size:94px}
  .hero-copy{font-size:18px}
  .hero-actions{margin-top:45px}
  .hero-bottom{left:max(64px,calc((100vw - 1384px)/2));right:max(64px,calc((100vw - 1384px)/2))}
}
@media(max-width:1200px){
  .container,.hero-content,.wuling-content{width:calc(100% - 80px)}
  .site-nav{gap:20px;padding:0 26px}
  .nav-menu{gap:20px}
  .nav-archive{padding:9px 12px;font-size:10px}
  .nav-menu a{font-size:11px}
  .research-strip{padding:0 40px}
  .research-strip a{padding:20px}
  .research-strip small{font-size:6px;letter-spacing:.5px}
  .hero-bottom{left:40px;right:40px}
  .hero-caption{right:44px}
  .about-layout{gap:50px}
  .research-showcase{grid-template-columns:265px 1fr}
  .news-layout{gap:35px}
  .team-grid{gap:24px}
  .person-card{grid-template-columns:.8fr 1fr}
  .person-info{padding:24px 20px}
  .person-info h2{font-size:27px}
  .interest-form{padding:35px;gap:45px}
  .hero-slides{gap:24px}
}
@media(max-width:960px){
  .nav-menu{display:none}
  .nav-archive{margin-left:auto}
  .site-nav{height:76px}
  .utility-bar{padding:0 26px}
  .hero{min-height:600px;height:650px}
  .hero-content{padding-top:65px}
  .hero h1{font-size:70px}
  .hero-slides{gap:25px}
  .scroll-cue{gap:14px}
  .hero-caption{bottom:100px}
  .about-layout{gap:34px}
  .about-content h3{font-size:30px}
  .academy-identity{aspect-ratio:1.1}
  .academy-identity img{object-position:center}
  .about-principles>div{padding:24px 20px}
  .about-principles strong{font-size:21px}
  .about-principles span{margin-right:12px}
  .research-showcase{grid-template-columns:230px 1fr}
  .research-sidebar{padding:0 20px}
  .research-tabs button{font-size:13px}
  .research-panel-content{left:26px;right:26px}
  .research-panel{min-height:460px}
  .news-layout{gap:30px}
  .feature-film{min-height:420px}
  .news-item h3{font-size:15px}
  .news-meta b{font-size:6px}
  .people-text h2{font-size:30px}
  .featured-person img{left:0}
  .person-caption{right:0;padding:15px 20px}
  .footer-top{flex-wrap:wrap}
  .footer-links{order:3;width:100%;margin-left:0}
  .back-top{margin-left:auto}
  .footer-bottom{flex-direction:column}
  .team-grid{grid-template-columns:1fr}
  .person-card{grid-template-columns:.7fr 1fr;min-height:300px}
  .person-image{min-height:300px}
  .person-image img{object-fit:contain;object-position:bottom}
  .person-info{padding:35px}
  .person-info .eyebrow{font-size:10px}
  .person-info>p:not(.eyebrow){font-size:12px}
  .notice-box{align-items:start;gap:20px}
  .interest-form{grid-template-columns:1fr;gap:35px}
  #nav-hamburger{display:block}
  #nav-drawer{top:76px}
  .wuling-coordinate{right:40px}
}
@media(max-width:640px){
  html{scroll-padding-top:70px}
  .container,.hero-content,.wuling-content{width:calc(100% - 40px)}
  .utility-bar{height:27px;padding:0 18px;font-size:7px;letter-spacing:.6px}
  .utility-bar>span:nth-child(2){display:none}
  .site-nav{height:73px;padding:0 18px;gap:12px}
  .nav-brand{gap:8px}
  .nav-archive{font-size:0;padding:5px 8px;gap:0;border:0}
  .nav-archive>span:last-child{display:none}
  #nav-hamburger{width:28px;padding:3px}
  #nav-drawer{top:73px}
  .hero{min-height:590px;height:calc(90svh - 100px);max-height:740px}
  .hero-image{object-position:56% center}
  .hero-shade{background:linear-gradient(90deg,#10241ac7,#17322755 75%),linear-gradient(0deg,#0b241acc,transparent 60%)}
  .hero-grid{inset:17px 13px}
  .hero-content{padding-top:48px}
  .hero-kicker{font-size:7px;letter-spacing:.8px;gap:8px;flex-wrap:wrap}
  .hero-kicker>span{display:none}
  .hero h1{font-size:61px;line-height:1.45;letter-spacing:4px;margin:34px 0 18px}
  .hero-copy{font-size:11px;letter-spacing:1.5px}
  .hero-actions{gap:22px;margin-top:29px;align-items:center}
  .btn-primary{font-size:11px;min-height:45px;padding:11px 17px;gap:20px}
  .hero-actions .btn-primary{gap:28px}
  .hero-actions .video-link{gap:9px;font-size:8px;letter-spacing:.3px}
  .video-link small{font-size:6px;letter-spacing:1px}
  .play-icon{height:31px;width:31px;font-size:15px}
  .hero-side{right:5px;top:85px;font-size:6px;letter-spacing:2px}
  .hero-caption{right:23px;left:23px;bottom:100px;gap:9px}
  .hero-caption p{font-size:8px;line-height:1.8;letter-spacing:1px}
  .hero-caption b{font-size:6px;letter-spacing:.5px}
  .hero-caption .cross{font-size:27px}
  .hero-image-label{display:block;margin-left:auto;font-size:7px;letter-spacing:1px;color:#d0dec6}
  .hero-bottom{left:20px;right:20px;min-height:69px;gap:0;justify-content:space-between}
  .scroll-cue{display:none}
  .hero-slides{height:69px;gap:20px}
  .hero-slides>button{font-size:8px;gap:6px;letter-spacing:.3px}
  .hero-slides>button b{font-size:8px}
  .research-strip{grid-template-columns:repeat(2,1fr);padding:0 20px}
  .research-strip a{padding:19px 15px}
  .research-strip a:nth-child(2){border:0;padding-right:0}
  .research-strip a:nth-child(n+3){border-top:1px solid var(--line)}
  .research-strip a:nth-child(3){padding-left:0}
  .research-strip small{font-size:5px;letter-spacing:.4px;margin-bottom:6px}
  .research-strip span{font-size:13px}
  .research-strip b{font-size:16px}
  .section{padding:58px 0}
  .section-title-block{margin-bottom:28px;gap:16px}
  .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:13px}
  .section-title-block h2{font-size:28px;letter-spacing:1px}
  .section-title-block .text-link{font-size:8px;gap:10px;padding:4px 0}
  .text-link>span{font-size:18px}
  .about-layout{grid-template-columns:1fr;gap:28px}
  .about-content h3{font-size:31px;margin-bottom:20px;line-height:1.6}
  .about-content p{font-size:11px}
  .about-content>p:first-of-type{font-size:13px}
  .academy-identity{aspect-ratio:1.6}
  .academy-identity figcaption{left:25px;right:25px;bottom:18px}
  .academy-identity figcaption>span:first-child{font-size:8px;letter-spacing:3px}
  .academy-identity figcaption>span:last-child{font-size:8px}
  .about-principles{margin-top:30px}
  .about-principles>div{padding:18px 10px}
  .about-principles span{font-size:8px;display:block;margin-bottom:7px}
  .about-principles strong{font-size:16px;letter-spacing:1px}
  .about-principles small{font-size:5px;letter-spacing:.2px;line-height:1.8;max-width:95px;margin-top:8px}
  .research-showcase{grid-template-columns:1fr}
  .research-sidebar{padding:0 14px}
  .research-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:0 16px}
  .research-tabs button{min-height:58px;font-size:11px;gap:9px}
  .research-tabs button span{font-size:8px}
  .research-tabs button b{font-size:17px}
  .research-tabs button:nth-child(n+3){border:0}
  .research-tab-note{display:none}
  .research-panel{min-height:385px}
  .research-panel-content{bottom:27px;left:24px;right:24px}
  .research-panel h3{font-size:29px}
  .research-panel-content>p:not(.eyebrow){font-size:10px}
  .image-code{font-size:7px;top:23px;left:24px;letter-spacing:1px}
  .research-panel .eyebrow{font-size:7px}
  .wuling-section{height:500px}
  .wuling-content{padding-top:58px}
  .wuling-content h2{font-size:41px;margin:25px 0}
  .wuling-content>p:not(.eyebrow){font-size:10px}
  .wuling-content .btn-primary{font-size:10px;margin-top:28px}
  .wuling-image{object-position:61% center}
  .wuling-overlay{background:linear-gradient(90deg,#10291ae0,#17312455),linear-gradient(0deg,#10231acc,transparent 55%)}
  .wuling-coordinate{bottom:22px;right:21px;font-size:6px;letter-spacing:1px}
  .news-layout{grid-template-columns:1fr;gap:30px}
  .feature-film{min-height:320px}
  .film-caption{left:24px;bottom:24px}
  .film-caption strong{font-size:26px}
  .film-caption small{font-size:7px}
  .film-play{width:44px;height:44px;font-size:20px;top:22px;right:22px}
  .news-item{padding:21px 0}
  .news-item h3{font-size:16px}
  .news-meta{font-size:9px}
  .news-meta b{font-size:6px}
  .people-inner{grid-template-columns:1fr}
  .people-text{padding:50px 0 0}
  .people-text h2{font-size:31px;line-height:1.6;margin:20px 0}
  .people-text>p:not(.eyebrow){font-size:11px}
  .people-text .text-link{margin-top:18px;font-size:10px}
  .featured-person{min-height:360px;margin-top:20px}
  .featured-person img{height:365px;left:6%}
  .portrait-type{font-size:190px;top:10px;left:0;letter-spacing:-30px}
  .person-caption{bottom:25px;right:0;padding:14px 19px}
  .person-caption h3{font-size:25px}
  .person-caption small{font-size:5px}
  .person-caption p{font-size:8px}
  .join-banner{padding:35px 20px;gap:18px}
  .join-banner .eyebrow{font-size:6px;letter-spacing:.7px}
  .join-banner h2{font-size:25px;line-height:1.6;letter-spacing:1px}
  .join-banner p:last-child{font-size:9px;margin-top:7px}
  .join-action{width:49px;height:49px;flex:none}
  .site-footer{padding:32px 20px 20px}
  .footer-top{gap:25px;padding-bottom:25px}
  .footer-links{gap:12px;flex-wrap:wrap;font-size:8px}
  .back-top{width:31px;height:31px;font-size:20px}
  .footer-bottom{margin-top:18px}
  .footer-bottom p{font-size:7px;line-height:1.9}
  .footer-bottom>span{font-size:6px}
  .page-intro{padding-top:43px;padding-bottom:30px}
  .page-intro h1{font-size:35px;letter-spacing:1px;line-height:1.6;margin-bottom:15px}
  .page-intro>p:last-child{font-size:11px;line-height:2}
  .section.compact{padding-top:26px}
  .filter-bar{gap:0;margin-bottom:25px}
  .filter-bar button{font-size:9px;padding:10px}
  .filter-bar span{font-size:7px;margin-left:6px}
  .project-grid{grid-template-columns:1fr;gap:34px}
  .project-card h2{font-size:27px}
  .project-card>p:not(.eyebrow){font-size:11px}
  .project-card>.eyebrow{margin-top:19px;font-size:7px}
  .project-image{aspect-ratio:1.65}
  .project-image span{font-size:7px}
  .content-note{font-size:9px;margin-top:28px}
  .research-callout{padding:5px 0 45px}
  .research-callout h2{font-size:24px;line-height:1.6}
  .research-callout>p:not(.eyebrow){font-size:11px}
  .team-grid{gap:25px}
  .person-card{grid-template-columns:.8fr 1fr;min-height:300px}
  .person-image{min-height:300px}
  .person-image img{object-fit:cover;object-position:50% center}
  .person-image>span{font-size:7px;left:8px;top:13px;letter-spacing:2px}
  .person-info{padding:23px 16px}
  .person-info h2{font-size:26px;margin-bottom:12px}
  .person-info .eyebrow{font-size:7px;line-height:1.8}
  .person-info>p:not(.eyebrow){font-size:10px;line-height:1.9}
  .person-info .person-tag{font-size:8px}
  .person-info .underlined-link{font-size:9px}
  .notice-box{display:block;padding:17px 20px;margin-bottom:25px}
  .notice-box p{font-size:10px;margin-top:10px}
  .notice-box>span{font-size:7px}
  .job-item summary{padding:20px 3px;gap:18px}
  .job-item summary small{font-size:8px}
  .job-item summary strong{font-size:17px}
  .job-number{font-size:10px}
  .job-item summary>b{font-size:23px}
  .job-body{padding:0 30px 25px}
  .job-body p{font-size:11px}
  .job-body h3{font-size:11px}
  .btn-dark{font-size:11px;min-height:43px;padding:11px 16px}
  .interest-form{padding:25px 20px;margin-top:40px;gap:25px}
  .interest-form h2{font-size:26px}
  .interest-form>div>p:not(.eyebrow){font-size:10px}
  .form-fields input,.form-fields select,.form-fields textarea{font-size:12px}
  .archive-search{margin-bottom:27px}
  .archive-search input{font-size:12px;padding-left:0}
  .archive-search button{font-size:11px;padding:10px}
  .archive-search label{font-size:8px}
  .archive-toolbar{font-size:9px}
  .archive-toolbar button{font-size:9px}
  .archive-row{padding:22px 0;gap:15px}
  .archive-code{font-size:8px;align-self:flex-start;margin-top:4px}
  .archive-row small{font-size:6px;letter-spacing:.4px}
  .archive-row strong{font-size:23px;margin-bottom:9px}
  .archive-row>span:nth-child(2)>span{font-size:10px;line-height:1.8}
  .archive-row>b{font-size:21px}
  .empty-state{padding:50px 20px}
  .empty-state h2{font-size:22px}
  .empty-state p{font-size:10px}
  .source-intro h2,.sources-content>h2{font-size:25px}
  .source-intro p{font-size:11px}
  .source-list strong{font-size:13px}
  .source-list small{font-size:8px}
  #detail-dialog{width:calc(100% - 24px);max-height:90svh}
  .dialog-image{height:210px}
  .dialog-body{padding:25px 23px}
  .dialog-body h2{font-size:29px;line-height:1.5}
  .dialog-body>p:not(.eyebrow){font-size:12px}
  .dialog-source{font-size:9px;line-height:2}
  .dialog-close{width:32px;height:32px;font-size:23px;top:12px;right:12px}
  .dialog-actions{gap:15px}
  .dialog-body .eyebrow{font-size:7px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .in-view{animation:none}
}
@media(max-width:640px){
  .hero h1{font-size:clamp(47px,14vw,61px)}
}
.utility-bar>span:first-child{white-space:nowrap}
.nav-menu{gap:22px}
.nav-menu a[aria-current="location"]{font-weight:600}
.nav-archive[aria-current]{background:var(--green);color:#f0f5e8;border-color:var(--green)}
.footer-links a[aria-current]{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:6px}
.hero-bottom .hero-slides{margin-left:auto;gap:32px}
.person-card{scroll-margin-top:115px}
.operations-section{background:#edf0e6;border-top:1px solid var(--line)}
.operations-list{border-top:1px solid var(--line)}
.operations-item{display:flex;align-items:center;gap:38px;padding:29px 12px;width:100%;text-align:left;border-bottom:1px solid var(--line);transition:background .2s}
.operations-item:hover{background:#e3ead8}
.operations-item time{align-self:flex-start;flex:none;font:12px/2 var(--mono);color:#7f936d}
.operations-content{display:block}
.operations-content small{display:block;font-size:9px;color:#81976d;letter-spacing:1px;margin-bottom:7px}
.operations-content strong{display:block;font:500 23px/1.6 var(--serif);letter-spacing:1px;margin-bottom:9px}
.operations-content>span{display:block;font-size:11px;color:#7a896b;line-height:1.9}
.operations-item>b{margin-left:auto;font-size:26px;font-weight:400;flex:none}
.news-detail{padding-top:65px}
.news-detail .news-lead{font-size:15px!important;border-left:2px solid #abc58b;padding-left:17px;color:#547047!important}
.friend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.friend-card{display:flex;flex-direction:column;padding:30px;border:1px solid #cbd6bd;min-height:280px;background:#f6f7ef;transition:background .2s}
.friend-card:hover{background:#e7eedc}
.friend-card .eyebrow{font-size:8px}
.friend-card h2{font:500 25px/1.7 var(--serif);margin:10px 0 15px}
.friend-card>p:not(.eyebrow){font-size:11px;color:#7c8b6c;line-height:2;margin-bottom:28px}
.friend-card>span{display:flex;gap:20px;justify-content:space-between;align-items:center;font:9px var(--mono);color:#6f8759;margin-top:auto;overflow-wrap:anywhere}
.friend-card b{font-size:22px;font-weight:400}
.intent-preview{max-width:620px;margin:45px auto 0}
.intent-preview>img{width:100%;height:auto;border:1px solid #cbd6bd;box-shadow:0 15px 40px #244b3d0c;margin-bottom:24px}
.intent-preview .btn-dark{display:flex;justify-content:center}
button:disabled{opacity:.65}
@media(max-width:1200px){
  .nav-menu{gap:16px}
  .hero-bottom .hero-slides{gap:25px}
  .friend-card{padding:25px}
  .friend-card h2{font-size:22px}
  .footer-links{gap:20px;flex-wrap:wrap;justify-content:flex-end}
}
@media(max-width:960px){
  .friend-grid{grid-template-columns:1fr}
  .friend-card{min-height:230px}
  .footer-links{justify-content:space-between}
  .hero-bottom .hero-slides{gap:20px}
}
@media(max-width:640px){
  .utility-bar{font-size:6px;letter-spacing:.2px;padding:0 16px}
  .utility-bar b{margin:0 5px}
  .utility-bar a{font-size:8px}
  .hero-bottom .hero-slides{width:100%;justify-content:space-between;gap:8px;margin-left:0}
  .hero-slides>button{font-size:9px;white-space:nowrap}
  .operations-item{gap:16px;padding:23px 0;flex-wrap:wrap}
  .operations-item time{font-size:9px;width:100%;line-height:1}
  .operations-content{flex:1;min-width:0}
  .operations-content small{font-size:8px}
  .operations-content strong{font-size:19px;letter-spacing:.5px;line-height:1.8}
  .operations-content>span{font-size:10px}
  .operations-item>b{font-size:21px}
  .news-detail{padding-top:60px}
  .news-detail .news-lead{font-size:12px!important}
  .friend-grid{gap:18px}
  .friend-card{padding:25px;min-height:240px}
  .friend-card h2{font-size:26px}
  .friend-card .eyebrow{font-size:7px}
  .friend-card>span{font-size:8px}
  .intent-preview .btn-dark{font-size:11px}
  .footer-links{gap:17px 12px;justify-content:flex-start}
}
.brand-picture{display:block}
.brand-logo{display:block;height:auto;max-width:100%;flex:none}
.site-nav .brand-logo{width:clamp(357px,30.6vw,476px)}
.site-footer .brand-logo{width:235px}
@media(max-width:1200px){
  .site-nav .brand-logo{width:323px}
}
@media(max-width:960px){
  .site-nav .brand-logo{width:320px}
}
@media(max-width:640px){
  .site-nav .brand-logo{width:214px}
  .site-footer .brand-logo{width:215px}
}
@media(max-width:360px){
  .site-nav .brand-logo{width:190px}
}
.footer-top>.nav-brand{margin-inline-start:2em;max-width:calc(100% - 2em)}
.footer-bottom p,.footer-bottom>span{font-size:10px}
.people-controls{display:flex;align-items:center;gap:12px;margin-top:28px}
.people-controls button{display:grid;place-content:center;min-width:36px;height:36px;border:1px solid #9eaf90;transition:background .2s}
.people-controls button:hover{background:#cbd8bf}
.people-controls #people-playback{display:block;margin-left:8px;padding:0 12px;font-size:10px;letter-spacing:1px}
.people-position{font:10px/1 var(--mono);letter-spacing:1px;color:#617855;white-space:nowrap}
#featured-person-image{left:0;width:100%;height:100%;object-fit:contain;object-position:center bottom}
@media(max-width:640px){
  .footer-bottom p,.footer-bottom>span{font-size:8px}
  .people-controls{margin-top:24px;gap:10px}
  .people-controls #people-playback{font-size:9px;margin-left:4px}
}
.portrait-type{font-size:clamp(96px,15vw,240px);line-height:1;letter-spacing:.04em;top:8%;left:3%;max-width:94%;white-space:nowrap}
.dialog-body .dialog-source{font-size:10px;overflow-wrap:anywhere}
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 32px}
.footer-bottom p{min-width:0;line-height:1.9;overflow-wrap:anywhere}
.footer-registration{grid-column:1/-1;color:#929b88}
.news-article-section{padding:34px 0 75px;min-height:55vh}
.news-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:10px;color:#849476;margin-bottom:55px}
.news-breadcrumb a:hover{color:var(--green)}
.news-article{max-width:920px;margin:0 auto}
.news-article-header{padding-bottom:30px;border-bottom:1px solid var(--line)}
.news-article-header .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.8}
.news-article h1{font:500 clamp(29px,3vw,44px)/1.6 var(--serif);letter-spacing:2px;margin:20px 0 25px;overflow-wrap:anywhere}
.news-article-lead{font-size:15px;line-height:2;color:#63785a;border-left:2px solid #a9c18f;padding-left:20px}
.news-article-body{padding:32px 0 24px;font-size:14px;line-height:2.2;color:#566c50;overflow-wrap:anywhere}
.news-article-body p{margin-bottom:22px}
.news-adjacent{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px;padding:25px 0}
.news-adjacent a{display:flex;flex-direction:column;gap:9px;font-size:13px;line-height:1.9}
.news-adjacent a:last-child{text-align:right}
.news-adjacent small{font-size:9px;color:#849775}
.news-adjacent a:hover{color:#749750}
.news-return{margin-top:30px}
@media(max-width:960px){
  .footer-bottom{gap:10px}
}
@media(max-width:640px){
  .news-article-section{padding:26px 0 50px}
  .news-breadcrumb{font-size:9px;margin-bottom:34px;gap:8px}
  .news-article h1{font-size:29px;letter-spacing:1px;margin:17px 0 22px}
  .news-article-header .eyebrow{font-size:8px}
  .news-article-lead{font-size:12px;padding-left:14px}
  .news-article-body{font-size:12px;padding-top:26px;line-height:2.1}
  .news-adjacent{gap:18px;padding:22px 0}
  .news-adjacent a{font-size:11px}
  .news-adjacent small{font-size:8px}
}
.nav-search-icon{display:block;width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:640px){
  .nav-search-icon{width:22px;height:22px}
}
.footer-bottom{grid-template-columns:35% 40% 25%;gap:0;align-items:start}
.footer-legal{min-width:0;padding-inline-end:24px}
.footer-legal .footer-registration{margin-top:12px}
.footer-reserved{min-width:0}
.footer-bottom>.footer-motto{justify-self:end;text-align:right;white-space:normal;overflow-wrap:anywhere}
@media(max-width:960px){
  .footer-bottom{gap:12px}
  .footer-legal{padding-inline-end:0}
  .footer-reserved{display:none}
  .footer-bottom>.footer-motto{justify-self:start;text-align:left}
}
.region-icon{display:block;width:38px;height:38px;flex:none;color:var(--lime)}
.footer-bottom{grid-template-columns:45% 30% 25%}
.footer-right{min-width:0;text-align:right}
.footer-right .footer-motto{display:block;font:10px/1.8 var(--mono);letter-spacing:1px;color:#8d9a80;overflow-wrap:anywhere}
.footer-legal .footer-license{margin-top:2px}
.footer-legal .footer-version{margin-top:0}
.footer-version strong{font-weight:700}
.footer-right .footer-maintenance{margin-top:12px}
.footer-right .footer-registration{margin-top:0}
@media(max-width:960px){
  .footer-bottom{grid-template-columns:minmax(0,1fr)}
  .footer-right{text-align:left}
}
@media(max-width:640px){
  .region-icon{width:29px;height:29px}
  .footer-right .footer-motto{font-size:8px}
}
.back-top.floating-top{position:fixed;right:24px;bottom:max(24px,var(--footer-inset,0px));z-index:45;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--green);border:1px solid #a6b79d;box-shadow:0 4px 18px #152f2424;transition:transform .2s,background .2s,box-shadow .2s}
.back-top.floating-top[hidden]{display:none}
.floating-top svg{display:block;width:23px;height:23px}
.back-top.floating-top:hover{background:#e5eed9;transform:translateY(-3px);box-shadow:0 7px 22px #152f2433}
.back-top.floating-top:focus-visible{outline:2px solid var(--green);outline-offset:4px}
.footer-bottom .footer-badges{display:flex;align-items:center;justify-content:center;align-self:center;gap:16px;padding:0 14px;min-width:0}
.footer-badges img{display:block;width:auto;height:116px;object-fit:contain;flex:none}
.footer-right .footer-motto{font-family:var(--sans);line-height:1.9;letter-spacing:.02em}
.footer-motto>span{display:block}
@media(max-width:960px){
  .footer-bottom .footer-badges{padding:4px 0;gap:18px}
  .footer-badges img{width:auto;height:100px}
}
@media(max-width:640px){
  .back-top.floating-top{width:36px;height:36px;right:18px;bottom:max(calc(18px + env(safe-area-inset-bottom)),var(--footer-inset,0px))}
  .floating-top::before{content:"";position:absolute;inset:-4px;border-radius:50%}
  .floating-top svg{width:18px;height:18px}
  .footer-badges img{width:auto;height:90px}
}
@media(prefers-reduced-motion:reduce){
  .back-top.floating-top{transition:none}
  .back-top.floating-top:hover{transform:none}
}
.site-footer{padding-bottom:24px}
@media(max-width:640px){
  .site-footer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
}
@media(min-width:961px){
  .footer-bottom{align-items:center}
}
@media(max-width:640px){
  .footer-right{text-align:right}
}
.interest-form>div>.join-submission{margin-top:1em}
.form-fields .download-icon{width:20px;height:20px;flex:none}
.job-lead{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;padding:12px 16px;border-left:2px solid var(--green);background:#e9eede;margin-bottom:24px;font-size:12px}
.job-lead>span{font-size:10px;color:var(--muted)}
.job-lead strong{font-weight:600;color:var(--green)}
.job-lead small{font-size:10px;color:var(--muted)}
.job-tasks{padding-left:1.35em;margin:0 0 24px;font-size:12px;color:#78886c;line-height:2}
.job-tasks li+li{margin-top:6px}
@media(max-width:640px){
  .job-lead{padding:11px 12px;font-size:11px;gap:6px 12px}
  .job-tasks{font-size:11px}
}
body[data-page="careers"] .page-intro{border-bottom:0;padding-bottom:0}
body[data-page="careers"] .page-intro+.section.compact{padding-top:16px}
.hero-image-next{opacity:0;pointer-events:none}
.news-article-body h2{font:600 18px/1.8 var(--sans);letter-spacing:.5px;margin:32px 0 16px;color:var(--green)}
.news-article-body p{text-indent:2em}
.news-sources{border-top:1px solid var(--line);padding:24px 0 28px;font-size:11px;line-height:1.9;color:#718268;overflow-wrap:anywhere}
.news-sources h2{font:600 14px/1.8 var(--sans);color:var(--green);margin:0 0 10px}
.news-sources h2 small{font:10px/1.8 var(--mono);letter-spacing:1px;margin-left:6px}
.news-sources p{margin:0 0 12px}
.news-sources ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;list-style:none;padding:0;margin:0}
.news-sources a{display:inline-block;text-decoration:underline;text-underline-offset:4px}
.news-sources a:hover{color:var(--green)}
.news-sources a:focus-visible{outline:1px solid var(--green);outline-offset:5px}
@media(max-width:640px){
  .news-sources{font-size:10px;padding:22px 0}
  .news-sources ul{grid-template-columns:1fr;gap:9px}
  .news-sources h2{font-size:13px}
  .news-sources h2 small{font-size:8px}
}
@media(max-width:640px){
  .news-article-body h2{font-size:16px;letter-spacing:0;margin:28px 0 13px}
}
.intent-preview{max-width:none;margin:48px 0 0;padding:28px;background:#edf0e6;border:1px solid var(--line);scroll-margin-top:20px}
.intent-preview>.eyebrow{margin-bottom:22px}
.intent-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.intent-preview-figure{display:flex;justify-content:center;min-width:0}
.intent-preview-figure>img{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 250px);object-fit:contain;border:1px solid #cbd6bd;box-shadow:0 12px 32px #244b3d12}
.intent-preview-info{min-width:0;color:#52664b}
.intent-preview-info>p{font-size:15px;line-height:2.2;margin-bottom:30px}
.intent-preview-info .btn-dark{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:12px 22px;font-size:14px}
.intent-preview-info .download-icon{width:20px;height:20px;flex:none}
@media(min-width:961px){
  body[data-page="careers"] .page-intro,body[data-page="careers"] .section.compact>.container{max-width:1120px}
  body[data-page="careers"] .page-intro>p:last-child{font-size:16px;line-height:2;max-width:46em}
  body[data-page="careers"] .notice-box{padding:24px 28px;gap:28px}
  body[data-page="careers"] .notice-box>span{font-size:10px}
  body[data-page="careers"] .notice-box p{font-size:15px;line-height:2}
  .job-item summary{padding:27px 12px;gap:26px}
  .job-item summary small{font-size:12px;margin-bottom:6px}
  .job-item summary strong{font-size:23px}
  .job-number{font-size:13px}
  .job-body{max-width:980px;padding:0 68px 34px}
  .job-body p,.job-tasks{font-size:15px;line-height:2}
  .job-body h3{font-size:15px;margin-bottom:12px}
  .job-lead{padding:14px 18px;font-size:15px;gap:9px 18px}
  .job-lead>span,.job-lead small{font-size:12px}
  .job-body .btn-dark{font-size:14px;min-height:46px}
  .interest-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:40px;margin-top:56px;align-items:start}
  .interest-form h2{font-size:32px;line-height:1.5;margin:14px 0 22px}
  .interest-form>div>p:not(.eyebrow){font-size:15px;line-height:2.1;color:#64785a}
  .interest-form .eyebrow{font-size:10px}
  .form-fields{gap:12px}
  .form-fields label{font-size:14px}
  .form-fields label>span{font-size:11px}
  .form-fields input,.form-fields select,.form-fields textarea{font-size:15px;padding:12px 14px}
  .form-fields textarea{min-height:132px;line-height:1.9}
  .form-fields>.btn-primary{font-size:14px;min-height:50px}
  .form-status{font-size:12px;line-height:1.8}
}
@media(max-width:960px){
  .intent-preview{padding:24px}
  .intent-preview-layout{gap:26px}
  .intent-preview-info>p{font-size:13px;line-height:2.1}
  .intent-preview-info .btn-dark{font-size:12px;gap:18px}
  .intent-preview-figure>img{max-height:calc(100svh - 230px)}
}
@media(max-width:640px){
  .intent-preview{margin-top:30px;padding:20px 16px;scroll-margin-top:14px}
  .intent-preview>.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:18px}
  .intent-preview-layout{grid-template-columns:minmax(0,1fr);gap:24px}
  .intent-preview-figure>img{max-height:58svh}
  .intent-preview-info>p{font-size:12px;margin-bottom:20px}
  .intent-preview-info .btn-dark{display:flex;width:100%;font-size:12px;min-height:44px}
}
@media(max-width:640px){
  .footer-top{flex-direction:column;align-items:center}
  .footer-top>.footer-brand{margin-inline:0;max-width:100%;justify-content:center}
  .footer-top>.footer-links{justify-content:center;text-align:center;margin-inline:0}
}
body[data-page="people"]{--profile-body:14px;--profile-meta:12px;--profile-name:34px}
body[data-page="people"] .page-intro h1{display:flex;flex-wrap:wrap;gap:0 .4em;font-size:clamp(30px,calc(4vw - 2px),50px);line-height:1.5;letter-spacing:.04em}
body[data-page="people"] .page-intro h1>span{display:block}
body[data-page="people"] .page-intro>p:last-child{font-size:14px;line-height:2;color:#64725d;max-width:48em}
body[data-page="people"] .team-grid{gap:28px}
body[data-page="people"] .person-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-height:420px}
body[data-page="people"] .person-info{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:28px}
body[data-page="people"] .person-info .eyebrow{font:500 var(--profile-meta)/1.8 var(--sans);letter-spacing:.02em;color:#617356;min-height:3.6em;margin:0 0 10px}
body[data-page="people"] .person-info h2{font:500 var(--profile-name)/1.4 var(--serif);letter-spacing:.08em;color:var(--ink);margin:0 0 12px}
body[data-page="people"] .person-info>p:not(.eyebrow){font:400 var(--profile-body)/1.95 var(--sans);color:#52664b;margin:0 0 20px;overflow-wrap:anywhere}
body[data-page="people"] .person-info>p.person-tag{font-size:var(--profile-meta);line-height:1.8;color:#617356;margin-bottom:16px}
body[data-page="people"] .person-info .underlined-link{font:500 var(--profile-meta)/1.8 var(--sans);color:var(--green);padding:10px 0 4px;margin-top:auto}
body[data-page="people"] .person-image>span{font-size:10px;line-height:1.5;letter-spacing:.12em;color:#5c7350}
body[data-page="people"] .content-note{font-size:12px;line-height:2;color:#64725d}
body[data-page="people"] .join-banner p:last-child{font-size:13px;line-height:1.9}
@media(max-width:1200px){
  body[data-page="people"] .person-info{padding:24px}
}
@media(max-width:960px){
  body[data-page="people"] .person-card{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);min-height:360px}
  body[data-page="people"] .person-info{padding:30px}
}
@media(max-width:640px){
  body[data-page="people"]{--profile-body:13px;--profile-meta:11px;--profile-name:28px}
  body[data-page="people"] .page-intro>p:last-child{font-size:12px;line-height:1.9}
  body[data-page="people"] .team-grid{gap:24px}
  body[data-page="people"] .person-card{grid-template-columns:minmax(0,1fr)}
  body[data-page="people"] .person-image{height:clamp(220px,62vw,280px);min-height:0}
  body[data-page="people"] .person-image img{object-position:50% 20%}
  body[data-page="people"] .person-info{padding:22px 18px}
  body[data-page="people"] .person-info .eyebrow{min-height:0;margin-bottom:8px}
  body[data-page="people"] .person-info h2{margin-bottom:10px}
  body[data-page="people"] .person-info>p.person-tag{margin-bottom:14px}
  body[data-page="people"] .person-info>p:not(.eyebrow){margin-bottom:18px}
  body[data-page="people"] .person-image>span{font-size:8px;left:8px;top:14px}
  body[data-page="people"] .content-note{font-size:11px;line-height:1.9}
  body[data-page="people"] .join-banner p:last-child{font-size:12px}
}
.reading-page{--reading-body:14px;--reading-meta:12px;--reading-code:11px;--reading-heading:28px}
.reading-page .page-intro h1{font-size:clamp(30px,calc(4vw - 2px),50px);line-height:1.5;letter-spacing:.04em;overflow-wrap:anywhere}
.reading-page .page-intro>p:last-child{font-size:var(--reading-body);line-height:2;color:#617356;max-width:50em}
.reading-page .eyebrow{font-size:var(--reading-meta);line-height:1.8;letter-spacing:.08em;overflow-wrap:anywhere}
.reading-page :is(.text-link,.underlined-link,.light-link,.filter-bar button,.archive-toolbar,.archive-toolbar button,.archive-search label,.archive-search button,.bookmark-button,.news-breadcrumb){font-size:var(--reading-meta);line-height:1.8}
.reading-page :is(.content-note,.empty-state p){font-size:var(--reading-meta);line-height:1.9;color:#617356}
.reading-page .section-title-block h2{font-size:34px;line-height:1.45}
.reading-page .section-title-block{flex-wrap:wrap}
.reading-page :is(.about-content p,.research-tab-note p,.research-panel-content>p:not(.eyebrow),.wuling-content>p:not(.eyebrow),.people-text>p:not(.eyebrow)){font-size:var(--reading-body);line-height:2}
.reading-page .about-content p,.reading-page .people-text>p:not(.eyebrow){color:#617356}
.reading-page .about-content>p:first-of-type{font-size:15px;color:#314932}
.reading-page .about-content h3{font-size:32px;line-height:1.6}
.reading-page .research-panel h3{font-size:28px;line-height:1.5}
.reading-page .research-strip a,.reading-page .about-principles>div{min-width:0}
.reading-page :is(.research-strip small,.about-principles small,.research-tab-note>span:first-child,.image-code){font-size:var(--reading-code);line-height:1.8;letter-spacing:.05em;overflow-wrap:anywhere}
.reading-page .research-tabs button{font-size:var(--reading-body)}
.reading-page .research-tabs button span{font-size:var(--reading-code)}
.reading-page .news-item h3{font-size:18px;line-height:1.8}
.reading-page :is(.news-meta,.news-bottom,.film-caption>span,.person-caption p){font-size:var(--reading-meta);line-height:1.9}
.reading-page :is(.news-meta b,.film-caption small,.person-caption small){font-size:var(--reading-code);line-height:1.8;letter-spacing:.05em}
.reading-page .news-meta{flex-wrap:wrap;gap:5px 12px}
.reading-page .person-caption h3{font-size:28px}
.reading-page .join-banner p:last-child{font-size:var(--reading-body);line-height:1.9}
.reading-page :is(.project-card>p:not(.eyebrow),.research-callout>p:not(.eyebrow),.source-intro p,.sources-content>p,.friend-card>p:not(.eyebrow)){font-size:var(--reading-body);line-height:2;color:#617356}
.reading-page :is(.project-card h2,.research-callout h2){font-size:var(--reading-heading);line-height:1.5}
.reading-page :is(.project-image span,.project-card>.eyebrow,.source-list small,.friend-card>.eyebrow,.friend-card>span){font-size:var(--reading-meta);line-height:1.8;letter-spacing:.04em;overflow-wrap:anywhere}
.reading-page .filter-bar span{font-size:var(--reading-code)}
.reading-page :is(.source-intro h2,.sources-content>h2,.friend-card h2){font-size:26px;line-height:1.6}
.reading-page .source-list strong{font-size:15px;line-height:1.9}
.reading-page .source-list>a{gap:20px}
.reading-page .source-list>a>span{min-width:0;overflow-wrap:anywhere}
.reading-page .source-list>a>b{flex:none}
.reading-page .friend-card>span{gap:16px}
.reading-page .archive-search input{font-size:16px;min-width:0}
.reading-page .archive-toolbar{gap:16px;align-items:baseline}
.reading-page .archive-toolbar button{flex:none}
.reading-page .archive-row{gap:26px}
.reading-page .archive-code{font-size:var(--reading-meta);flex:none}
.reading-page .archive-row>span:nth-child(2){min-width:0;flex:1}
.reading-page .archive-row small{font-size:var(--reading-meta);line-height:1.8;letter-spacing:.04em;overflow-wrap:anywhere;color:#617356}
.reading-page .archive-row strong{font-size:24px;line-height:1.5}
.reading-page .archive-row>span:nth-child(2)>span{font-size:var(--reading-body);line-height:1.95;color:#617356}
.reading-page .operations-content{min-width:0;flex:1}
.reading-page .operations-content strong{font-size:22px;line-height:1.7;overflow-wrap:anywhere}
.reading-page .operations-content>span{font-size:var(--reading-body);line-height:1.95;color:#617356}
.reading-page :is(.operations-item time,.operations-content small){font-size:var(--reading-meta);line-height:1.8;color:#617356}
.reading-page .news-article h1{font-size:clamp(30px,3vw,44px);line-height:1.6}
.reading-page :is(.news-article-body,.news-article-lead,.news-adjacent a,.dialog-body>p:not(.eyebrow)){font-size:var(--reading-body);line-height:2}
.reading-page :is(.news-adjacent small,.news-sources,.news-sources h2 small,.dialog-body>p.dialog-source,.dialog-body>p.video-note){font-size:var(--reading-meta);line-height:1.9}
.reading-page .dialog-body h2{font-size:34px;line-height:1.5}
.reading-page .dialog-body>p.video-note{color:#617356}
@media(max-width:640px){
  .reading-page{--reading-body:13px;--reading-meta:11px;--reading-code:10px;--reading-heading:24px}
  .reading-page .section-title-block h2{font-size:28px}
  .reading-page .section-title-block .text-link{white-space:normal}
  .reading-page .about-content h3{font-size:28px}
  .reading-page .about-content>p:first-of-type{font-size:14px}
  .reading-page .research-panel h3{font-size:26px}
  .reading-page .research-panel{min-height:410px}
  .reading-page .research-strip small{letter-spacing:0}
  .reading-page .news-item h3{font-size:17px}
  .reading-page .person-caption h3{font-size:26px}
  .reading-page :is(.source-intro h2,.sources-content>h2,.friend-card h2){font-size:24px}
  .reading-page .source-list strong{font-size:14px}
  .reading-page .filter-bar button{padding:10px 8px}
  .reading-page .archive-row{gap:14px}
  .reading-page .archive-row strong{font-size:22px}
  .reading-page .operations-content strong{font-size:20px}
  .reading-page .news-article h1{font-size:30px}
  .reading-page .dialog-body h2{font-size:28px}
}
.not-found{padding:64px 0 68px;border-bottom:1px solid var(--line)}
.not-found-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:80px;align-items:center;max-width:1180px}
.not-found-copy{min-width:0}
.not-found-copy>.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.8;letter-spacing:.08em;margin-bottom:22px}
.not-found-status{width:6px;height:6px;flex:none;background:var(--green)}
.not-found-copy h1{font:500 clamp(34px,3.6vw,50px)/1.5 var(--serif);letter-spacing:.04em;margin:0 0 22px}
.not-found-description{font-size:14px;line-height:2;color:#617356}
.not-found-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;margin-top:30px}
.not-found-actions .btn-dark{min-height:48px;font-size:13px;gap:38px}
.not-found-actions .text-link{min-height:44px;font-size:12px;gap:18px}
.not-found-actions svg{flex:none}
.not-found-note{font-size:12px;line-height:1.8;color:#71816a;border-top:1px solid var(--line);padding-top:20px;margin-top:32px;max-width:340px}
.not-found-map{position:relative;min-width:0;aspect-ratio:1.16;isolation:isolate;overflow:hidden;background:#eaf0e3;border:1px solid #cad5bf;color:var(--green)}
.not-found-contours{position:absolute;inset:0;width:100%;height:100%;color:#99ae88;z-index:-1}
.not-found-code{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;font:400 clamp(100px,12vw,166px)/1 var(--mono);letter-spacing:.08em;padding-left:.08em;color:var(--green);text-shadow:0 0 26px #eaf0e3,0 0 16px #eaf0e3}
.not-found-map-head,.not-found-map-foot{position:absolute;left:25px;right:25px;display:flex;justify-content:space-between;gap:12px;font:10px/1.8 var(--mono);letter-spacing:.06em;color:#627956}
.not-found-map-head{top:24px}
.not-found-map-foot{bottom:24px}
.not-found-map-foot>span:last-child{font-family:var(--sans);letter-spacing:.12em}
@media(max-width:960px){
  .not-found{padding:52px 0}
  .not-found-layout{gap:38px}
  .not-found-copy h1{font-size:36px}
  .not-found-description{font-size:13px}
  .not-found-actions{gap:12px 20px}
  .not-found-actions .btn-dark{gap:24px;font-size:12px}
  .not-found-map-head,.not-found-map-foot{left:18px;right:18px;font-size:9px}
}
@media(max-width:640px){
  .not-found{padding:36px 0 40px}
  .not-found-layout{grid-template-columns:minmax(0,1fr);gap:28px}
  .not-found-copy>.eyebrow{font-size:10px;margin-bottom:16px}
  .not-found-copy h1{font-size:34px;line-height:1.45;margin-bottom:16px}
  .not-found-description{font-size:13px;line-height:1.95}
  .not-found-actions{margin-top:24px;gap:14px 22px}
  .not-found-actions .btn-dark{min-height:44px;padding:10px 18px;font-size:12px;gap:28px}
  .not-found-actions .text-link{font-size:11px;gap:14px}
  .not-found-note{font-size:11px;margin-top:24px;padding-top:16px;max-width:none}
  .not-found-map{aspect-ratio:1.55}
  .not-found-code{font-size:110px}
  .not-found-map-head{top:15px}
  .not-found-map-foot{bottom:15px}
}
#news-missing>.btn-dark{margin-top:28px}
.news-article-section:has(#news-missing:not([hidden])){min-height:0;padding-bottom:24px}
.archive-search input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-left:8px;margin-right:0;background:url('/assets/search-clear.svg') center / 20px 20px no-repeat;cursor:pointer}
.news-article-body>.news-signature{width:max-content;max-width:calc(100% - 4em);margin-inline-start:auto;margin-inline-end:4em;text-align:center}
.news-article-body>.news-signature>p{text-indent:0}
.direction-select{position:relative;min-width:0;margin-bottom:9px}
.form-fields .direction-select>select{appearance:none;-webkit-appearance:none;margin-bottom:0;padding-right:52px;cursor:pointer}
.direction-select .select-chevron{position:absolute;right:16px;top:50%;width:20px;height:20px;transform:translateY(-50%);pointer-events:none;color:var(--green)}
.direction-select:hover>select{border-color:#8b9e7c}
@media(max-width:640px){
  .direction-select .select-chevron{right:14px;width:18px;height:18px}
  .form-fields .direction-select>select{padding-right:46px}
}
body[data-page="home"] .research-tabs button{font-size:18px}
body[data-page="home"] .research-tab-note>span:first-child{font-size:9px}
body.reading-page[data-page="home"] .research-tab-note p{font-size:11px;line-height:1.9}
@media(max-width:960px){
  body[data-page="home"] .research-tabs button{font-size:16px}
}
@media(max-width:640px){
  body[data-page="home"] .research-tabs button{font-size:15px;gap:8px}
}
@media(max-width:360px){
  body[data-page="home"] .research-tabs button{font-size:14px;gap:6px;padding-inline:0}
}
.personnel-home-section{border-top:1px solid var(--line);background:#eef0e7;padding:54px 0}
.personnel-home-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}
.personnel-home-inner h2{font:500 32px/1.5 var(--serif);margin-bottom:12px;letter-spacing:2px}
.personnel-home-inner p:not(.eyebrow){font-size:14px;color:var(--muted)}
.personnel-home-inner .btn-dark{flex:none}
.personnel-home-inner svg,.personnel-submit svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.personnel-intro h1{font-size:clamp(30px,3vw,46px);line-height:1.55}
.personnel-intro>p:last-child{max-width:780px}
.personnel-section{padding-bottom:70px}
.personnel-demo-note{display:flex;align-items:baseline;gap:16px;padding:14px 20px;border:1px solid #c1cfb2;background:#e9efdf;font-size:12px;margin-bottom:28px;overflow-wrap:anywhere}
.personnel-demo-note strong{flex:none;color:var(--green)}
.personnel-query-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);border:1px solid #c8d0c2;background:#f7f8f1}
.personnel-query-guide{padding:38px;background:#e8eddf;border-right:1px solid #c8d0c2}
.personnel-service-icon{display:block;width:52px;height:52px;color:var(--green);margin-bottom:25px}
.personnel-service-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.personnel-query-guide h2{font:500 27px/1.7 var(--serif);margin:15px 0 20px}
.personnel-query-guide>p:not(.eyebrow){font-size:14px;line-height:2;color:#6a7e61;max-width:36em}
.personnel-query-guide .personnel-query-boundary{border-top:1px solid #c5d0bb;margin-top:24px;padding-top:20px;font-size:12px}
.personnel-form{padding:38px;min-width:0}
.personnel-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.personnel-field{display:flex;flex-direction:column;min-width:0;margin-bottom:24px;gap:10px;font-size:14px}
.personnel-field>span{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px 12px}
.personnel-field small{font-size:11px;color:#7e8e73;font-weight:400}
.personnel-field :is(input,textarea){width:100%;min-width:0;border:1px solid #b9c9ac;background:#fbfcf6;color:var(--ink);padding:14px 16px;border-radius:0;min-height:52px;font-size:14px;line-height:1.7;outline-offset:2px}
.personnel-field input::placeholder,.personnel-field textarea::placeholder{color:#85907d}
.personnel-field input[type="file"]{font-size:12px;padding:12px;overflow:hidden}
.personnel-field input::file-selector-button{border:1px solid #b9c9ac;background:#e8eedb;color:var(--green);padding:5px 10px;margin-right:10px;font:inherit;cursor:pointer}
.personnel-field textarea{resize:vertical}
.personnel-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-top:2px}
.personnel-captcha-row .personnel-field{margin:0}
.personnel-captcha-control{display:flex;align-items:center;gap:12px;min-height:56px}
.personnel-captcha-image{width:170px;height:56px;border:1px solid #c7d2bc;object-fit:contain}
.personnel-captcha-control button{font-size:12px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;padding:8px 0}
.personnel-submit{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:14px;margin-top:28px;min-height:52px}
.personnel-status{font-size:12px;line-height:1.8;color:#718168;min-height:2em;margin-top:16px;overflow-wrap:anywhere}
.personnel-status.is-error{color:#9b4038}
.personnel-result{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:40px;border:1px solid #bcccb1;margin-top:36px;padding:36px;background:#f7f8f1;scroll-margin-top:115px}
.personnel-result-photo{background:#e8eddf;align-self:start}
.personnel-result-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;padding:12px}
.personnel-result-content{min-width:0}
.personnel-result h2{font:500 32px/1.5 var(--serif);margin:10px 0 25px}
.personnel-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;margin:0}
.personnel-details>div{border-bottom:1px solid var(--line);padding-bottom:14px;min-width:0}
.personnel-details dt{font-size:11px;color:#7d8e73;margin-bottom:6px}
.personnel-details dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.personnel-result-section{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.personnel-result-section h3{font-size:12px;color:#7d8e73;margin-bottom:10px}
.personnel-result-section p{font-size:14px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere}
.personnel-bottom-note{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:26px;color:#7d8e73;font-size:11px}
.personnel-bottom-note>span{font-family:var(--mono)}
.personnel-bottom-note a{text-decoration:underline;text-underline-offset:5px}
.personnel-login{max-width:620px;margin:0 auto;border:1px solid #c8d0c2;background:#f7f8f1}
.personnel-demo-login{margin-top:18px;width:100%;padding:12px;border:1px dashed #9faf91;font-size:13px}
.personnel-admin-toolbar,.personnel-admin-toolbar>div,.personnel-list-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.personnel-admin-toolbar{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px;font-size:13px}
.personnel-admin-toolbar :is(a,button){font-size:12px;text-decoration:underline;text-underline-offset:4px}
.personnel-admin-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:32px;align-items:start}
.personnel-list-panel{min-width:0}
.personnel-list-heading{margin-bottom:20px}
.personnel-list-heading h2,#personnel-editor h2{font:500 24px/1.6 var(--serif)}
.personnel-list-heading button,.personnel-record-edit{font-size:12px;border:1px solid #b5c7a5;padding:7px 12px;background:#e8eddf}
.personnel-table-wrap{max-width:100%;overflow:auto}
.personnel-table{border-collapse:collapse;width:100%;font-size:12px;text-align:left;white-space:nowrap}
.personnel-table :is(td,th){padding:13px 10px;border-bottom:1px solid var(--line);font-weight:400}
.personnel-table th{color:#73816b;background:#e9eddf}
.personnel-table td:first-child{white-space:normal;overflow-wrap:anywhere;min-width:100px}
.personnel-table small{display:block;font-size:10px;color:#84907c}
.personnel-visibility{color:#85907b;font-size:11px}
.personnel-visibility.is-public{color:#366444}
.personnel-pagination{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:20px;font-size:11px}
.personnel-pagination button{padding:7px;border:1px solid #c1ceb5}
#personnel-editor{border:1px solid #c8d0c2;background:#edf1e5;scroll-margin-top:110px;padding:26px}
#personnel-editor h2{margin-bottom:25px}
#personnel-editor .personnel-form-grid{gap:0 20px}
.personnel-check{display:flex;align-items:start;gap:10px;font-size:12px;line-height:1.8;margin-top:14px;cursor:pointer}
.personnel-check input{accent-color:#244b3d;width:17px;height:17px;flex:none;margin:3px 0 0}
.personnel-check small{display:block;color:#7d8d72;font-size:11px;font-weight:400}
.personnel-permissions{padding-top:7px;margin-top:20px;border-top:1px solid #c6d1ba}
#personnel-current-photo img{width:80px;height:100px;object-fit:contain}
@media(max-width:1100px){
  .personnel-captcha-row{grid-template-columns:1fr}
  .personnel-captcha-control{justify-content:flex-start}
  .personnel-query-guide,.personnel-form{padding:28px}
  .personnel-admin-layout{grid-template-columns:1fr}
  .personnel-list-panel{order:2}
}
@media(max-width:760px){
  .personnel-query-layout{grid-template-columns:1fr}
  .personnel-query-guide{border-right:0;border-bottom:1px solid #c8d0c2}
  .personnel-service-icon{float:right;margin:0}
  .personnel-query-guide h2{font-size:25px}
  .personnel-result{gap:24px;padding:24px}
  .personnel-result-photo{max-width:180px}
  .personnel-home-inner{align-items:flex-start;flex-direction:column;gap:24px}
}
@media(max-width:640px){
  .personnel-home-section{padding:36px 0}
  .personnel-home-inner h2{font-size:25px}
  .personnel-home-inner p:not(.eyebrow){font-size:13px}
  .personnel-home-inner .btn-dark{font-size:13px;gap:30px}
  .personnel-intro h1{font-size:30px}
  .personnel-demo-note{align-items:flex-start;flex-direction:column;gap:6px;padding:12px 16px;font-size:11px}
  .personnel-query-guide,.personnel-form{padding:24px 20px}
  .personnel-query-guide>p:not(.eyebrow){font-size:13px}
  .personnel-query-guide .personnel-query-boundary{font-size:11px}
  .personnel-form-grid{grid-template-columns:1fr;gap:0}
  .personnel-field{font-size:13px;gap:9px;margin-bottom:22px}
  .personnel-field :is(input,textarea){font-size:16px;padding:12px;min-height:49px}
  .personnel-field small{font-size:10px}
  .personnel-captcha-row{gap:12px}
  .personnel-captcha-control{justify-content:space-between}
  .personnel-submit{font-size:13px;margin-top:24px}
  .personnel-status{font-size:11px}
  .personnel-result{grid-template-columns:1fr;padding:22px;gap:22px}
  .personnel-result-photo{width:120px;justify-self:center}
  .personnel-result h2{font-size:27px}
  .personnel-details{gap:16px 20px}
  .personnel-details dd,.personnel-result-section p{font-size:13px}
  .personnel-result-section{margin-top:20px}
  .personnel-bottom-note{font-size:10px;gap:14px}
  .personnel-admin-layout{gap:30px}
  #personnel-editor{padding:22px 18px}
  .personnel-admin-toolbar{font-size:12px}
  .personnel-list-heading h2,#personnel-editor h2{font-size:23px}
  .personnel-section{padding-bottom:45px}
}
.verification-select-wrap{display:block!important;position:relative;width:100%;min-width:0}
.verification-select-wrap select{display:block;width:100%;min-width:0;appearance:none;-webkit-appearance:none;border:1px solid #b9c9ac;background:#fbfcf6;color:var(--ink);padding:14px 48px 14px 16px;border-radius:0;min-height:52px;font-size:14px;line-height:1.7}
.verification-select-wrap>svg{position:absolute;right:16px;top:50%;width:20px;height:20px;transform:translateY(-50%);pointer-events:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.verification-type-field{max-width:620px;margin-bottom:26px}
.personnel-captcha-control .personnel-captcha-image-button{display:block;flex:none;width:170px;min-height:56px;padding:0;text-decoration:none}
.personnel-captcha-image-button:hover{filter:contrast(1.07)}
.verification-full-field{grid-column:1/-1}
.verification-result-area{margin-top:36px;scroll-margin-top:110px}
.verification-result-area .personnel-result{margin-top:0;position:relative;isolation:isolate;overflow:hidden}
.personnel-result.verification-result-wide{grid-template-columns:minmax(0,1fr);max-width:1060px;margin-inline:auto}
.personnel-result-content,.personnel-result-photo{position:relative;z-index:1}
.verification-result-meta{border-top:1px solid var(--line);padding-top:20px;margin-top:25px;color:#7d8e73;font-size:11px;overflow-wrap:anywhere}
.verification-watermarks{position:absolute;z-index:0;inset:30px 20px -70%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:90px 45px;color:#244b3d;opacity:.075;pointer-events:none;user-select:none}
.verification-watermarks>div{padding:12px;font:12px/1.9 var(--mono);min-width:0;overflow-wrap:anywhere;transform:rotate(-18deg)}
.verification-watermarks span{display:block}
.verification-result-actions{display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap;margin-top:25px}
.verification-result-actions .btn-dark{gap:30px}
.verification-result-actions svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.verification-result-actions .personnel-status{margin:0;min-height:0}
.verification-admin-preview-note{font-size:12px;color:#728466;margin-bottom:18px;padding:14px 20px;background:#e6ecdc;border-left:2px solid #9aaf88}
#verification-admin-preview{margin-top:48px}
@media(max-width:640px){
  .verification-select-wrap select{font-size:16px;min-height:49px;padding:12px 44px 12px 12px}
  .verification-select-wrap>svg{right:14px;width:18px;height:18px}
  .verification-type-field{margin-bottom:22px}
  .verification-result-area{margin-top:28px;scroll-margin-top:90px}
  .verification-result-actions{gap:14px;flex-direction:column;align-items:stretch}
  .verification-result-actions .personnel-status{text-align:center}
  .verification-watermarks{grid-template-columns:1fr;inset:40px 0 -100%;gap:80px;opacity:.08}
  .verification-watermarks>div{font-size:10px}
  .verification-result-meta{font-size:10px}
  .verification-admin-preview-note{font-size:11px}
  .verification-result-wide .personnel-details{grid-template-columns:1fr}
}
.verification-detail-long{grid-column:1/-1}
.verification-detail-long dd{white-space:pre-wrap;line-height:2}
.personnel-form .verification-type-field{max-width:none}
#verification-guide-description{white-space:pre-line}
.home-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #c1ceb3}
@media(min-width:961px){
  .home-action-grid{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
}
.home-action-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:310px;padding:44px clamp(28px,4.45vw,64px)}
.home-action-join{background:#cde1ae;border-right:1px solid #bccaab}
.home-action-verification{background:#eef0e7}
.home-action-card .eyebrow{font-size:10px;line-height:1.8;letter-spacing:1px;margin-bottom:12px;color:#73866a}
.home-action-card h2{font:500 clamp(24px,2.3vw,32px)/1.5 var(--serif);letter-spacing:1.5px;margin-bottom:14px;overflow-wrap:anywhere}
.home-action-description{font-size:14px;line-height:1.9;color:#687c5d;max-width:42em;margin-bottom:25px}
.home-action-link{margin-top:auto;font-size:12px;gap:32px;min-height:48px}
.home-action-link svg{width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:960px){
  .home-action-card{padding:34px 28px}
  .home-action-card h2{font-size:26px;letter-spacing:1px}
  .home-action-description{font-size:13px}
}
@media(max-width:640px){
  .home-action-grid{grid-template-columns:minmax(0,1fr)}
  .home-action-card{min-height:0;padding:32px 20px}
  .home-action-join{border-right:0;border-bottom:1px solid #bccaab}
  .home-action-card h2{font-size:25px}
  .home-action-card .eyebrow{font-size:9px}
  .home-action-description{margin-bottom:22px}
  .home-action-link{font-size:13px;gap:28px}
}
@media(max-width:1100px){
  .nav-menu{display:none}
  .nav-archive{margin-left:auto}
  #nav-hamburger{display:block}
}
.friend-application-note{overflow-wrap:anywhere}
.friend-application-note strong{font-weight:700}
.hand-click-icon{display:block;width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.join-action .hand-click-icon{width:32px;height:32px}
.join-inline-link{display:inline-flex;align-items:center;gap:8px}
.join-inline-link .hand-click-icon{width:16px;height:16px}
@media(max-width:640px){
  .join-action .hand-click-icon{width:24px;height:24px}
}
.admin-section-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 32px;border-bottom:1px solid var(--line);padding-bottom:18px}
.admin-section-tabs button{border:1px solid var(--line);padding:12px 22px;background:transparent;color:var(--green);font:inherit;cursor:pointer}
.admin-section-tabs button[aria-pressed="true"]{background:var(--green);color:var(--paper)}
.admin-news-panel{min-width:0}
.admin-news-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.admin-news-actions button,.admin-news-actions a{font:inherit;font-size:14px;cursor:pointer}
.admin-news-actions>button:not(.btn-dark){padding:10px 14px;border:1px solid var(--line)}
.admin-news-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:36px;margin-top:28px;align-items:start}
.admin-news-layout>*{min-width:0}
.admin-news-row-date{display:block;font-size:12px;color:var(--muted);margin-top:6px}
.admin-news-layout textarea{resize:vertical;min-height:96px}
.admin-news-layout textarea[name="body"]{min-height:380px;line-height:1.8}
.admin-news-layout input[readonly]{background:var(--paper);color:var(--muted)}
.admin-news-preview{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;overflow-wrap:anywhere}
.admin-news-preview p{white-space:pre-line}
@media(max-width:1000px){.admin-news-layout{grid-template-columns:minmax(0,1fr)}.admin-news-actions{gap:10px}.admin-section-tabs button{font-size:14px;padding:10px 14px}}
