@import url('/assets/fonts/fonts.css');
@import url('/assets/fonts/modern.css');
:root{color-scheme:light;--bg:oklch(1 0 0);--surface:oklch(.975 .003 20);--ink:oklch(.23 .014 25);--muted:oklch(.46 .015 25);--line:oklch(.88 .008 25);--primary:oklch(.39 .14 20);--primary-ink:oklch(.39 .14 20);--accent:oklch(.54 .115 60);--soft:oklch(.965 .018 20);--focus:oklch(.50 .16 245);--display:'Sora','Noto Sans Thai',Arial,sans-serif;--sans:'Noto Sans Thai Looped',Arial,sans-serif;--wrap:1180px}
:root[data-theme=dark]{color-scheme:dark;--bg:oklch(.13 .012 250);--surface:oklch(.18 .015 250);--ink:oklch(.96 .005 240);--muted:oklch(.76 .015 240);--line:oklch(.28 .015 250);--primary:oklch(.40 .14 20);--primary-ink:oklch(.80 .11 20);--accent:oklch(.77 .11 60);--soft:oklch(.22 .02 245);--focus:oklch(.79 .09 245)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.23em}a:hover{color:var(--primary-ink)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{display:block}button svg{pointer-events:none}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1,h2{font-family:var(--display);font-weight:400;line-height:1.16;letter-spacing:-.025em}h1{font-size:clamp(2.6rem,4.6vw,4.6rem)}h2{font-size:clamp(2rem,3.2vw,3.1rem)}h3{font-size:1.15rem;font-weight:600;line-height:1.5}p{text-wrap:pretty}p+p{margin-top:1em}html[lang=th] h1,html[lang=th] h2{font-family:var(--sans);font-weight:500;line-height:1.5;letter-spacing:-.02em}html[lang=th] h1{font-size:clamp(2.25rem,3.6vw,3.75rem)}:focus-visible{outline:3px solid var(--focus);outline-offset:5px;border-radius:2px}[tabindex='-1']:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.wrap{width:min(var(--wrap),calc(100% - 80px));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;z-index:30;padding:10px 16px;background:var(--ink);color:var(--bg)}.skip:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}.brand-symbol{width:44px;height:54px;overflow:hidden;position:relative;background:white}.brand-symbol img{height:54px;width:180px;max-width:none;position:absolute;left:-1px;top:0}.brand-copy strong{display:block;font-size:15px;line-height:1.4;font-weight:700;letter-spacing:.015em}.brand-copy small{display:block;font-size:11px;color:var(--muted);line-height:1.6}.navigation{display:flex;gap:24px;align-items:center;margin-left:auto}.navigation a{font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.header-actions{display:flex;gap:10px;align-items:center}.language{font-size:12px;font-weight:700;text-decoration:none;border-right:1px solid var(--line);padding-right:13px}.icon-button{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink)}.icon-button svg{width:17px;height:17px}.menu-button{display:none}.theme-sun{display:none}[data-theme=dark] .theme-sun{display:block}[data-theme=dark] .theme-moon{display:none}.hero{padding:85px 0 70px}.hero-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.eyebrow{font-size:12px;font-weight:600;color:var(--primary-ink);margin-bottom:23px}.hero h1{max-width:750px}.hero h1 em{font-style:normal;color:var(--primary-ink)}.hero .intro{font-size:17px;color:var(--muted);line-height:1.85;max-width:62ch;margin-top:27px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}.button.primary{background:var(--primary);color:oklch(1 0 0);border-color:var(--primary)}.button:hover{background:var(--soft);color:var(--primary-ink)}.button.primary:hover{background:oklch(.30 .10 20);color:oklch(1 0 0)}.hero-visual{margin:0;position:relative}.hero-photo{width:100%;aspect-ratio:1/1.13;object-fit:cover;object-position:24% center;border-radius:2px}.hero-photo-frame{position:relative;overflow:hidden;background:var(--surface)}.hero-photo-frame:after{content:'';position:absolute;bottom:0;left:0;right:0;height:7px;background:var(--primary)}.hero-visual figcaption{font-size:11px;color:var(--muted);padding-top:12px;display:flex;justify-content:space-between;gap:16px}.hero-side-label{position:absolute;top:20px;left:20px;background:var(--bg);color:var(--ink);padding:7px 12px;border-radius:3px;font-size:11px;font-weight:600}.scope-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;padding:22px 0;color:var(--muted);font-size:13px}.scope-band span{display:flex;align-items:center;gap:10px}.scope-band span:before{content:'';width:5px;height:5px;background:var(--primary-ink);border-radius:100%}.section{padding:80px 0;scroll-margin-top:80px}.section-tint{background:var(--surface)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:36px}.section-head p{max-width:55ch;font-size:15px;color:var(--muted);margin-top:16px}.text-link{color:var(--primary-ink);font-size:14px;font-weight:600;white-space:nowrap}.research-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}.research-item{padding:29px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:39px 1fr;gap:16px}.research-icon{color:var(--primary-ink);padding-top:4px}.research-icon svg{width:29px;height:29px}.research-item h3{margin-bottom:10px}.research-item p{font-size:14px;color:var(--muted);max-width:60ch}.research-item a{display:inline-block;margin-top:16px;font-size:12px;color:var(--primary-ink);font-weight:600}.source-note{font-size:12px;color:var(--muted);margin-top:22px;max-width:85ch}.people-lead{display:grid;grid-template-columns:180px 1fr;gap:35px;padding:30px;background:var(--soft);border-radius:8px;margin-bottom:32px}.people-lead img{width:180px;aspect-ratio:4/4.5;object-fit:cover;object-position:top;border-radius:4px}.role{font-size:12px;color:var(--primary-ink);font-weight:600;margin-bottom:8px}.people-lead h3{font-size:24px;margin-bottom:15px}.people-lead p:not(.role){font-size:14px;color:var(--muted);max-width:66ch}.people-lead a{display:inline-block;margin-top:17px}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 30px}.person{display:flex;gap:17px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:23px}.person img{width:66px;height:79px;object-fit:cover;object-position:top;border-radius:4px;flex-shrink:0}.person h3{font-size:14px;line-height:1.65}.person .role{font-size:11px;color:var(--muted);margin:5px 0 0}.feature-story{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.feature-story img{aspect-ratio:1.45;object-fit:cover;width:100%;border-radius:6px}.feature-story h3{font-family:var(--display);font-size:30px;font-weight:400;line-height:1.45;margin:12px 0 20px}.feature-story p{color:var(--muted);font-size:15px}.feature-story .date{font-size:12px}.pub-list{padding:0;margin:0;list-style:none}.publication{display:grid;grid-template-columns:65px 1fr 65px;gap:22px;padding:23px 0;border-top:1px solid var(--line);align-items:start}.publication time{font-size:13px;color:var(--muted)}.publication h3{font-size:15px;font-weight:500;line-height:1.7}.publication h3 a{text-decoration:none}.publication h3 a:hover{text-decoration:underline}.publication p{font-size:11px;color:var(--muted);margin-top:5px}.pdf-link{border:1px solid var(--line);border-radius:4px;text-align:center;padding:5px 9px;color:var(--primary-ink);font-size:11px;font-weight:600;text-decoration:none}.news-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.news-item img{width:100%;aspect-ratio:1.7;object-fit:cover;border-radius:4px;margin-bottom:20px}.news-item time{font-size:12px;color:var(--muted)}.news-item h3{font-size:16px;line-height:1.7;margin:10px 0 15px}.news-item h3 a{text-decoration:none}.news-item .text-link{font-size:12px}.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:95px}.contact-layout p{color:var(--muted);font-size:15px;margin-top:18px;max-width:55ch}.contact-layout address{font-style:normal;color:var(--muted);font-size:14px}.contact-layout h3{font-size:16px;margin-bottom:15px}.contact-links{display:grid;gap:10px;margin-top:25px;font-size:14px}.contact-links a{width:fit-content;color:var(--primary-ink)}footer{border-top:1px solid var(--line);padding:25px 0;font-size:11px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-links{display:flex;gap:20px}.page-heading{padding:60px 0 40px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:24px}.page-heading p{color:var(--muted);max-width:70ch;margin-top:20px}.archive-toolbar{display:flex;gap:18px;align-items:end;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:6px;margin-bottom:30px}.field{display:grid;gap:7px;flex:1}.field label{font-size:12px;font-weight:600}.field input,.field select{width:100%;min-height:47px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink);padding:9px 12px;font-size:14px}.field input::placeholder{color:var(--muted)}.field-category{max-width:240px}.result-count{font-size:13px;color:var(--muted);margin-bottom:10px}.archive-row{display:grid;grid-template-columns:120px 1fr 22px;gap:25px;align-items:start;border-top:1px solid var(--line);padding:25px 0}.archive-row time{font-size:12px;color:var(--muted)}.archive-row h2{font-family:var(--sans);font-size:17px;font-weight:500;line-height:1.65;letter-spacing:0}.archive-row h2 a{text-decoration:none}.archive-row p{font-size:12px;color:var(--muted);margin-top:9px}.archive-row .arrow{font-size:18px;color:var(--primary-ink)}.empty-state{padding:50px;text-align:center;background:var(--surface);border-radius:6px}.empty-state p{color:var(--muted);margin:14px 0}.article-layout{display:grid;grid-template-columns:minmax(0,790px) 240px;gap:80px;padding-bottom:75px}.article-copy{font-size:16px;line-height:1.95}.article-copy p{margin-bottom:20px;overflow-wrap:anywhere}.archive-label{font-size:12px;padding:15px 18px;background:var(--soft);border-radius:5px;line-height:1.8;margin-bottom:28px;color:var(--muted)}.article-gallery{display:grid;gap:22px;margin:35px 0}.article-gallery img{width:auto;max-height:950px;margin-inline:auto;border-radius:3px}.article-gallery figcaption{font-size:12px;color:var(--muted);margin-top:10px;text-align:center}.article-gallery figure{margin:0}.article-sidebar{font-size:12px;color:var(--muted);line-height:1.8}.article-sidebar h2{font-family:var(--sans);font-size:14px;font-weight:600;margin-bottom:14px;letter-spacing:0}.article-sidebar a{display:block;margin-bottom:14px;overflow-wrap:anywhere;color:var(--primary-ink)}.article-sidebar hr{border:0;border-top:1px solid var(--line);margin:24px 0}.document-links{display:grid;gap:12px;padding:25px;background:var(--surface);border-radius:6px;margin-top:25px}.document-links a{font-size:14px;color:var(--primary-ink)}.about-copy{max-width:78ch}.about-copy h2{font-size:27px;line-height:1.5;margin:40px 0 20px}.about-copy p{color:var(--muted);font-size:16px;margin-bottom:20px}.about-copy ol{padding-left:25px;color:var(--muted)}.about-copy li{padding:8px 0}.page-heading.compact h1{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.5;max-width:1000px}.meta{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:18px}.release-preview{font-size:11px;text-align:center;background:var(--soft);color:var(--muted);padding:7px 16px}.js .archive-tools-only{display:flex}.archive-tools-only{display:none}.js .menu-button{display:none}.js .theme-toggle{display:grid}.theme-toggle{display:none}
@media(min-width:960px){.hero-copy{animation:arrive .6s ease-out both}.hero-visual{animation:arrive .8s ease-out both}}@keyframes arrive{from{transform:translateY(12px)}to{transform:translateY(0)}}
@media(max-width:1100px){.navigation{gap:16px}.header-inner{gap:18px}.brand-copy small{max-width:160px}.hero-layout{gap:35px}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{gap:40px;grid-template-columns:minmax(0,1fr) 210px}.contact-layout{gap:50px}}
@media(max-width:900px){.wrap{width:calc(100% - 44px)}.header-inner{min-height:75px;flex-wrap:wrap;gap:10px}.brand-copy strong{font-size:14px}.header-actions{margin-left:auto}.navigation{order:3;width:100%;margin:0;display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 0 20px}.js .navigation{display:none}.js .navigation.is-open{display:flex}.js .menu-button{display:grid}.navigation a{padding:7px 0}.hero{padding-top:48px}.hero-layout{grid-template-columns:1fr 0.72fr;gap:25px}.hero h1{font-size:clamp(2.5rem,5vw,3.7rem)}.hero .intro{font-size:15px}.hero-photo{aspect-ratio:1/1.45}.hero-visual figcaption span:last-child{display:none}.eyebrow{font-size:11px}.scope-band{gap:15px;flex-wrap:wrap}.scope-band span{font-size:12px}.section{padding:60px 0}.research-grid{gap:0 25px}.contact-layout{gap:35px}.article-layout{grid-template-columns:1fr}.article-sidebar{border-top:1px solid var(--line);padding-top:25px}.footer-inner{align-items:flex-start}}
@media(max-width:620px){.hero-layout{grid-template-columns:1fr;gap:36px}.hero{padding:38px 0}.hero h1{font-size:2.6rem;max-width:530px}.hero .intro{font-size:16px}.hero-photo{aspect-ratio:1.4;object-position:center}.hero-visual figcaption{font-size:10px}.scope-band{gap:14px 22px;padding:20px 0}.scope-band span{width:calc(50% - 15px);font-size:11px}.section{padding:48px 0}.section-head{display:block;margin-bottom:27px}.section-head .text-link{display:inline-block;margin-top:18px}.section-head p{font-size:14px}.research-grid{grid-template-columns:1fr}.research-item{padding:24px 0}.research-item h3{font-size:17px}.research-item p{font-size:14px}.people-lead{grid-template-columns:90px 1fr;gap:18px;padding:20px}.people-lead img{width:90px}.people-lead h3{font-size:18px}.people-lead .lead-description{grid-column:1/-1}.people-grid{grid-template-columns:1fr;gap:20px}.person img{width:60px;height:72px}.feature-story{grid-template-columns:1fr;gap:24px}.feature-story h3{font-size:25px}.publication{grid-template-columns:42px 1fr;gap:15px}.publication .pdf-link{grid-column:2;justify-self:start}.news-list{grid-template-columns:1fr;gap:35px}.news-item{display:grid;grid-template-columns:110px 1fr;gap:18px}.news-item img{aspect-ratio:1.05;height:110px;object-fit:cover;margin:0}.news-item h3{font-size:14px;margin:5px 0 10px}.contact-layout{grid-template-columns:1fr;gap:36px}.footer-inner{flex-direction:column;gap:13px}.page-heading{padding:38px 0 30px}.archive-toolbar{flex-direction:column;align-items:stretch;padding:17px;gap:13px}.field-category{max-width:none}.archive-row{grid-template-columns:1fr 20px;gap:8px 15px;padding:20px 0}.archive-row time{grid-column:1/-1}.archive-row h2{font-size:15px}.archive-row p{font-size:11px}.archive-row .arrow{grid-column:2;grid-row:2}.article-copy{font-size:15px}.article-layout{padding-bottom:45px}.page-heading.compact h1{font-size:1.9rem}.article-gallery img{max-height:none}.empty-state{padding:30px 20px}.source-note{font-size:11px}.hero .actions{gap:10px}.button{font-size:13px;gap:15px;padding:10px 15px}.brand-copy small{font-size:10px;max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:620px){.people-lead{grid-template-columns:90px minmax(0,1fr)}.people-lead .text-link{white-space:normal}.people-lead>div{min-width:0}}
@media(max-width:380px){.header-inner{gap:8px}.brand{gap:8px}.brand-symbol{width:32px;height:42px}.brand-symbol img{height:42px;width:140px}.brand-copy strong{font-size:11px}.brand-copy small{font-size:8px}.header-actions{gap:7px}.language{padding-right:8px;font-size:11px}.people-lead{grid-template-columns:1fr}.people-lead img{width:90px}}

/* Source-backed research and English academic profiles. */
.evidence-item{max-width:850px;padding:30px 0;border-bottom:1px solid var(--line)}
.evidence-item h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.3;margin:8px 0 12px}
.evidence-item p{margin:12px 0}.research-evidence>.actions{margin-top:30px}
.person-research{font-size:.875rem;line-height:1.6;margin:8px 0}.person .text-link{font-size:.8rem}
.people-grid>*,.person>div{min-width:0}.person h3{overflow-wrap:anywhere}

