/* Personal website adapted from Jon Barron; project pages adapted from Academic Project Page Template. See TEMPLATE_CREDITS.md. */
:root{--ink:#202124;--text:#333;--muted:#666;--green:#1772d0;--pale:#f4f7fb;--line:#e3e6eb}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:white}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible{outline:3px solid #efad40;outline-offset:4px}.skip-link{position:absolute;top:-100px;left:10px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:10px}.site-header{max-width:840px;margin:0 auto;padding:20px 20px 4px}.site-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px}.site-nav a{font-size:14px}.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.home-shell,.page-shell{max-width:840px;margin:0 auto;padding:20px}.personal-site{color:#222;line-height:1.55}.personal-site p{margin:12px 0}.personal-site h1{font-size:30px;font-weight:400}.personal-site h2{font-size:22px;font-weight:400;margin:24px 0 12px}.personal-site h3{font-size:15px;margin:0 0 6px}.profile-table,.research-list{width:100%;border:0;border-spacing:0;border-collapse:separate}.profile-copy{width:68%;padding:18px 22px 18px 0;vertical-align:middle}.profile-copy .name{text-align:center;font-size:32px;margin:0 0 16px;padding:0}.name span{font-size:19px;color:#555;white-space:nowrap}.profile-photo-cell{width:32%;vertical-align:middle;text-align:center}.profile-portrait{display:block;width:180px;height:auto;margin:0 auto;border-radius:4px}.portrait-note{font-size:12px!important;color:#666}.profile-links{text-align:center}.research-list{border-spacing:0 14px}.research-thumb{width:27%;padding:12px 20px 12px 0;vertical-align:middle}.research-thumb>a{display:block}.research-thumb img{width:100%;max-height:190px;object-fit:contain;display:block}.research-summary{padding:12px 0;vertical-align:middle}.research-summary p{margin:4px 0 8px}.research-summary h3{margin:0 0 7px}.research-status{color:#595959}.research-authors,.research-status{font-size:13px!important}.research-list .sensing-card-visual{padding:0;gap:5px;min-height:100px}.research-list .sensing-card-visual img{height:110px;width:100%;object-fit:contain}.home-publications,.home-background{margin-top:25px}.page-heading{margin-bottom:24px}.page-heading h1{margin:15px 0}.site-footer{max-width:840px;margin:32px auto 0;padding:24px 20px 32px;border-top:1px solid #eee;text-align:center;color:#666}.site-footer p,.site-footer a{font-size:12px;line-height:1.6}.template-credit{margin-top:16px!important;font-size:11px!important}.template-credit a{font-size:11px}.publication-group,.timeline-entry,.prose-section,.talks,.cv-panel{margin:30px 0}.section-label{display:flex;align-items:baseline;gap:15px}.section-label span,.publication-type,.eyebrow,.muted{font-size:12px;color:#777}.publication{margin:20px 0 28px}.publication h3{font-size:15px}.presentation-list{padding-left:18px}.presentation-list li{margin-bottom:18px}.year{color:#777;font-size:12px}.about-links,.skills-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.about-links{grid-template-columns:repeat(3,minmax(0,1fr));margin:25px 0}.about-links h2{font-size:18px;margin:6px 0}.contact-email{overflow-wrap:anywhere}.contact-links,.cv-actions{display:flex;gap:18px;flex-wrap:wrap}.file-type{font-size:10px}.personal-site .button{display:inline-block;padding:8px 14px;border:1px solid #ccc;border-radius:4px}.spaced-list li{margin:10px 0}
.academic-project .site-header{max-width:1000px;padding-top:22px}.academic-project .site-nav a{color:#2563eb}.project-detail{max-width:1060px;margin:0 auto;padding:0 30px 55px}.article-content{font-size:16px;line-height:1.8}.article-content p{margin:0 0 22px}.article-content h2{font-size:28px;font-weight:650;margin:46px 0 18px;color:#1e293b;line-height:1.3}.article-content h3{font-size:21px;font-weight:600;margin:32px 0 18px;line-height:1.4}.article-content ul{list-style:disc;margin:0 0 24px;padding-left:25px}.article-content li{padding-left:4px;margin:9px 0}.article-content>p>img,.research-panel>p>img{display:block;max-width:100%;width:100%;object-fit:contain;margin:24px auto 12px;background:#fff}.article-content p:has(>em:only-child){font-size:13px;color:#64748b}.article-content .project-hero .hero-body{padding:42px 0 30px}.article-content .publication-title{font-size:clamp(2rem,4.2vw,3rem);margin-bottom:24px!important;letter-spacing:-.025em}.project-number{font-size:12px;letter-spacing:.15em;color:#64748b;margin-bottom:18px!important}.publication-authors{line-height:1.8}.project-affiliation{font-size:16px;line-height:1.6;margin:15px 0!important;color:#64748b}.project-status{font-size:14px;font-weight:600;color:#475569;margin:12px 0!important}.academic-project .publication-links{display:flex;justify-content:center;gap:5px;flex-wrap:wrap}.academic-project .publication-links .button{font-size:14px}.article-end{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid #e2e8f0;margin-top:40px;padding-top:24px;font-size:14px}.section-anchor{display:block;scroll-margin-top:25px}.academic-project .site-footer{max-width:1000px}.article-content>table{width:100%;border-collapse:collapse;margin:25px 0}.article-content>table td,.article-content>table th{padding:10px;border-bottom:1px solid #e2e8f0;text-align:left}.article-content>table th{background:#f8fafc}
@media(max-width:600px){.home-shell,.page-shell{padding:14px 20px}.profile-table,.profile-table tbody,.profile-table tr,.profile-copy,.profile-photo-cell{display:block;width:100%}.profile-copy{padding:12px 0}.profile-photo-cell{padding:8px 0 22px}.profile-portrait{width:150px}.research-thumb{width:32%;padding-right:14px}.research-summary,.research-summary p,.research-summary a,.research-summary strong{font-size:13px}.research-list .sensing-card-visual{grid-template-columns:1fr}.research-list .sensing-card-visual img{height:70px}.site-nav{gap:8px 15px}.about-links,.skills-grid,.contact-grid{grid-template-columns:1fr}.project-detail{padding:0 20px 40px}.article-content .project-hero .hero-body{padding-top:35px}.article-content h2{font-size:25px}.article-content h3{font-size:20px}.academic-project .publication-authors{font-size:17px!important}.article-content{font-size:15px}.site-footer{margin-top:15px}}
/* Research figures, project tabs and paired overview layouts. */
.article-content .research-figure{margin:24px 0 32px;min-width:0;background:#fff}
.article-content .research-figure img{width:100%;height:auto;max-height:none;object-fit:contain;border:1px solid var(--line);padding:10px;background:#fff}
.article-content .research-figure figcaption{font-size:13px;line-height:1.65;color:var(--muted);padding:12px 0 0}
.article-content .research-figure figcaption a{white-space:nowrap}
.research-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;margin:26px 0}
.article-content .research-split .research-figure{margin:0}
.research-split>div{min-width:0}
.sensing-overview{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:center}
.article-content .sensing-overview .research-figure img{height:290px;object-fit:contain}
.sensing-card-visual{height:100%;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:8px;align-items:center;padding:12px;background:white}
.project-image.airdome-sensing .sensing-card-visual img{padding:0;width:100%;height:100%;object-fit:contain}
.article-content .geometry-overview{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr)}
.table-scroll{overflow-x:auto;max-width:100%;margin:0 0 16px}
.article-content .table-scroll table{width:100%;border-collapse:collapse;font-size:14px;margin:0}
.article-content .table-scroll th,.article-content .table-scroll td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.article-content .table-scroll th{background:var(--pale);color:var(--ink);font-weight:600}
.article-content .table-scroll caption{text-align:left;font-weight:600;color:var(--green);padding-bottom:12px;line-height:1.5}
.article-content .geometry-table table{font-size:11px;line-height:1.5}
.article-content .geometry-table th,.article-content .geometry-table td{padding:8px 5px;white-space:nowrap}
.figure-note{font-size:12px;line-height:1.7;color:var(--muted)}
.spectra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.article-content .spectra-grid .research-figure{margin:12px 0}
.ground-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.article-content .ground-grid .research-figure{margin:10px 0 25px}
.research-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:30px 0 36px;padding:12px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.research-tabs a{padding:12px 10px;text-align:center;text-decoration:none;font-size:13px;font-weight:600;line-height:1.5;border:1px solid var(--line);border-radius:4px}
.research-tabs a[aria-selected=true]{background:var(--green);border-color:var(--green);color:#fff}
.research-tabs a:hover{background:var(--pale);color:var(--green)}
.research-panel[hidden]{display:none!important}
.research-panel{scroll-margin-top:110px}
.research-panel>h2:first-child{margin-top:0}
.reservoir-intro{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center}
.article-content .reservoir-intro img{max-height:440px}
@media(max-width:780px){.research-split,.article-content .geometry-overview,.sensing-overview,.reservoir-intro{grid-template-columns:1fr}.research-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.spectra-grid{grid-template-columns:1fr}.article-content .sensing-overview .research-figure img{height:auto;max-height:360px}.ground-grid{gap:8px}.article-content .ground-grid figcaption{font-size:11px}.article-content .ground-grid img{padding:3px}.article-content .table-scroll table{font-size:12px}.article-content .geometry-table table{font-size:11px}}

/* September 24: larger research titles and compact visual topic selection. */
.personal-site h2{font-size:27px}.personal-site h3{font-size:19px}.research-summary h3 .papertitle{font-size:20px;line-height:1.35;display:inline-block}.personal-site .name{font-size:36px}.article-content .publication-title{font-size:clamp(2.2rem,4.5vw,3.35rem)}.article-content h2{font-size:31px}.article-content h3{font-size:23px}
.research-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border:0;padding:0;margin:25px 0}.research-cards a{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:12px;border:1px solid #dbe2eb;border-radius:8px;background:#fff}.research-cards a img{width:100%;height:145px;object-fit:contain;display:block;margin-bottom:10px;background:#f8fafc}.research-cards .topic-label{font-size:19px;font-weight:650;line-height:1.4}.topic-summary{font-size:13px;font-weight:400;line-height:1.5;margin:5px 0}.topic-status{font-size:11px;font-weight:400;line-height:1.4;opacity:.8}.research-cards a[aria-selected=true]{background:#edf4ff;color:#174b88;border:2px solid #1772d0;padding:11px}.topic-prompt{color:#64748b;font-size:14px;text-align:center}.research-panel[hidden],.topic-prompt[hidden],.figure-carousel img[hidden]{display:none!important}
.figure-carousel{width:100%}.carousel-link{display:block;height:170px}.research-thumb .carousel-link img{width:100%;height:170px;object-fit:contain}.carousel-controls{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:center;margin-top:9px}.carousel-controls button{background:#fff;border:1px solid #cbd5e1;border-radius:3px;padding:3px 6px;font-size:11px;cursor:pointer;color:#244569}.carousel-controls button[aria-pressed=true]{background:#1772d0;color:#fff;border-color:#1772d0}.carousel-label{font-size:11px;color:#64748b;margin-right:3px}.about-section{margin:32px 0}.skill-evidence{display:grid;grid-template-columns:1fr 1fr;gap:18px}.skill-evidence article{border-top:1px solid #ddd;padding:16px 0}.skill-evidence h3{margin:0 0 8px}.skill-evidence p{margin:8px 0}.course-list{padding-left:20px}.course-list li{margin:12px 0}.course-note{color:#666;font-size:12px}
@media(max-width:600px){.research-summary h3 .papertitle{font-size:18px}.research-thumb{width:35%}.research-cards{gap:10px}.research-cards a{padding:9px}.research-cards a[aria-selected=true]{padding:8px}.research-cards a img{height:100px}.research-cards .topic-label{font-size:16px}.topic-summary{font-size:12px}.carousel-link,.research-thumb .carousel-link img{height:145px}.article-content h2{font-size:27px}.article-content h3{font-size:21px}.skill-evidence{grid-template-columns:1fr}}
.article-content .sensing-overview{grid-template-columns:minmax(0,2.25fr) minmax(0,1fr);align-items:center}.article-content .sensing-overview .research-figure:first-child img{height:auto;max-height:none}.article-content .sensing-overview .research-figure:last-child img{height:auto;max-height:330px}.course-list [lang=ko]{font-size:12px;color:#64748b;overflow-wrap:anywhere}.skill-evidence ul{padding-left:20px}.skill-evidence li{margin:8px 0}@media(max-width:780px){.article-content .sensing-overview{grid-template-columns:1fr}}
.project-funding{margin-top:35px;padding-top:8px;border-top:1px solid #e2e8f0}.funding-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.article-content .funding-grid h3{font-size:20px;margin-top:12px}.funding-grid p{font-size:14px;line-height:1.75}@media(max-width:600px){.funding-grid{grid-template-columns:1fr;gap:8px}}
.research-cards.three-topics{grid-template-columns:repeat(3,minmax(0,1fr))}.study-header{margin:28px 0 24px;padding-bottom:18px;border-bottom:1px solid #e2e8f0}.article-content .study-header h2{margin:12px 0 18px;font-size:30px}.study-number{font-size:13px;color:#1772d0;font-weight:600}.study-authors{font-size:18px}.study-author-note,.study-affiliations{font-size:13px;color:#64748b}.study-affiliations{margin-bottom:18px}.study-affiliations summary{cursor:pointer;color:#1772d0}.study-affiliations p{margin-top:10px}.canopy-panels{max-width:650px;margin-left:auto!important;margin-right:auto!important}.canopy-excerpt{display:block;width:100%;height:auto;overflow:hidden;background:#fff}@media(max-width:600px){.research-cards.three-topics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.research-cards.three-topics .topic-label{font-size:13px}.research-cards.three-topics .topic-summary{display:none}.research-cards.three-topics img{height:76px}.research-cards.three-topics .topic-status{font-size:10px}.article-content .study-header h2{font-size:25px}}

/* Compact greenhouse figures; original files remain available at full size. */
.article-content #greenhouse .research-figure{max-width:620px;margin-left:auto;margin-right:auto}
.article-content #greenhouse .canopy-panels{max-width:400px}

.article-content #reservoir .research-figure{max-width:760px;margin-left:auto;margin-right:auto}

/* Smaller figures throughout research detail pages, without cropping. */
.academic-project .article-content .research-figure{max-width:640px;margin-left:auto;margin-right:auto}
.academic-project .article-content .research-figure img,
.academic-project .article-content .sensing-overview .research-figure:first-child img,
.academic-project .article-content .sensing-overview .research-figure:last-child img,
.academic-project .article-content>p>img,
.academic-project .research-panel>p>img{display:block;width:auto;max-width:100%;height:auto;max-height:400px;object-fit:contain;margin-left:auto;margin-right:auto;background:#fff}
.academic-project .article-content .sensing-overview{max-width:760px;margin-left:auto;margin-right:auto}
.article-content #reservoir .research-figure{max-width:640px}
.research-thumb .harvesting-card-visual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:center;background:#fff}
.research-thumb .harvesting-card-visual img{display:block;width:100%;height:auto;max-height:150px;object-fit:contain;background:#fff}
@media(max-width:600px){.academic-project .article-content .research-figure img,.academic-project .article-content .sensing-overview .research-figure:first-child img,.academic-project .article-content .sensing-overview .research-figure:last-child img,.academic-project .article-content>p>img,.academic-project .research-panel>p>img{max-height:300px}.academic-project .canopy-excerpt{max-height:300px}.research-thumb .harvesting-card-visual{gap:3px}}

/* A single slide-like reservoir overview, with readable stacking on phones. */
.reservoir-sheet{margin:28px auto 20px;padding:22px 24px;background:#fff;border:1px solid #dce5e8;border-top:4px solid #278f86;border-radius:3px;color:#203944}
.article-content .rs-header h2{font-size:26px;margin:4px 0 7px;line-height:1.25}.article-content .rs-header .study-number{margin:0;font-size:12px}.article-content .rs-parent{font-size:11px;line-height:1.5;color:#64748b;margin:0 0 14px}.article-content .rs-sites-intro{font-size:13px;line-height:1.6;margin:0 0 16px}
.rs-top{display:grid;grid-template-columns:1fr 1.1fr .7fr;gap:20px;align-items:center}.rs-schedule table{width:100%;font-size:12px;border-collapse:collapse;line-height:1.4}.rs-schedule caption{text-align:left;color:#203944;font-weight:650;font-size:13px;padding-bottom:8px}.rs-schedule th,.rs-schedule td{border:1px solid #d4dde0;padding:8px 5px;text-align:center;vertical-align:middle}.rs-schedule thead th{background:#263f4b;color:#fff;font-weight:600}.rs-dry th{background:#f9e4d7}.rs-wet th{background:#dcebf6}.rs-schedule td{background:#fff}
.article-content .rs-equipment,.article-content .rs-field{margin:0;min-width:0;background:#fff}.rs-device-labels{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:650;line-height:1.35;text-align:center}.rs-equipment svg{display:block;width:100%;height:170px;overflow:hidden;background:#fff}.rs-equipment figcaption,.rs-field figcaption{font-size:10px;line-height:1.5;text-align:center;color:#526470;padding-top:5px}.rs-field img{display:block;width:100%;height:215px;object-fit:contain;background:#fff}
.article-content .rs-band{font-size:14px;font-weight:650;color:#fff;background:#263f4b;margin:17px 0 10px;padding:8px 12px;line-height:1.4}.rs-site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.article-content .rs-site h4{font-size:15px;color:#3b5d2c;font-weight:650;text-align:center;margin:0 0 8px;line-height:1.4}.rs-site-images{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.45fr);gap:9px;align-items:start}.rs-map{position:relative;width:100%;line-height:0}.rs-map img{width:100%;height:auto;display:block;background:#fff}.rs-map-key{position:absolute;left:1%;top:1%;width:46%;padding:3px 4px;background:#102026;font-size:8px;line-height:12px;color:#fff;pointer-events:none}.rs-map-key span{display:block;white-space:nowrap;color:var(--route-colour)}.rs-map-key span::before{content:'━ ';font-weight:800}.rs-map-point{position:absolute;color:#fff;font-size:15px;line-height:1;font-weight:750;text-shadow:0 1px 4px #000;pointer-events:none}.rs-ground-images{display:grid;gap:4px;min-width:0}.rs-ground-images a{position:relative;display:block;line-height:0;background:#fff}.rs-ground-images img{display:block;width:100%;height:auto}.rs-ground-images span{position:absolute;top:3px;left:5px;color:white;font-size:12px;line-height:1;font-weight:750;text-shadow:0 1px 3px #000}.article-content .rs-output{font-size:11px;line-height:1.6;margin:12px 0 0;padding-top:10px;border-top:1px solid #dce5e8;color:#526470}.reservoir-image-examples{margin:15px 0 28px}.reservoir-image-examples summary{color:#1772d0;font-size:14px;cursor:pointer}.reservoir-image-examples>p{font-size:13px;margin-top:16px}
@media(max-width:780px){.reservoir-sheet{padding:18px 16px}.rs-top{gap:12px;grid-template-columns:1fr 1fr}.rs-schedule{grid-column:1/-1}.rs-site-grid{grid-template-columns:1fr;gap:20px}.rs-field img{height:185px}.rs-equipment svg{height:155px}.rs-map-key{font-size:9px;line-height:13px}.article-content .rs-header h2{font-size:23px}.rs-site-images{max-width:480px;margin:auto}.rs-schedule table{font-size:12px}}
@media print{.reservoir-sheet{break-inside:avoid}.reservoir-image-examples:not([open]){display:none}}

.reservoir-sheet{padding:18px 24px}.rs-schedule th,.rs-schedule td{padding:5px}.rs-field img{height:190px}.rs-equipment svg{height:160px}.rs-site-images{max-width:360px;margin-left:auto;margin-right:auto}.rs-map-key{height:13%}.rs-site:last-child .rs-map-key{height:20%;width:49%}
@media(max-width:780px){.reservoir-sheet{padding:18px 16px}.rs-field img{height:180px}.rs-site-images{max-width:360px}.rs-map-key{font-size:8px;line-height:11px}}

/* Map labels use the centres of the original slide text boxes. */
.rs-map-point{transform:translate(-50%,-50%)}
.article-content .reservoir-image-examples h3{font-size:21px;margin:24px 0 8px}

.article-content .publication-title.xpile-paper-title{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.3}.article-content .paper-original-title{font-size:13px;line-height:1.6;color:#64748b;margin:14px 0 0}.article-content .paper-title-note{font-size:12px;color:#64748b;margin:8px 0 0}.profile-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 10px}.profile-links a{overflow-wrap:anywhere}

/* Homepage CV download and direct contact. */
.personal-site .profile-actions{margin:24px 0 4px;gap:14px 20px}
.personal-site .cv-download,.personal-site .cv-download:visited{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 15px;border:1px solid #194e84;border-radius:999px;background:#194e84;color:#fff;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;box-shadow:0 3px 9px rgba(25,78,132,.12);transition:background .16s ease,box-shadow .16s ease,transform .16s ease;white-space:nowrap}
.personal-site .cv-download:hover{background:#123c68;border-color:#123c68;color:#fff;box-shadow:0 5px 13px rgba(25,78,132,.2);transform:translateY(-1px)}.personal-site .cv-download:active{transform:translateY(0);box-shadow:none}.cv-download svg{flex:none}.cv-format{font-size:9px;font-weight:500;letter-spacing:.04em;border-left:1px solid rgba(255,255,255,.3);padding-left:9px;opacity:.9}
.profile-contact{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;max-width:100%;font-size:12px;line-height:1.5}.contact-label{color:#6b7280;white-space:nowrap}.email-marker{display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;height:22px;border-radius:50%;border:1px solid #d9e5ef;background:#f3f7fb;color:#194e84;font-size:11px;font-weight:600}.personal-site .profile-contact a{font-size:12px;color:#24527b;text-decoration:none}.personal-site .profile-contact a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.personal-site .profile-actions{flex-direction:column;gap:6px;margin-top:20px}.profile-contact{min-height:36px}}
@media(prefers-reduced-motion:reduce){.personal-site .cv-download{transition:none}.personal-site .cv-download:hover{transform:none}}

/* Pair response curves with the corresponding plastic-zone figure. */
.uplift-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px;max-width:850px;margin:20px auto 22px}
.academic-project .article-content .uplift-results-grid .research-figure{margin:0;max-width:100%}
.academic-project .article-content .uplift-results-grid .research-figure img{height:auto;width:auto;max-width:100%;max-height:260px;margin:0 auto;padding:6px}
.academic-project .article-content .uplift-results-grid figcaption{font-size:12px;line-height:1.5;padding-top:8px}
@media(max-width:600px){.uplift-results-grid{grid-template-columns:1fr;gap:18px;max-width:330px}.academic-project .article-content .uplift-results-grid .research-figure img{max-height:220px}}

/* Profile and study presentation, September 2026. */
.profile-portrait{width:160px}
@media(max-width:600px){.profile-portrait{width:135px}}
.home-research-band{background:#f6f7f9;border-top:1px solid #e8ebee;padding:4px 0 22px}.profile-photo-cell .cv-download{margin:16px auto 0;display:inline-flex}.profile-photo-cell .cv-format{font-size:10px}.profile-contact{justify-content:center}
.article-content #greenhouse .canopy-triptych{max-width:800px}.canopy-panel-row{display:grid;grid-template-columns:1fr 1fr 3.6fr;gap:8px;align-items:start}.canopy-panel-row .canopy-excerpt{width:100%;height:auto;max-height:none}
.article-content #reservoir .reservoir-sheet{border:0;border-radius:0;padding:0;background:none;color:inherit;margin:28px 0 20px}.article-content #reservoir .study-header h2{font-size:30px}.article-content .rs-sites-intro,.article-content .rs-route-note,.article-content .rs-output{font-size:15px;line-height:1.65}.article-content .rs-output{border:0;padding:0;margin:10px 0 20px;color:inherit}.article-content .rs-dataset-title{font-size:24px;margin:26px 0 10px}.article-content .rs-route-note{margin:0 0 16px;color:#526470}
@media(max-width:600px){.article-content #reservoir .study-header h2{font-size:25px}.canopy-panel-row{gap:4px}.article-content .rs-dataset-title{font-size:22px}}

/* Research headings and enlarged plastic-zone figures. */
.article-content .publication-title.paper-long-title{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.3}
.article-content .result-figure-label{font-size:13px;line-height:1.5;color:#667085;margin:8px 0 16px}
.article-content .muted-funding{background:#f5f6f7;color:#667085;padding:24px;border-radius:6px;margin-top:40px}
.article-content .muted-funding h2,.article-content .muted-funding h3,.article-content .muted-funding strong,.article-content .muted-funding p{color:#667085}
.uplift-results-grid.expanded-plastic-zones{grid-template-columns:minmax(0,1fr);max-width:950px;gap:28px}
.academic-project .article-content .expanded-plastic-zones .research-figure:first-child{width:100%;max-width:520px;margin:auto}
.academic-project .article-content .expanded-plastic-zones .research-figure:first-child img{width:100%;max-height:none;padding:0}
.academic-project .article-content .expanded-plastic-zones .research-figure:nth-child(2){width:100%;max-width:950px;margin:auto}
.academic-project .article-content .expanded-plastic-zones .research-figure:nth-child(2) img{width:100%;height:auto;max-height:none;padding:0}
@media(max-width:600px){.article-content .muted-funding{padding:18px}.uplift-results-grid.expanded-plastic-zones{max-width:100%;gap:20px}}

/* Keep contact details directly below the profile CV button. */
.profile-photo-cell .profile-contact{flex-direction:column;gap:3px;margin:14px auto 0;min-height:0}.profile-photo-cell .contact-label{font-size:11px}.profile-photo-cell .profile-contact a{font-size:12px;overflow-wrap:anywhere}

.academic-project .article-content #greenhouse .study-number,.academic-project .article-content #reservoir .study-number,.academic-project .article-content #phenotyping .study-number{font-size:24px;line-height:1.35;font-weight:600;margin:0 0 14px}
.academic-project .article-content .research-figure,.academic-project .article-content .research-figure>a{background:#fff}
.academic-project .article-content .tomato-wide-figure{max-width:820px;width:100%;background:#fff}
.academic-project .article-content .tomato-wide-figure img{width:100%;height:auto;max-height:none;padding:0;background:#fff}
.article-content .method-equation{margin:20px 0;padding:12px 0;background:#fff;overflow-x:auto;font-size:1.18rem;text-align:center}
.article-content .method-equation math{font-family:"Cambria Math","STIX Two Math",serif}
.article-content h4{font-size:18px;font-weight:600;margin:28px 0 12px}
.method-table-wrap{overflow-x:auto;margin:24px 0;background:#fff}.article-content .method-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}.method-table caption{text-align:left;font-weight:600;margin-bottom:10px}.method-table th,.method-table td{padding:10px 12px;border:1px solid #ddd;text-align:center;background:#fff}.method-table th{font-weight:600}
.greenhouse-platform-media{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;align-items:center;max-width:850px;margin:28px auto;background:#fff}
.academic-project .article-content #greenhouse .greenhouse-platform-media>.research-figure{margin:0;max-width:100%;min-width:0}
.greenhouse-video{margin:0;text-align:center;min-width:0;background:#fff}.greenhouse-video video{display:block;width:210px;max-width:100%;height:auto;max-height:280px;margin:0 auto;background:#fff;border-radius:4px}.greenhouse-video figcaption{font-size:12px;line-height:1.5;color:#667085;margin-top:10px}
.reservoir-sheet .rs-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:700px;margin:0 auto}
.article-content .rs-deployment-heading{font-size:18px;margin:24px 0 14px}
.rs-deployment-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:center;justify-content:center;margin:0 auto 26px;max-width:740px}
.article-content .rs-deployment-media figure{margin:0;min-width:0;background:#fff}
.rs-deployment-media .rs-field img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.rs-deployment-video video{display:block;width:100%;height:auto;max-height:210px;background:#fff;border-radius:4px}
.publications-cv .publication-group{margin:32px 0;padding:0;border:0}.publications-cv .publication-group h2,.publications-cv .talks h2{font-size:22px;border-bottom:1px solid #dce3e7;padding-bottom:10px;margin-bottom:18px}
.article-content .deployment-site-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.46fr);gap:20px;align-items:start}.deployment-site-grid>.deployment-site-figure:first-child{width:100%;max-width:none;margin:0}.deployment-site-grid>.deployment-site-figure:first-child>a{height:auto;aspect-ratio:643/352}.deployment-site-grid>.deployment-site-figure:first-child img{width:100%;height:auto}.deployment-site-abudhabi .abudhabi-photo-pair{display:grid;grid-template-columns:443fr 518.18fr;gap:0;height:auto;max-width:886px;margin:0 auto}.academic-project .deployment-site-abudhabi .abudhabi-photo-pair img{width:100%;height:auto;max-height:none;object-fit:contain}@media(max-width:600px){.article-content .deployment-site-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.46fr);gap:12px}.deployment-site-grid .deployment-site-figure figcaption{font-size:11px;line-height:1.55}}
.deployment-site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:28px auto;max-width:950px}.article-content .deployment-site-figure{margin:0;min-width:0}.deployment-site-figure>a{display:flex;align-items:center;justify-content:center;height:240px;background:#fff}.academic-project .deployment-site-figure img{display:block;width:100%;height:100%;object-fit:contain}.deployment-site-figure figcaption{font-size:13px;line-height:1.7;color:#56616f;margin-top:12px}.deployment-site-figure figcaption strong{display:block;color:#344054;margin-bottom:4px}@media(max-width:600px){.deployment-site-grid{grid-template-columns:minmax(0,1fr);gap:24px}.deployment-site-figure>a{height:auto}.academic-project .deployment-site-figure img{height:auto;max-height:280px;object-fit:contain}}
.profile-photo-cell .profile-portrait-outdoors{width:250px;height:auto;aspect-ratio:552/659;object-fit:cover;object-position:50% 50%}@media(max-width:600px){.profile-photo-cell .profile-portrait-outdoors{width:210px}}
.profile-copy .profile-text-links{margin-top:24px}.profile-copy .profile-text-links p{margin:4px 0}.profile-text-links a{overflow-wrap:anywhere}
@media(max-width:600px){.profile-table{display:flex;flex-direction:column}.profile-table tbody,.profile-table tr,.profile-table .profile-photo-cell{display:contents}.profile-table .profile-copy{order:2;padding:12px 0}.profile-table .profile-photo-cell>a:first-child{order:1;display:block;align-self:center;margin:16px auto 8px}}
.timeline-list-entry{margin:24px 0}.timeline-list-entry .timeline-period{font-size:15px;line-height:1.7;margin:0 0 10px}.timeline-list-entry ul{padding-left:22px;margin:10px 0 0}.timeline-list-entry li{line-height:1.75;margin:5px 0}.about-skills-list h3{font-size:15px;margin:0 0 8px}.about-profile .about-course-grid{grid-template-columns:minmax(0,1fr);gap:24px}.home-about>.about-degree{margin-top:22px}.home-about>h3{font-size:17px;margin-top:20px}.home-about-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:26px!important}
.home-research-band>.home-shell{max-width:1240px}.research-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:28px 0}.research-project-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e1e6ec;border-radius:8px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.research-project-card:hover,.research-project-card:focus-within{border-color:#8bb8e6;box-shadow:0 4px 16px #163c6610}.research-project-grid .research-thumb{width:100%;padding:16px 16px 0}.research-project-grid .research-thumb>a{height:155px;display:flex;align-items:center;justify-content:center}.research-project-grid .research-thumb img{width:100%;height:155px;max-height:155px;object-fit:contain}.research-project-grid .research-thumb .harvesting-card-visual,.research-project-grid .research-thumb .sensing-card-visual{width:100%;height:155px;padding:0;gap:6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.research-project-grid .research-thumb .harvesting-card-visual img,.research-project-grid .research-thumb .sensing-card-visual img{height:150px;max-height:150px}.research-project-grid .research-summary{padding:18px;flex:1}.research-project-grid .research-summary h3 .papertitle{font-size:16px;line-height:1.45;font-weight:600}.research-project-grid .research-summary p,.research-project-grid .research-summary p a{font-size:14px;line-height:1.65}.research-project-grid .research-summary p{margin:12px 0 0;color:#4b5563}.home-research-band .home-about{max-width:800px;margin:38px auto 20px}@media(max-width:1000px){.research-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.research-project-grid{grid-template-columns:minmax(0,1fr);gap:18px}.research-project-grid .research-thumb>a,.research-project-grid .research-thumb img{height:175px;max-height:175px}.research-project-grid .research-summary h3 .papertitle{font-size:18px}}
.home-about{margin:36px 0 28px;padding-top:12px;border-top:1px solid #e5e7eb}.home-about-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 36px;margin-top:18px}.home-about-links>a{display:block;text-decoration:none;padding:10px 0}.home-about-links h3{font-size:17px;font-weight:600;margin:0 0 8px}.home-about-links p{color:#555;margin:0;line-height:1.6}.home-about-links>a:hover h3{text-decoration:underline;text-underline-offset:4px}.site-main{padding-bottom:24px}@media(max-width:600px){.home-about-links{grid-template-columns:minmax(0,1fr);gap:8px}}
.about-profile>section{margin:0 0 38px}.about-profile>section>h2{font-size:22px;border-bottom:1px solid #dce3e7;padding-bottom:10px;margin:0 0 22px}.about-profile h3{font-size:17px;font-weight:600;margin:0 0 8px}.about-profile p{margin:4px 0;line-height:1.7}.about-degree+.about-degree{margin-top:26px}.about-profile .about-date{color:#667085;font-size:13px}.about-skills{margin:0}.about-skills dt{font-size:15px;font-weight:600;margin:22px 0 6px}.about-skills dt:first-child{margin-top:0}.about-skills dd{margin:0}.about-skills dd p+p{color:#475467}.about-course-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 38px}.about-course-group h3 span{display:block;font-size:14px;font-weight:500;color:#475467;margin-top:4px}.about-course-group ul{padding-left:19px;margin:12px 0 0}.about-course-group li{margin-bottom:7px;line-height:1.6}.about-training{list-style:none;padding:0;margin:0}.about-training li{margin-bottom:18px;line-height:1.75}@media(max-width:600px){.about-course-grid{grid-template-columns:minmax(0,1fr);gap:26px}.about-profile>section{margin-bottom:32px}}
.publications-cv .citation-list{list-style:decimal;padding-left:24px;margin:0}.publications-cv .citation-list li{display:list-item;padding:0 0 20px 5px;margin:0;font-size:15px;line-height:1.75}.publications-cv .citation-list p{margin:0}.publications-cv .citation-title{font-weight:600}.publications-cv .citation-links{margin-top:5px;font-size:13px}
@media(max-width:600px){.reservoir-sheet .rs-top{grid-template-columns:minmax(0,1fr)}.rs-deployment-media{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rs-deployment-video{justify-self:center;width:100%}.rs-deployment-media .rs-field img{height:150px}.rs-deployment-video video{max-height:150px}.publications-cv .citation-list li{font-size:14px}}
@media(max-width:600px){.greenhouse-platform-media{grid-template-columns:minmax(0,1fr);gap:18px}.greenhouse-video video{width:180px;max-height:240px}}
.phenotyping-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;margin:24px 0}.phenotyping-media figure{margin:0;min-width:0}.phenotyping-media img,.phenotyping-media video{display:block;width:100%;height:240px;object-fit:contain;background:#fff}.phenotyping-media figcaption{font-size:13px;line-height:1.5;color:#667085;margin-top:8px}@media(max-width:600px){.phenotyping-media{grid-template-columns:minmax(0,1fr)}.phenotyping-media img,.phenotyping-media video{height:auto;max-height:260px}}
.phenotyping-platform-row{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:28px;align-items:start;margin:20px 0 30px}.phenotyping-platform-row .research-figure{max-width:none;margin:0}.phenotyping-platform-row .research-figure img{display:block;width:100%;height:auto}.phenotyping-platform-row .phenotyping-specs{min-width:0;overflow-x:auto}.phenotyping-platform-row table{margin:0;width:100%}@media(max-width:760px){.phenotyping-platform-row{grid-template-columns:minmax(0,1fr);gap:18px}.phenotyping-platform-row .research-figure{max-width:430px}}
.phenotyping-field-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;width:100%;max-width:900px;margin:20px auto 24px}.phenotyping-field-media figure{margin:0;min-width:0}.phenotyping-field-media img,.phenotyping-field-media video{display:block;width:100%;height:auto;object-fit:contain;background:#f8fafc}.phenotyping-field-media img{aspect-ratio:4/3}.phenotyping-field-media video{aspect-ratio:4/3}.phenotyping-field-media figcaption{margin-top:8px;color:#667085;font-size:13px;line-height:1.5}@media(max-width:600px){.phenotyping-field-media{grid-template-columns:minmax(0,1fr);gap:18px}.phenotyping-field-media video{max-height:360px}.phenotyping-field-media figcaption{font-size:12px}}
.phenotyping-result{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:28px;margin:20px 0 26px;padding:24px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.phenotyping-result p{margin:0}.phenotyping-result ol{margin:0;padding-left:22px}.phenotyping-result li{margin:5px 0}.phenotyping-output-stack{display:block;width:100%;max-width:900px;margin:28px auto 0}.phenotyping-output-stack figure{display:block;width:100%;margin:0 0 32px}.phenotyping-output-stack img,.phenotyping-output-stack video{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#0b1020}.phenotyping-output-stack figcaption{margin-top:8px;color:#667085;font-size:13px;line-height:1.5}@media(max-width:700px){.phenotyping-result{grid-template-columns:minmax(0,1fr)}.phenotyping-output-stack img,.phenotyping-output-stack video{max-height:360px}}
.compact-education{margin:0}.compact-education p{margin:0 0 10px}.compact-education ul{margin:0;padding-left:21px}.compact-education li{margin:7px 0;line-height:1.6}
.personal-site[data-page="home"] .name{font-size:44px;font-weight:900;line-height:1.2}
.personal-site #research>h2,.personal-site #home-about-heading,.personal-site:is([data-page="about"],[data-page="publications"]) .page-heading>h1{font-size:34px;font-weight:800;line-height:1.3}
.personal-site[data-page="publications"] .citation-list li{font-size:14px}
.personal-site .about-profile>section>h2,.personal-site .publications-cv .publication-group>h2,.personal-site .publications-cv .talks>h2{color:#245b78}
@media(max-width:600px){.personal-site[data-page="home"] .name{font-size:38px}.personal-site #research>h2,.personal-site #home-about-heading,.personal-site:is([data-page="about"],[data-page="publications"]) .page-heading>h1{font-size:30px}}
.academic-project .article-content .project-status,.academic-project .article-content .study-status{font-size:inherit;line-height:inherit;text-align:left;font-weight:400;color:inherit;margin:0 0 22px!important}

/* Preserve full portrait media while keeping landscape video sizing. */
.rs-deployment-media .rs-portrait-video video{width:100%;height:auto;max-height:none;aspect-ratio:3/4;object-fit:contain}
@media(max-width:600px){.rs-deployment-media{grid-template-columns:minmax(0,1fr);max-width:360px}.rs-deployment-media .rs-field img{height:auto}.rs-deployment-media .rs-portrait-video video{max-height:none}}

/* M.S. thesis figures and field-to-plant methods. */
#phenotyping .pheno-study-figure{margin:26px 0 32px;width:100%;min-width:0}
#phenotyping .pheno-study-figure img,#phenotyping .pheno-study-figure video{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:#fff}
#phenotyping .pheno-study-figure figcaption{font-size:13px;line-height:1.6;color:#596579;margin-top:9px}
#phenotyping .pheno-map-example{max-width:760px;margin-left:auto;margin-right:auto}
#phenotyping .pheno-method-details{border-top:1px solid #d9dfe7;border-bottom:1px solid #d9dfe7;margin:24px 0;padding:14px 0}
#phenotyping .pheno-method-details summary{cursor:pointer;font-weight:600;color:#255c7c}
#phenotyping .pheno-method-details>div{padding-top:14px}
#phenotyping .pheno-results-table{overflow-x:auto;margin:22px 0}
#phenotyping .pheno-results-table table{width:100%;margin:0}
#phenotyping .pheno-results-table caption{text-align:left;font-weight:600;padding-bottom:10px;color:#344054}
#phenotyping .pheno-report-link{border-left:3px solid #3c7058;padding:12px 18px;background:#f4f8f5;margin:28px 0}
#phenotyping .pheno-report-link span{font-size:13px;color:#596579}
@media(max-width:600px){#phenotyping .study-number{font-size:21px}#phenotyping .pheno-study-figure{margin:20px 0 26px}#phenotyping .pheno-study-figure figcaption{font-size:12px}}