/* Research portfolios: portraits and concise previews lead into authored work. */
.portfolio-directory,.portfolio-page,.selected-publications{padding-bottom:64px}
.portfolio-tools{display:none;gap:20px;align-items:end;margin:0 0 22px;max-width:920px}.js .portfolio-tools{display:flex}
.portfolio-tools .field{min-width:0}.portfolio-tools .field-category{max-width:290px}
.portfolio-count{color:var(--muted);font-size:13px;margin-bottom:20px}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 55px}
.portfolio-person{display:grid;grid-template-columns:100px minmax(0,1fr);gap:24px;padding:30px 0 34px;border-top:1px solid var(--line);align-items:start}
.portrait-link{display:block;border-radius:4px;overflow:hidden}.portfolio-person img{width:100px;height:120px;object-fit:cover;object-position:top}
.portfolio-person h2{font-family:var(--sans);font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.35;margin:7px 0 12px;text-wrap:pretty}
.portfolio-person h2 a,.person h3 a,.people-lead h3 a{text-decoration:none}
.portfolio-person h2 a:hover,.person h3 a:hover,.people-lead h3 a:hover{text-decoration:underline}
.portfolio-person-copy>p:not(.portfolio-field){font-size:14px;line-height:1.8;color:var(--muted);max-width:65ch}
.portfolio-field{font-size:12px;font-weight:600;color:var(--primary-ink);line-height:1.6}
.portfolio-person .text-link{display:inline-block;margin-top:18px;white-space:normal}
.portfolio-selection{display:block;color:var(--muted);font-size:11px;margin-top:6px}
.portfolio-page{padding-top:36px}.portfolio-page>.breadcrumb{margin:0 0 38px}
.portfolio-hero{display:grid;grid-template-columns:220px minmax(0,1fr);gap:60px;align-items:start;padding-bottom:50px;border-bottom:1px solid var(--line)}
.portfolio-hero figure{margin:0}.portfolio-hero img{width:220px;height:264px;object-fit:cover;object-position:top;border-radius:4px}
.portfolio-hero figcaption{font-size:11px;color:var(--muted);margin-top:12px;max-width:30ch}
.portfolio-hero h1{font-size:clamp(2rem,4vw,3.8rem);margin:14px 0 12px;max-width:23ch;overflow-wrap:anywhere}
.portfolio-academic-name{font-size:13px;color:var(--muted)}
.portfolio-bio{font-size:17px;color:var(--muted);line-height:1.85;max-width:65ch;margin-top:22px}
.topic-tags{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:23px 0}.topic-tags li{background:var(--soft);color:var(--primary-ink);padding:5px 11px;border-radius:4px;font-size:12px}
.profile-source-links,.paper-links{display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--primary-ink);font-size:13px}
.profile-source-links a,.paper-links a{overflow-wrap:anywhere}
.profile-publications{padding-top:45px}.profile-publications>.section-head{margin-bottom:22px}
.profile-publications h2{font-size:clamp(1.8rem,3vw,2.6rem)}
.portfolio-paper{display:grid;grid-template-columns:65px minmax(0,1fr);gap:30px;padding:28px 0;border-top:1px solid var(--line)}
.portfolio-paper time{font-size:14px;color:var(--muted);padding-top:3px}
.portfolio-paper h3{font-size:20px;font-weight:500;line-height:1.55;max-width:70ch;text-wrap:pretty;overflow-wrap:anywhere}
.portfolio-paper h3 a{text-decoration:none}.portfolio-paper h3 a:hover{text-decoration:underline}
.paper-authors{font-size:13px;color:var(--muted);line-height:1.8;margin-top:12px;max-width:80ch}
.paper-venue{font-size:12px;color:var(--primary-ink);margin-top:6px}
.paper-description,.paper-summary>p{font-size:15px;color:var(--muted);max-width:72ch;line-height:1.85;margin-top:16px}
.paper-links{margin-top:18px;font-weight:600}.paper-owners{display:flex;flex-wrap:wrap;gap:5px;font-size:12px;color:var(--muted);margin-top:16px}
.paper-summary{margin-top:14px}.paper-summary summary{cursor:pointer;font-size:13px;color:var(--primary-ink);width:fit-content}
.portfolio-provenance{font-size:12px;color:var(--muted);max-width:90ch;margin:30px 0;line-height:1.8}
.legacy-publications{padding-bottom:64px}.legacy-publications>details{border-top:1px solid var(--line);padding-top:24px}
.legacy-publications summary{cursor:pointer;font-size:17px;font-weight:600}.legacy-publications .source-note{margin:22px 0}.legacy-publications h2{font-size:26px;margin:30px 0 24px}
@media(max-width:1000px){.portfolio-grid{gap:0 32px}.portfolio-person{grid-template-columns:76px minmax(0,1fr);gap:18px}.portfolio-person img{width:76px;height:92px}.portfolio-person h2{font-size:20px}.portfolio-hero{gap:35px;grid-template-columns:170px minmax(0,1fr)}.portfolio-hero img{width:170px;height:204px}}
@media(max-width:700px){.portfolio-grid{grid-template-columns:1fr}.portfolio-tools{flex-direction:column;align-items:stretch}.portfolio-tools .field-category{max-width:none}.portfolio-hero{grid-template-columns:1fr;gap:24px;padding-bottom:32px}.portfolio-hero figure{display:flex;gap:18px;align-items:end}.portfolio-hero img{width:100px;height:120px}.portfolio-hero figcaption{max-width:20ch}.portfolio-hero h1{max-width:none}.portfolio-bio{font-size:16px}.portfolio-page>.breadcrumb{font-size:11px;margin-bottom:28px}.portfolio-paper{grid-template-columns:1fr;gap:8px;padding:24px 0}.portfolio-paper h3{font-size:18px}.paper-description{font-size:14px}.profile-publications{padding-top:32px}.profile-publications>.section-head{display:block}.profile-publications .text-link{display:inline-block;margin-top:18px;white-space:normal}.paper-authors{font-size:12px}.portfolio-person{padding:24px 0}.portfolio-person h2{font-size:21px}.portfolio-directory,.portfolio-page,.selected-publications{padding-bottom:42px}}
@media(prefers-reduced-motion:no-preference){.portrait-link img{transition:transform .22s ease-out}.portrait-link:hover img{transform:scale(1.035)}}
.field-year{max-width:155px}.publication-more{margin-top:20px}

/* Shared visual system: modern research identity across all routes. */
h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.04em;line-height:1.18}h1{font-size:clamp(2.25rem,4.6vw,4rem)}h2{font-size:clamp(1.7rem,3vw,2.55rem)}h3{font-family:var(--display);font-weight:600;letter-spacing:-.02em}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3{font-family:'Noto Sans Thai',var(--sans);font-weight:600;line-height:1.4;letter-spacing:-.025em}html[lang=th] h1{font-size:clamp(2.2rem,4vw,3.6rem)}
.wrap{width:min(var(--wrap),calc(100% - 96px))}body{font-size:15px;line-height:1.75}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:84px;gap:25px}.brand{gap:11px}.brand-copy strong{font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:.025em}.brand-copy small{font-size:10px}.brand-symbol{width:43px;border-radius:6px}.navigation{gap:5px}.navigation a{padding:10px 13px;border-radius:7px;font-size:13px}.navigation a:hover,.navigation a[aria-current=page]{background:var(--soft);color:var(--primary-ink)}.icon-button{width:42px;height:42px;border-radius:9px}.language{display:grid;place-items:center;min-width:36px;min-height:42px}.header-actions{gap:8px}
.button{border-radius:9px;min-height:46px;padding:11px 19px;gap:14px;font-size:13px}.button.primary{border-color:transparent}.text-link{font-size:13px;text-decoration:none;display:inline-flex;align-items:center;min-height:35px}.text-link:hover{text-decoration:underline}.section{padding:60px 0}.section-head{margin-bottom:27px;gap:25px}.section-head p{font-size:14px;margin-top:12px}.section-tint{background:var(--surface)}.source-note,.portfolio-provenance{line-height:1.8}
.hero{padding:60px 0 45px}.hero-layout{grid-template-columns:1.08fr .92fr;gap:60px}.hero h1{font-size:clamp(2.6rem,4.1vw,4rem);max-width:15ch;line-height:1.15}.hero .intro{max-width:49ch;font-size:16px;line-height:1.85;margin-top:24px}.hero .eyebrow{font-size:12px;margin-bottom:20px}.hero .actions{margin-top:25px}.home-identity{font-size:11px;color:var(--muted);max-width:48ch;margin-top:23px}.hero-visual{min-width:0}.hero-photo-frame{border-radius:14px;isolation:isolate}.hero-photo-frame:after{display:none}.hero-photo{aspect-ratio:1.15;object-fit:cover;object-position:left;width:100%;height:auto}.hero-visual figcaption{font-size:11px;line-height:1.7;display:block;color:var(--muted)}
.home-research-links{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.home-research-links>a{display:flex;gap:20px;align-items:start;text-decoration:none;padding:24px 0;border-top:1px solid var(--line)}.home-research-links>a>span:nth-child(2){flex:1;min-width:0}.home-research-links strong{font-family:var(--display);font-size:19px;font-weight:500;line-height:1.45;display:block}.home-research-links small{display:block;margin-top:9px;color:var(--muted);font-size:12px}.home-work-year{font-size:12px;color:var(--primary-ink);padding-top:4px}.home-topics{display:flex;gap:10px 22px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:12px}.home-people{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:25px}.home-people>a{text-decoration:none;min-width:0}.home-people img{width:100%;max-width:145px;aspect-ratio:1/1.15;object-fit:cover;object-position:top;border-radius:9px;margin-bottom:15px}.home-people h3{font-size:14px;line-height:1.55}.home-people p{font-size:11px;color:var(--muted);margin-top:7px}
.page-heading{padding:45px 0 35px}.page-heading h1{max-width:24ch}.page-heading p{font-size:15px;max-width:65ch;margin-top:16px}.page-heading .breadcrumb{font-size:11px;margin-top:0;margin-bottom:22px}.page-heading.compact h1{font-family:var(--display);font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.45;max-width:34ch}.breadcrumb{font-size:11px}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}
.portfolio-tools,.archive-toolbar{background:var(--surface);border:0;border-radius:10px;padding:20px;gap:16px;align-items:end;margin-bottom:22px}.field input,.field select{border-radius:7px;min-height:46px;font-size:14px}.field label{font-size:12px}.portfolio-count,.result-count{font-size:12px;margin-bottom:15px}.field-year{max-width:140px}.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portfolio-person{display:flex;flex-direction:column;padding:24px;background:var(--surface);border:0;border-radius:11px;min-width:0;gap:20px}.portfolio-person-head{display:flex;gap:16px;align-items:center}.portfolio-person-head>div{min-width:0}.portfolio-person .portrait-link{flex-shrink:0;overflow:hidden;border-radius:8px}.portfolio-person img{width:72px;height:88px;border-radius:8px}.portfolio-person h2{font-family:var(--display);font-size:17px;line-height:1.5;font-weight:600;margin:5px 0 0;letter-spacing:-.025em;overflow-wrap:anywhere}.portfolio-person h2 a{text-decoration:none}.portfolio-person .portfolio-field{font-size:10px;line-height:1.6}.portfolio-person-copy{display:flex;flex-direction:column;flex:1}.portfolio-person-copy>p{font-size:13px;color:var(--muted);line-height:1.8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.portfolio-person-footer{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:auto;padding-top:15px}.portfolio-person .text-link{margin:0;min-height:40px;font-size:12px}.portfolio-selection{margin:0;font-size:10px}.portfolio-page{padding-top:28px}.portfolio-page>.breadcrumb{margin-bottom:28px}.portfolio-hero{background:var(--surface);border:0;border-radius:14px;padding:36px;gap:40px;grid-template-columns:170px minmax(0,1fr)}.portfolio-hero img{width:170px;height:204px;border-radius:9px}.portfolio-hero h1{font-family:var(--display);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:600;line-height:1.25;margin-top:12px}.portfolio-bio{font-size:15px;line-height:1.85;margin-top:17px}.topic-tags{margin:18px 0;gap:7px}.topic-tags li{border-radius:5px;padding:4px 10px;font-size:11px}.profile-source-links{font-size:12px;gap:10px 20px}.profile-publications{padding-top:38px}.profile-publications h2{font-size:27px}
.portfolio-paper{gap:22px;padding:23px 0;grid-template-columns:55px minmax(0,1fr)}.portfolio-paper h3{font-family:var(--display);font-size:17px;line-height:1.6;font-weight:500;letter-spacing:-.02em}.portfolio-paper time{font-size:12px;background:var(--soft);color:var(--primary-ink);border-radius:5px;line-height:1.5;padding:5px 7px;text-align:center;width:fit-content}.paper-authors{font-size:12px;margin-top:8px;line-height:1.8}.paper-venue{font-size:11px}.paper-links{margin-top:12px;gap:8px 20px;font-size:12px}.paper-links a{min-height:32px;display:inline-flex;align-items:center;text-decoration:none}.paper-links a:hover{text-decoration:underline}.paper-summary{margin-top:10px}.paper-summary summary{font-size:12px;min-height:28px}.paper-owners{margin-top:8px;font-size:11px}.paper-description,.paper-summary>p{font-size:14px}.legacy-publications summary{font-size:15px}.publication h3{font-size:14px}
.research-intro{padding:42px 0 38px}.research-intro-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.research-intro h1{font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.14;font-weight:600}.research-intro h1 em{font-style:normal;color:var(--primary-ink)}.research-intro-layout>div>p:not(.breadcrumb){font-size:16px;max-width:48ch;color:var(--muted);margin:22px 0 12px}.research-intro figure{margin:0;min-width:0}.research-intro img{width:100%;height:280px;object-fit:cover;object-position:left;border-radius:12px}.research-intro figcaption{font-size:11px;color:var(--muted);margin-top:10px}.ai-research{padding:0 0 35px}.ai-study{border-top:1px solid var(--line);padding:0;scroll-margin-top:100px}.ai-study:last-of-type{border-bottom:1px solid var(--line)}.study-summary{display:flex;align-items:center;gap:25px;padding:24px 0;cursor:pointer;list-style:none}.study-summary::-webkit-details-marker{display:none}.study-year{font-size:12px;color:var(--muted);width:45px;flex-shrink:0}.study-title{flex:1;min-width:0}.study-title h2{font-family:var(--display);font-size:clamp(1.25rem,2.2vw,1.75rem);font-weight:500;line-height:1.4;letter-spacing:-.025em}.study-title>span{font-size:12px;color:var(--muted);display:block;margin-top:7px}.study-toggle{border:1px solid var(--line);width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;font-size:22px;line-height:1;color:var(--primary-ink)}.ai-study[open] .study-toggle{transform:rotate(45deg);background:var(--soft);border-color:transparent}.ai-study[open] .study-title h2{color:var(--primary-ink)}.ai-study-body{display:grid;grid-template-columns:1.05fr .95fr;gap:45px;padding:0 0 30px 70px}.ai-study-description{font-size:15px;line-height:1.9;color:var(--muted);max-width:65ch}.ai-study-people{font-size:12px;color:var(--primary-ink);margin-top:20px}.ai-study-meta{font-size:11px;color:var(--muted);margin-top:12px}.ai-method{padding:22px;border-radius:10px;background:var(--surface)}.ai-method h3{font-size:13px;font-weight:600}.model-flow{display:flex;gap:12px;list-style:none;padding:0;margin:20px 0}.model-flow li{flex:1;min-width:0}.model-flow span{font-size:10px;color:var(--muted)}.model-flow p{font-size:12px;line-height:1.7;font-weight:500;margin-top:5px;overflow-wrap:anywhere}.model-flow li:not(:last-child):after{content:'→';display:block;color:var(--primary-ink);margin-top:5px}.model-evaluation,.model-availability{font-size:11px;line-height:1.85;color:var(--muted)}.model-evaluation{padding-top:14px;border-top:1px solid var(--line)}.model-availability{margin-top:12px}.model-availability summary{cursor:pointer;color:var(--primary-ink);min-height:26px}.model-availability p{margin:12px 0}.research-people-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}.research-people-links>a{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none}.research-people-links span{font-size:14px}.research-people-links small{font-size:11px;color:var(--muted)}.applied-research{padding-top:28px}.applied-research>summary{font-size:15px;font-weight:500;cursor:pointer}.research-evidence{padding-bottom:45px}
.archive-row{padding:21px 0;gap:20px;grid-template-columns:115px minmax(0,1fr) 22px}.archive-row h2{font-family:var(--display);font-size:15px;line-height:1.7;font-weight:500}.archive-row p{font-size:11px}.archive-row:hover h2 a{color:var(--primary-ink)}.archive-row .arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--soft);font-size:15px}.archive-toolbar{border:0}.article-layout{grid-template-columns:minmax(0,760px) 235px;gap:65px}.article-copy{font-size:15px;line-height:1.95}.article-copy p{max-width:75ch}.article-sidebar{padding:22px;background:var(--surface);border-radius:10px;align-self:start}.article-sidebar h2{font-family:var(--display);font-size:14px}.archive-label{padding:16px 20px;border-radius:8px;font-size:12px}.article-gallery img{border-radius:8px}.document-links{border-radius:9px}.about-copy{max-width:78ch;margin:0 auto}.about-copy h2{font-size:26px;font-weight:600}.about-copy p,.about-copy li{font-size:15px}.about-copy ol{padding-left:23px}.about-copy li{padding:12px 0}.news-item img{border-radius:9px;aspect-ratio:1.65}.news-item h3{font-size:15px;line-height:1.7}.news-item .text-link{font-size:12px}.contact-layout{gap:70px}.contact-layout h2{font-size:clamp(1.6rem,2.6vw,2.3rem)}.contact-layout h3{font-size:15px;line-height:1.6}.contact-layout p,.contact-layout address{font-size:13px}.contact-links{font-size:13px;gap:8px}footer{padding:30px 0;font-size:11px}.footer-inner{line-height:1.85}.empty-state{border-radius:10px}.empty-state h2{font-size:25px}
@media(prefers-reduced-motion:no-preference){.button,.icon-button,.navigation a{transition:background .18s ease-out,color .18s ease-out}.study-toggle{transition:transform .22s ease-out}.ai-study[open] .ai-study-body{animation:arrive .22s ease-out}.portfolio-person{transition:background .18s ease-out}.portfolio-person:hover{background:var(--soft)}}
@media(max-width:1100px){.header-inner{gap:15px}.navigation a{padding:9px 10px;font-size:12px}.hero-layout{gap:35px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-person h2{font-size:19px}.research-intro-layout{gap:35px}.home-people{gap:18px}.home-people h3{font-size:12px}.home-research-links{gap:0 28px}.article-layout{gap:35px;grid-template-columns:minmax(0,1fr) 215px}}
@media(max-width:900px){.wrap{width:calc(100% - 44px)}.header-inner{min-height:74px;gap:8px}.brand-copy strong{font-size:12px}.navigation{padding:8px 0 18px;gap:6px}.navigation a{padding:10px 13px;font-size:13px}.hero{padding:40px 0 30px}.hero-layout{gap:28px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:clamp(2.2rem,4.6vw,3.2rem)}.hero .intro{font-size:14px}.hero-photo{aspect-ratio:.9}.section{padding:45px 0}.page-heading{padding:35px 0 28px}.page-heading h1{font-size:2.5rem}.portfolio-hero{grid-template-columns:145px minmax(0,1fr);padding:28px;gap:28px}.portfolio-hero img{width:145px;height:174px}.portfolio-hero h1{font-size:2.3rem}.portfolio-bio{font-size:14px}.research-intro h1{font-size:2.7rem}.research-intro img{height:250px}.research-intro-layout>div>p:not(.breadcrumb){font-size:14px}.ai-study-body{padding-left:0;gap:25px}.model-flow{flex-direction:column;gap:10px}.model-flow p{margin-top:0}.model-flow li:not(:last-child):after{content:'↓';margin-top:0}.article-layout{grid-template-columns:1fr}.article-sidebar{border:0}.home-people{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.home-people img{max-width:160px}.home-people h3{font-size:14px}.home-people p{font-size:12px}}
@media(max-width:620px){.hero-layout{grid-template-columns:1fr;gap:28px}.hero h1{font-size:2.75rem;max-width:15ch}.hero .intro{font-size:15px}.hero-photo{aspect-ratio:1.5}.hero .eyebrow{font-size:11px;margin-bottom:16px}.hero .actions{gap:9px}.hero-visual figcaption{font-size:10px}.home-identity{font-size:11px}.home-research-links{grid-template-columns:1fr}.home-research-links>a{gap:15px;padding:20px 0}.home-research-links strong{font-size:17px}.home-topics{gap:10px 15px;font-size:11px}.home-people{gap:22px 14px}.home-people h3{font-size:12px}.home-people p{font-size:10px}.section-head .text-link{margin-top:12px}.section-head h2{font-size:1.8rem}.portfolio-grid{grid-template-columns:1fr;gap:14px}.portfolio-person{padding:22px}.portfolio-person h2{font-size:21px}.portfolio-person .portfolio-field{font-size:11px}.portfolio-person img{width:78px;height:94px}.portfolio-person-copy>p{font-size:14px}.portfolio-person .text-link{font-size:13px}.portfolio-selection{font-size:11px}.portfolio-hero{grid-template-columns:1fr;padding:24px;gap:20px}.portfolio-hero figure{display:flex;align-items:end;gap:17px}.portfolio-hero img{width:100px;height:120px}.portfolio-hero figcaption{max-width:20ch;font-size:10px}.portfolio-hero h1{font-size:2rem;line-height:1.3}.portfolio-bio{font-size:15px}.portfolio-page>.breadcrumb{margin-bottom:20px}.profile-publications{padding-top:28px}.profile-publications h2{font-size:25px}.portfolio-tools,.archive-toolbar{padding:17px}.field-year{max-width:none}.portfolio-paper{grid-template-columns:1fr;gap:10px;padding:21px 0}.portfolio-paper h3{font-size:16px}.paper-authors{font-size:12px}.paper-venue{font-size:11px}.paper-links a{min-height:40px}.paper-owners{line-height:1.8}.research-intro{padding:30px 0}.research-intro-layout{grid-template-columns:1fr;gap:25px}.research-intro h1{font-size:2.6rem}.research-intro figure{display:none}.research-intro-layout>div>p:not(.breadcrumb){font-size:15px;margin-top:18px}.research-intro .breadcrumb{margin-bottom:20px}.study-summary{gap:14px;padding:22px 0;align-items:start}.study-year{width:32px;font-size:11px;margin-top:4px}.study-title h2{font-size:19px;line-height:1.45}.study-title>span{font-size:11px}.study-toggle{width:30px;height:30px;font-size:20px}.ai-study-body{grid-template-columns:1fr;gap:23px;padding-bottom:25px}.ai-study-description{font-size:14px;line-height:1.9}.ai-method{padding:20px}.model-flow{flex-direction:row}.model-flow p{font-size:12px}.model-flow li:not(:last-child):after{content:'→';margin-top:4px}.model-evaluation,.model-availability{font-size:12px}.model-availability summary{min-height:40px;padding-top:8px}.research-people-links{grid-template-columns:1fr 1fr;gap:0 22px}.research-people-links span{font-size:13px}.research-people-links small{font-size:10px}.applied-research>summary{font-size:14px}.archive-row{grid-template-columns:1fr 25px;gap:8px 15px}.archive-row time{grid-column:1/-1}.archive-row h2{font-size:14px}.article-copy{font-size:15px}.page-heading.compact h1{font-size:1.65rem}.page-heading h1{font-size:2.2rem}.page-heading>p{font-size:14px}.news-item img{height:105px}.news-item h3{font-size:13px}.contact-layout{gap:30px}.contact-layout h2{font-size:1.7rem}.footer-inner{gap:18px}.footer-links{flex-wrap:wrap;gap:12px 20px}.about-copy h2{font-size:24px}.about-copy p{font-size:15px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand-copy strong{font-size:10px}.brand-copy small{font-size:9px}.brand-symbol{width:36px}.brand{gap:8px}.header-actions{gap:5px}.icon-button{width:37px;height:40px}.language{padding-right:8px;min-width:30px}.hero h1{font-size:2.35rem}.research-intro h1{font-size:2.25rem}.home-people{grid-template-columns:1fr 1fr}.model-flow{flex-direction:column}.model-flow li:not(:last-child):after{content:'↓'}.portfolio-person{padding:18px}.portfolio-person-head{gap:13px}.portfolio-person h2{font-size:18px}.research-people-links{grid-template-columns:1fr}}

.research-photo-frame{position:relative;height:280px;overflow:hidden;border-radius:12px}.research-photo-frame img{position:absolute;inset:0;width:300%;max-width:none;height:100%;object-fit:cover;object-position:left center;border-radius:0}
.portfolio-tools{max-width:none}
@media(max-width:900px){.research-photo-frame{height:250px}}
@media(max-width:620px){.hero-photo-frame{aspect-ratio:1.5}.hero-photo{position:absolute;inset:0;width:300%;max-width:none;height:100%;object-fit:cover;object-position:left center}.hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero .actions .button{font-size:12px;padding:10px 9px;gap:7px}.portfolio-person .portfolio-field{font-size:12px}}
@media(max-width:360px){.hero .actions{grid-template-columns:1fr}.hero .actions .button{font-size:13px}}

/* Preserve the complete published model figure; no photographic cropping. */
.hero-project-frame{padding:16px;background:oklch(1 0 0);border:1px solid var(--line);border-radius:12px}.hero-project-frame>a{display:block;cursor:zoom-in;border-radius:4px}.hero-project-image{display:block;width:100%;height:auto;max-height:450px;object-fit:contain;object-position:center}.hero-project figcaption{padding-top:16px;line-height:1.75}.hero-project-category{display:block;color:var(--primary-ink);font-size:11px;font-weight:600}.hero-project-title{display:block;font-family:var(--display);font-size:16px;font-weight:500;line-height:1.6;color:var(--ink);text-decoration:none;margin-top:5px}.hero-project-title:hover{color:var(--primary-ink)}.hero-project-credit{display:block;margin-top:9px;font-size:11px;color:var(--muted)}.hero-project-credit a{color:inherit}
@media(max-width:900px){.hero-project-frame{padding:12px}.hero-project-title{font-size:14px}.hero-project-image{max-height:410px}}
@media(max-width:620px){.hero-project-frame{padding:14px}.hero-project-image{max-height:460px}.hero-project-title{font-size:16px}.hero-project-category{font-size:12px}}

/* Research previews keep each study recognizable even when its details are closed. */
.study-preview{display:block;width:120px;flex-shrink:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.study-preview img{display:block;width:100%;height:84px;object-fit:contain}
.ai-study-body{padding-left:145px;align-items:start}
.study-figure{margin:0 0 22px}
.study-figure>a{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;cursor:zoom-in}
.study-figure img{display:block;width:100%;height:240px;object-fit:contain}
.study-figure figcaption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:9px}
.study-figure figcaption a{color:inherit}
.study-code{padding-top:18px;margin-top:18px;border-top:1px solid var(--line)}
.study-code>a{color:var(--primary-ink);font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;gap:8px;align-items:center;min-height:40px}
.study-code>a:hover{text-decoration:underline}
.study-code p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:5px}
.research-code{padding-top:15px;padding-bottom:50px}
.code-mark{color:var(--primary-ink);font-family:var(--display);font-size:40px}
.research-code-list{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.research-code-list article{border-top:2px solid var(--line);padding-top:20px}
.research-code-list h3{font-size:20px;font-weight:500;line-height:1.6;margin:10px 0}
.research-code-list article>p:not(.role){font-size:14px;color:var(--muted);line-height:1.9;max-width:60ch}
.paper-preview{float:right;display:block;margin:0 0 14px 22px;background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.paper-preview img{display:block;width:150px;height:94px;object-fit:contain}
.paper-content:after{content:'';display:block;clear:both}
@media(max-width:900px){.ai-study-body{padding-left:0}.study-preview{width:100px}.study-preview img{height:72px}.study-figure img{height:220px}}
@media(max-width:620px){.study-preview{width:76px}.study-preview img{height:62px}.study-summary{gap:12px;align-items:center}.study-title h2{font-size:17px}.study-title>span{font-size:10px}.study-figure img{height:auto;max-height:300px}.research-code-list{grid-template-columns:1fr;gap:25px}.research-code{padding-bottom:35px}.research-code-list h3{font-size:19px}.code-mark{font-size:28px}.paper-preview{margin-left:14px}.paper-preview img{width:96px;height:72px}}

.paper-preview{width:150px;margin-top:0;margin-right:0}
.paper-preview a{display:block}
.paper-preview figcaption{font-size:9px;line-height:1.5;padding:5px 7px;text-align:center;color:#435867;background:#f1f5f5}
.research-jumps{display:flex;flex-wrap:wrap;gap:10px 25px;padding-top:4px;padding-bottom:25px;font-size:13px;color:var(--primary-ink)}
.research-jumps a{min-height:40px;display:inline-flex;align-items:center;text-underline-offset:5px}
.engineering-studies{padding-top:20px;padding-bottom:45px;scroll-margin-top:95px}
#ai-studies,#research-code{scroll-margin-top:95px}
.engineering-study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 28px}
.engineering-study-image{display:block;border-radius:8px;overflow:hidden;background:#f1f5f5}
.engineering-study-image img{display:block;width:100%;height:170px;object-fit:contain}
.engineering-study-grid .role{font-size:11px;margin-top:16px}
.engineering-study-grid h3{font-size:16px;font-weight:500;line-height:1.65;margin:7px 0 10px}
.engineering-study-grid h3 a{text-decoration:none}
.engineering-study-grid h3 a:hover{text-decoration:underline}
.engineering-study-grid article>p:not(.role){font-size:13px;color:var(--muted);line-height:1.85}
.engineering-studies>.source-note{margin-top:25px}
@media(max-width:900px){.engineering-study-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.paper-preview{width:96px}.paper-preview figcaption{font-size:8px;padding:4px}.engineering-study-grid{grid-template-columns:1fr;gap:28px}.engineering-study-image img{height:180px}.engineering-study-grid h3{font-size:17px}.research-jumps{gap:4px 16px;font-size:12px}.engineering-study-grid article>p:not(.role){font-size:14px}}
.portfolio-paper>time{align-self:start}

#partners{scroll-margin-top:90px}
.collaboration-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.collaboration-list article{border-top:2px solid var(--line);padding-top:20px}
.collaboration-list .role{font-size:11px}
.collaboration-list h3{font-size:21px;font-weight:500;line-height:1.5;margin:12px 0}
.collaboration-list article>p:not(.role){font-size:14px;color:var(--muted);line-height:1.9}
.collaboration-list .text-link{display:inline-block;font-size:12px;margin-top:14px;padding:8px 0}
#partners .source-note{margin-top:25px}
@media(max-width:620px){.collaboration-list{grid-template-columns:1fr;gap:25px}.collaboration-list h3{font-size:20px}}

/* Short homepage collections lead to focused, source-linked reading pages. */
.explore-section,.join-section{scroll-margin-top:95px}
.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.explore-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.explore-card{min-width:0;border-top:1px solid var(--line);padding:22px 0 8px;scroll-margin-top:105px}
.explore-card-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;margin-bottom:15px}
.explore-symbol svg{width:32px;height:32px;color:var(--primary-ink)}
.explore-card .role{font-size:11px;line-height:1.7}
.explore-card h2,.explore-card h3{font-size:21px;font-weight:500;line-height:1.5;margin:12px 0 15px}
.explore-card h3 a{text-decoration:none}
.explore-card h3 a:hover{text-decoration:underline}
.explore-description{font-size:14px;line-height:1.9;color:var(--muted)}
.explore-people{font-size:12px;color:var(--primary-ink);margin:18px 0 12px;line-height:1.8}
.explore-card>.text-link{display:inline-block;font-size:12px;padding:8px 0}
.explore-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:18px;padding-top:13px;border-top:1px solid var(--line)}
.collection-page{padding-bottom:55px}
.collection-index{display:flex;flex-wrap:wrap;gap:9px 20px;padding-bottom:30px;font-size:12px;color:var(--primary-ink)}
.collection-index a{display:inline-flex;align-items:center;min-height:36px;text-underline-offset:4px}
.collection-page>.source-note{margin:30px 0}
.collection-page .explore-card h2{font-size:25px}
.profile-resources{padding-top:28px}
.profile-resources h2{font-size:20px;margin-bottom:12px}
.profile-resources>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
.profile-resources a{padding:13px 0;border-bottom:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;gap:4px;font-size:13px}
.profile-resources a:hover span{text-decoration:underline}
.profile-resources small{font-size:11px;color:var(--muted)}
.join-section{background:var(--soft)}
.join-layout{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px}
.join-layout h2{font-size:32px;margin:10px 0 15px}
.join-layout p:not(.role){max-width:62ch;font-size:15px;color:var(--muted);line-height:1.9}
.join-options{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.join-options article{border-top:2px solid var(--line);padding-top:22px}
.join-options h2{font-size:25px;margin:12px 0 18px}
.join-options article>p:not(.role){font-size:15px;color:var(--muted);line-height:1.9}
.join-reading{padding-top:20px;border-top:1px solid var(--line)}
.join-reading h2{font-size:22px;margin-bottom:18px}
.join-reading>a{display:inline-block;margin:0 25px 12px 0;font-size:14px}
@media(min-width:901px){.header-inner{gap:15px}.navigation{gap:1px}.navigation a{padding:10px 8px;font-size:12px}}
@media(min-width:901px) and (max-width:1150px){.header-inner{flex-wrap:wrap}.js .menu-button{display:grid}.navigation{display:none;order:3;width:100%;margin:0;padding:10px 0 18px;flex-wrap:wrap}.navigation.is-open{display:flex}.header-actions{margin-left:auto}}
@media(max-width:900px){.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-grid .explore-card:last-child:nth-child(odd){grid-column:1/-1;max-width:65ch}.join-layout{grid-template-columns:1fr;gap:22px}.join-layout>.button{width:fit-content}}
@media(max-width:620px){.explore-grid,.explore-grid-two,.join-options,.profile-resources>div{grid-template-columns:1fr}.explore-grid{gap:22px}.explore-card{padding-top:20px}.explore-card h2,.explore-card h3,.collection-page .explore-card h2{font-size:22px}.join-layout h2{font-size:27px}.join-options{gap:30px}.home-people{grid-template-columns:repeat(2,minmax(0,1fr))}.home-people img{width:100%;max-width:145px}.home-people h3{font-size:14px}.home-people p{font-size:12px}.collection-index{display:grid;grid-template-columns:1fr;gap:3px}}


/* Modernized Elevated Visual System */
.site-header{position:sticky;top:0;z-index:20;background:color-mix(in oklch,var(--bg) 85%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in oklch,var(--line) 80%,transparent)}
.navigation a{padding:8px 12px;border-radius:8px;transition:background-color .15s ease,color .15s ease}
.navigation a:hover{background:var(--soft);color:var(--primary-ink)}
.navigation a[aria-current='page']{background:var(--soft);color:var(--primary-ink)}

/* Hero Section with Grid & Metrics */
.hero{position:relative;overflow:hidden;padding:85px 0 70px}
.hero-grid-pattern{position:absolute;inset:0;background-size:40px 40px;background-image:linear-gradient(to right,color-mix(in oklch,var(--line) 40%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in oklch,var(--line) 40%,transparent) 1px,transparent 1px);mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,#000 60%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,#000 60%,transparent 100%);pointer-events:none;opacity:.45}
[data-theme=dark] .hero-grid-pattern{opacity:.25}
.eyebrow-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:var(--soft);border:1px solid var(--line);border-radius:100px;font-size:12px;font-weight:600;color:var(--primary-ink);margin-bottom:22px;letter-spacing:.01em}
.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px color-mix(in oklch,var(--primary) 25%,transparent)}
.hero-metrics{display:flex;align-items:center;gap:18px;margin-top:32px;padding:12px 20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.02);width:fit-content}
.hero-metric{display:flex;flex-direction:column;gap:1px}
.hero-metric strong{font-family:var(--display);font-size:17px;font-weight:700;color:var(--ink);line-height:1.2}
.hero-metric span{font-size:11px;color:var(--muted);white-space:nowrap}
.hero-metric-sep{color:var(--line);font-size:15px;user-select:none}
.hero-visual{position:relative;margin:0}
.hero-photo-frame{position:relative;border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:0 14px 40px -12px rgba(0,0,0,0.08)}
[data-theme=dark] .hero-photo-frame{box-shadow:0 14px 40px -12px rgba(0,0,0,0.45)}
.hero-visual-badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;background:color-mix(in oklch,var(--bg) 90%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:100px;font-size:11px;font-weight:600;color:var(--ink)}
.hero-photo-tag{position:absolute;bottom:14px;right:14px;z-index:2;padding:5px 10px;background:rgba(0,0,0,0.75);color:#fff;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.05em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}

/* Modern Research Bento Grid */
.home-research-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:34px}
.research-bento-card{display:flex;flex-direction:column;padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:16px;text-decoration:none;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.research-bento-card:hover{transform:translateY(-3px);border-color:var(--primary-ink);box-shadow:0 14px 34px -10px rgba(0,0,0,0.07)}
[data-theme=dark] .research-bento-card:hover{box-shadow:0 14px 34px -10px rgba(0,0,0,0.35)}
.card-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.card-badge{display:inline-block;padding:4px 10px;background:var(--soft);color:var(--primary-ink);border:1px solid color-mix(in oklch,var(--line) 80%,transparent);border-radius:100px;font-size:11px;font-weight:600}
.card-year{font-size:12px;font-weight:600;color:var(--muted)}
.card-title{font-size:19px;font-weight:600;line-height:1.45;color:var(--ink);margin-bottom:10px}
.card-desc{font-size:13.5px;line-height:1.8;color:var(--muted);flex-grow:1;margin-bottom:18px}
.card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid var(--line);font-size:12px;font-weight:600;color:var(--primary-ink)}
.card-arrow{font-size:14px;transition:transform .2s ease}
.research-bento-card:hover .card-arrow{transform:translate(2px,-2px)}

/* Thematic Pillars */
.home-thematic-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:10px}
.thematic-pillar{display:flex;gap:14px;align-items:flex-start;padding:18px;background:var(--bg);border:1px solid var(--line);border-radius:12px}
.pillar-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--soft);color:var(--primary-ink);flex-shrink:0}
.pillar-icon svg{width:18px;height:18px}
.pillar-text strong{display:block;font-size:13px;line-height:1.4;margin-bottom:4px;color:var(--ink)}
.pillar-text p{font-size:11.5px;line-height:1.65;color:var(--muted);margin:0}

/* AI for Science / Computational Initiative Banner */
.section-feature{padding:40px 0}
.initiative-card{padding:42px 48px;background:radial-gradient(ellipse at 90% 10%,color-mix(in oklch,var(--primary) 8%,transparent) 0%,transparent 60%),var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 30px -10px rgba(0,0,0,0.04)}
[data-theme=dark] .initiative-card{background:radial-gradient(ellipse at 90% 10%,color-mix(in oklch,var(--primary) 14%,transparent) 0%,transparent 60%),var(--surface);box-shadow:0 8px 30px -10px rgba(0,0,0,0.3)}
.initiative-header{margin-bottom:16px}
.initiative-header h2{font-size:clamp(1.8rem,2.8vw,2.6rem);font-weight:500;line-height:1.3;margin-top:6px}
.initiative-desc{font-size:15px;line-height:1.85;color:var(--muted);max-width:85ch;margin-bottom:24px}
.initiative-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.tech-tag{display:inline-flex;padding:5px 12px;background:var(--bg);border:1px solid var(--line);border-radius:100px;font-size:12px;font-weight:600;color:var(--ink)}
.initiative-actions{display:flex;gap:14px;flex-wrap:wrap}

/* Modern Faculty Fellowship Cards */
.faculty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.faculty-card{display:flex;flex-direction:column;padding:16px;background:var(--bg);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.faculty-card:hover{transform:translateY(-4px);border-color:var(--primary-ink);box-shadow:0 12px 28px -8px rgba(0,0,0,0.08)}
[data-theme=dark] .faculty-card:hover{box-shadow:0 12px 28px -8px rgba(0,0,0,0.35)}
.faculty-photo-frame{position:relative;width:100%;aspect-ratio:1/1.18;border-radius:10px;overflow:hidden;background:var(--surface);margin-bottom:14px}
.faculty-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .3s ease}
.faculty-card:hover .faculty-photo-frame img{transform:scale(1.03)}
.faculty-body{display:flex;flex-direction:column;gap:6px;flex-grow:1}
.faculty-role-badge{font-size:11px;font-weight:600;color:var(--primary-ink)}
.faculty-name{font-size:15px;font-weight:600;line-height:1.45;color:var(--ink);margin:0}
.faculty-field{font-size:12px;line-height:1.6;color:var(--muted);margin:0;flex-grow:1}
.faculty-cta{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--primary-ink);margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}

/* Responsive Modernization */
@media(max-width:1100px){.faculty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-metrics{flex-wrap:wrap}}
@media(max-width:900px){.home-thematic-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.faculty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.home-research-grid{grid-template-columns:1fr}.home-thematic-pillars{grid-template-columns:1fr}.faculty-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.faculty-card{padding:12px}.faculty-name{font-size:13.5px}.initiative-card{padding:26px 20px}.hero-metrics{width:100%;gap:12px;padding:12px 14px}.hero-metric strong{font-size:15px}.hero-metric span{font-size:10px}}


/* ========================================================================= */
/* STRIKING MODERN SCIENTIFIC AI LAB STYLING (DEFAULT DARK EXPERIENCE)      */
/* ========================================================================= */

/* Deep Cosmic/Atmospheric Glow on Body */
[data-theme=dark] body {
  background-color: var(--bg);
  background-image:
    radial-gradient(ellipse 900px 500px at 80% -5%, color-mix(in oklch, var(--primary) 28%, transparent) 0%, transparent 65%),
    radial-gradient(circle 600px at 10% 25%, rgba(25, 90, 180, 0.14) 0%, transparent 55%),
    radial-gradient(ellipse 800px 600px at 50% 90%, color-mix(in oklch, var(--primary) 14%, transparent) 0%, transparent 70%);
  background-attachment: fixed;
}

/* Sticky Frosted Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  background: color-mix(in oklch, var(--bg) 82%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid color-mix(in oklch, var(--line) 70%, transparent);
  transition: background-color .2s ease, border-color .2s ease;
}

.brand-symbol {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 0 0 1px var(--line);
}

.navigation a {
  padding: 8px 14px;
  border-radius: 8px;
  font-weight: 500;
  font-size: 13.5px;
  color: var(--muted);
  transition: all .15s ease;
}
.navigation a:hover {
  color: var(--ink);
  background: var(--soft);
}
.navigation a[aria-current='page'] {
  color: var(--primary-ink);
  background: var(--soft);
  border: 1px solid color-mix(in oklch, var(--line) 80%, transparent);
}

/* Hero Section */
.hero {
  position: relative;
  overflow: hidden;
  padding: 90px 0 75px;
}

.hero-grid-pattern {
  position: absolute;
  inset: 0;
  background-size: 40px 40px;
  background-image:
    linear-gradient(to right, color-mix(in oklch, var(--line) 45%, transparent) 1px, transparent 1px),
    linear-gradient(to bottom, color-mix(in oklch, var(--line) 45%, transparent) 1px, transparent 1px);
  mask-image: radial-gradient(ellipse 75% 65% at 50% 30%, #000 50%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 75% 65% at 50% 30%, #000 50%, transparent 100%);
  pointer-events: none;
  opacity: 0.5;
}
[data-theme=dark] .hero-grid-pattern {
  opacity: 0.35;
}

.eyebrow-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 7px 16px;
  background: color-mix(in oklch, var(--surface) 85%, transparent);
  border: 1px solid color-mix(in oklch, var(--primary) 40%, var(--line));
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  color: var(--primary-ink);
  margin-bottom: 24px;
  box-shadow: 0 0 20px -4px color-mix(in oklch, var(--primary) 30%, transparent);
  backdrop-filter: blur(8px);
}

.eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--primary-ink);
  box-shadow: 0 0 10px currentColor;
}

.hero h1 {
  font-size: clamp(2.8rem, 5.2vw, 4.8rem);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.12;
  max-width: 750px;
}

[data-theme=dark] .hero h1 em {
  background: linear-gradient(135deg, oklch(0.92 0.10 25), oklch(0.76 0.16 20));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hero .intro {
  font-size: 17.5px;
  color: var(--muted);
  line-height: 1.85;
  max-width: 62ch;
  margin-top: 26px;
}

.hero .actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 32px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  padding: 11px 24px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all .2s cubic-bezier(0.16, 1, 0.3, 1);
}

.button.primary {
  background: linear-gradient(135deg, oklch(0.44 0.16 20), oklch(0.36 0.13 20));
  border: 1px solid oklch(0.52 0.17 20);
  color: #ffffff;
  box-shadow: 0 4px 20px -2px oklch(0.42 0.16 20 / 0.5), inset 0 1px 0 rgba(255,255,255,0.25);
}
.button.primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px -2px oklch(0.46 0.18 20 / 0.75), inset 0 1px 0 rgba(255,255,255,0.3);
}

.button:not(.primary) {
  background: color-mix(in oklch, var(--surface) 75%, transparent);
  border: 1px solid var(--line);
  color: var(--ink);
  backdrop-filter: blur(8px);
}
.button:not(.primary):hover {
  transform: translateY(-2px);
  border-color: var(--primary-ink);
  background: var(--soft);
  color: var(--primary-ink);
}

.hero-metrics {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 36px;
  padding: 14px 24px;
  background: color-mix(in oklch, var(--surface) 80%, transparent);
  border: 1px solid color-mix(in oklch, var(--line) 90%, transparent);
  border-radius: 14px;
  box-shadow: 0 8px 30px -8px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.06);
  backdrop-filter: blur(12px);
  width: fit-content;
}

.hero-metric {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.hero-metric strong {
  font-family: var(--display);
  font-size: 19px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.2;
}
.hero-metric span {
  font-size: 11px;
  color: var(--muted);
  white-space: nowrap;
}
.hero-metric-sep {
  color: var(--line);
  font-size: 16px;
  user-select: none;
}

/* Hero Visual (UAV / Satellite Viewfinder Frame) */
.hero-photo-frame {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: var(--surface);
  border: 1px solid color-mix(in oklch, var(--line) 90%, transparent);
  box-shadow: 0 20px 50px -15px rgba(0,0,0,0.6), 0 0 35px -10px color-mix(in oklch, var(--primary) 30%, transparent);
}

.hero-visual-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  background: color-mix(in oklch, var(--bg) 85%, transparent);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--line);
  border-radius: 100px;
  font-size: 11px;
  font-weight: 600;
  color: var(--ink);
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

.badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 8px #10b981;
}

.hero-photo-tag {
  position: absolute;
  bottom: 14px;
  right: 14px;
  z-index: 2;
  padding: 6px 12px;
  background: rgba(10, 15, 25, 0.85);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}

/* Research Bento Cards */
.home-research-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
  margin-bottom: 36px;
}

.research-bento-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 30px;
  background: linear-gradient(180deg, color-mix(in oklch, var(--surface) 95%, var(--bg)), var(--surface));
  border: 1px solid color-mix(in oklch, var(--line) 90%, transparent);
  border-radius: 20px;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 6px 24px -8px rgba(0,0,0,0.35);
  overflow: hidden;
  transition: all .25s cubic-bezier(0.16, 1, 0.3, 1);
}

.research-bento-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  height: 1px;
  background: linear-gradient(90deg, transparent, color-mix(in oklch, var(--line) 150%, transparent), transparent);
}

.research-bento-card:hover {
  transform: translateY(-4px);
  border-color: var(--primary-ink);
  box-shadow: 0 20px 48px -12px rgba(0,0,0,0.55), 0 0 32px -6px color-mix(in oklch, var(--primary) 35%, transparent);
}

.card-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.card-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  background: color-mix(in oklch, var(--primary) 15%, var(--soft));
  border: 1px solid color-mix(in oklch, var(--primary-ink) 45%, transparent);
  border-radius: 100px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--primary-ink);
}

.card-year {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--muted);
}

.card-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--ink);
  margin-bottom: 12px;
}

.card-desc {
  font-size: 14px;
  line-height: 1.85;
  color: var(--muted);
  flex-grow: 1;
  margin-bottom: 22px;
}

.card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 16px;
  border-top: 1px solid color-mix(in oklch, var(--line) 70%, transparent);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--primary-ink);
}

.card-arrow {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--soft);
  border: 1px solid var(--line);
  transition: transform .2s ease, background-color .2s ease;
}
.research-bento-card:hover .card-arrow {
  transform: translate(2px, -2px);
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
}

/* Thematic Pillars */
.home-thematic-pillars {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 12px;
}

.thematic-pillar {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 20px;
  background: color-mix(in oklch, var(--surface) 60%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 14px;
  transition: all .2s ease;
}
.thematic-pillar:hover {
  border-color: var(--primary-ink);
  transform: translateY(-2px);
}

.pillar-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: var(--soft);
  color: var(--primary-ink);
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.pillar-icon svg { width: 19px; height: 19px; }

/* AI Foundation Models Initiative Banner */
.section-feature {
  padding: 45px 0;
}

.initiative-card {
  position: relative;
  padding: 48px 52px;
  background: linear-gradient(135deg, color-mix(in oklch, var(--primary) 22%, var(--surface)), color-mix(in oklch, var(--surface) 95%, var(--bg)));
  border: 1px solid color-mix(in oklch, var(--primary) 50%, var(--line));
  border-radius: 24px;
  box-shadow: 0 20px 55px -15px rgba(0,0,0,0.55), 0 0 45px -10px color-mix(in oklch, var(--primary) 35%, transparent);
  overflow: hidden;
}

.initiative-header h2 {
  font-size: clamp(2rem, 3.2vw, 2.9rem);
  font-weight: 600;
  line-height: 1.25;
  margin-top: 8px;
  color: var(--ink);
}

.initiative-desc {
  font-size: 16px;
  line-height: 1.85;
  color: var(--muted);
  max-width: 85ch;
  margin: 18px 0 28px;
}

.initiative-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 32px;
}

.tech-tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  background: color-mix(in oklch, var(--bg) 80%, transparent);
  border: 1px solid color-mix(in oklch, var(--line) 90%, transparent);
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  color: var(--ink);
  backdrop-filter: blur(8px);
}

/* Modern Faculty Fellowship Cards */
.faculty-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.faculty-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 16px;
  background: linear-gradient(180deg, color-mix(in oklch, var(--surface) 90%, var(--bg)), var(--surface));
  border: 1px solid var(--line);
  border-radius: 18px;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 6px 20px -6px rgba(0,0,0,0.3);
  transition: all .25s cubic-bezier(0.16, 1, 0.3, 1);
}

.faculty-card:hover {
  transform: translateY(-5px);
  border-color: var(--primary-ink);
  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.55), 0 0 28px -6px color-mix(in oklch, var(--primary) 35%, transparent);
}

.faculty-photo-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1.18;
  border-radius: 12px;
  overflow: hidden;
  background: var(--surface);
  border: 1px solid var(--line);
  margin-bottom: 14px;
}

.faculty-photo-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  transition: transform .35s ease;
}

[data-theme=dark] .faculty-photo-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 65%, color-mix(in oklch, var(--surface) 60%, transparent) 100%);
  pointer-events: none;
}

.faculty-card:hover .faculty-photo-frame img {
  transform: scale(1.04);
}

.faculty-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex-grow: 1;
}

.faculty-role-badge {
  font-size: 11px;
  font-weight: 600;
  color: var(--primary-ink);
}

.faculty-name {
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.45;
  color: var(--ink);
  margin: 0;
}

.faculty-field {
  font-size: 12.5px;
  line-height: 1.6;
  color: var(--muted);
  margin: 0;
  flex-grow: 1;
}

.faculty-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--primary-ink);
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
  transition: gap .15s ease;
}
.faculty-card:hover .faculty-cta {
  gap: 10px;
}

/* Responsive Modernization */
@media(max-width:1100px) {
  .faculty-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hero-metrics { flex-wrap: wrap; }
}
@media(max-width:900px) {
  .home-thematic-pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .faculty-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media(max-width:620px) {
  .home-research-grid { grid-template-columns: 1fr; }
  .home-thematic-pillars { grid-template-columns: 1fr; }
  .faculty-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .faculty-card { padding: 12px; }
  .faculty-name { font-size: 13.5px; }
  .initiative-card { padding: 28px 22px; }
  .hero-metrics { width: 100%; gap: 12px; padding: 12px 14px; }
  .hero-metric strong { font-size: 16px; }
  .hero-metric span { font-size: 10px; }
}



/* Complete Elevated Card System */
.explore-card {
  min-width: 0;
  background: color-mix(in oklch, var(--surface) 90%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 4px 20px -6px rgba(0,0,0,0.3);
  display: flex;
  flex-direction: column;
  transition: all .25s cubic-bezier(0.16, 1, 0.3, 1);
}
.explore-card:hover {
  transform: translateY(-4px);
  border-color: var(--primary-ink);
  box-shadow: 0 18px 40px -10px rgba(0,0,0,0.55), 0 0 28px -6px color-mix(in oklch, var(--primary) 30%, transparent);
}

.portfolio-paper {
  background: color-mix(in oklch, var(--surface) 80%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 28px;
  margin-bottom: 22px;
  box-shadow: 0 4px 18px -6px rgba(0,0,0,0.25);
  transition: all .2s ease;
}
.portfolio-paper:hover {
  border-color: var(--primary-ink);
  transform: translateY(-2px);
  box-shadow: 0 14px 34px -8px rgba(0,0,0,0.45);
}

.paper-links a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: var(--soft);
  border: 1px solid color-mix(in oklch, var(--line) 80%, transparent);
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  color: var(--primary-ink);
  transition: all .15s ease;
}
.paper-links a:hover {
  background: var(--primary);
  color: #ffffff;
  border-color: var(--primary);
}

.news-item {
  background: color-mix(in oklch, var(--surface) 85%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 4px 18px -6px rgba(0,0,0,0.25);
  transition: all .2s ease;
}
.news-item:hover {
  border-color: var(--primary-ink);
  transform: translateY(-3px);
  box-shadow: 0 16px 36px -8px rgba(0,0,0,0.45);
}
.news-item img {
  border-radius: 12px;
}

.collaboration-list article {
  background: color-mix(in oklch, var(--surface) 85%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 4px 18px -6px rgba(0,0,0,0.25);
  transition: all .2s ease;
}
.collaboration-list article:hover {
  border-color: var(--primary-ink);
  transform: translateY(-3px);
  box-shadow: 0 16px 36px -8px rgba(0,0,0,0.45);
}



/* ══ Reading Progress Bar ══ */
.reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0;
  background: linear-gradient(90deg, var(--primary), var(--accent));
  z-index: 100;
  pointer-events: none;
  transition: width 0.1s linear;
}

/* ══ Copy Citation Button ══ */
.btn-copy-cite {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 12px;
  background: var(--soft);
  border: 1px solid color-mix(in oklch, var(--line) 90%, transparent);
  border-radius: 100px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--muted);
  cursor: pointer;
  transition: all 0.15s ease;
}
.btn-copy-cite:hover {
  background: var(--surface);
  color: var(--primary-ink);
  border-color: var(--primary-ink);
}
.btn-copy-cite.is-copied {
  background: #10b981;
  color: #ffffff;
  border-color: #10b981;
}



/* ══ Elevated Modern Navbar ══ */
.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  background: color-mix(in oklch, var(--bg) 85%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid color-mix(in oklch, var(--line) 75%, transparent);
  box-shadow: 0 4px 20px -8px rgba(0, 0, 0, 0.05);
  transition: all .2s ease;
}
[data-theme=dark] .site-header {
  box-shadow: 0 4px 24px -8px rgba(0, 0, 0, 0.4);
}

.header-inner {
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  flex-shrink: 0;
}

.brand-symbol {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid var(--line);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
  position: relative;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.brand-symbol img {
  height: 48px;
  width: 160px;
  max-width: none;
  position: absolute;
  left: -2px;
  top: -2px;
}

.brand-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.brand-copy strong {
  display: inline-block;
  font-family: var(--display);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--ink);
}
.brand-tag {
  display: inline-block;
  padding: 2px 7px;
  background: color-mix(in oklch, var(--primary) 12%, var(--soft));
  border: 1px solid color-mix(in oklch, var(--primary-ink) 35%, transparent);
  border-radius: 100px;
  font-size: 10px;
  font-weight: 700;
  color: var(--primary-ink);
  letter-spacing: .06em;
}
.brand-copy small {
  display: block;
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.5;
  font-weight: 500;
  margin-top: 1px;
}

/* Modern Segmented Navigation Dock */
.navigation {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 4px 6px;
  background: color-mix(in oklch, var(--surface) 85%, var(--bg));
  border: 1px solid var(--line);
  border-radius: 100px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.navigation a {
  padding: 7px 14px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  color: var(--muted);
  white-space: nowrap;
  transition: all .15s ease;
}
.navigation a:hover {
  color: var(--ink);
  background: color-mix(in oklch, var(--line) 45%, transparent);
}
.navigation a[aria-current="page"] {
  color: #ffffff !important;
  background: var(--primary) !important;
  font-weight: 600;
  box-shadow: 0 2px 10px color-mix(in oklch, var(--primary) 40%, transparent);
}
.navigation a.nav-highlight {
  color: var(--primary-ink);
  font-weight: 600;
}
.navigation a.nav-highlight:hover {
  background: color-mix(in oklch, var(--primary) 12%, var(--soft));
}

/* Actions */
.header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.language-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  border-radius: 100px;
  background: var(--surface);
  border: 1px solid var(--line);
  font-size: 12px;
  font-weight: 700;
  color: var(--ink);
  text-decoration: none;
  transition: all .15s ease;
}
.language-pill:hover {
  border-color: var(--primary);
  color: var(--primary-ink);
  transform: translateY(-1px);
}
.icon-button {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 100px;
  background: var(--surface);
  color: var(--ink);
  transition: all .15s ease;
}
.icon-button:hover {
  border-color: var(--primary);
  color: var(--primary-ink);
  transform: translateY(-1px);
}
