﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--text: #111111;--muted: #666666;--border: #d8d8d8;--bg: #ffffff;--bg-subtle: #f7f7f5;--col-width: 680px;--pad-x: 2rem;--accent: #427b58;--accent-dim: rgba(66, 123, 88, 0.10);--radius: 4px;--section-pad-y: 2.45rem;--font-display: "Futura", sans-serif;--font-body: "Figtree", system-ui, sans-serif;--font-ui: "Figtree", sans-serif}html{font-size:18px;scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:var(--font-body);letter-spacing:-.011em;color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-family:var(--font-display);font-size:2.3rem;font-weight:500;line-height:1.15;letter-spacing:-.01em;margin-bottom:.9rem}h2{font-family:var(--font-ui);font-size:.82rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:1.6rem}h2 .section-note{font-weight:400;letter-spacing:.04em;text-transform:none;font-style:italic;color:var(--muted)}h3{font-family:var(--font-display);font-size:1.2rem;font-weight:500;line-height:1.3;margin-bottom:.5rem}p{margin-bottom:.9em}p:last-child{margin-bottom:0}main .hero-content p,main .project-body,main .project-category--misc .misc-lead,main .project-category--misc .misc-list,main .entry-desc{text-align:left}a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--border);transition:border-color .12s ease,color .12s ease}a:hover{border-bottom-color:var(--accent);color:var(--accent)}strong{font-weight:600}em{font-style:italic}ul{list-style:none}#site-header{position:sticky;top:0;z-index:100;background:var(--bg-subtle);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid var(--border)}.header-inner{max-width:calc(var(--col-width) + var(--pad-x)*2);margin:0 auto;padding:0 var(--pad-x);display:flex;flex-direction:column}.status-bar{font-family:var(--font-ui);font-size:.7rem;color:var(--muted);padding:.4rem 0 0;letter-spacing:.01em}.status-sep{color:var(--border)}nav{display:flex;align-items:center;justify-content:space-between;padding:.35rem 0 .45rem}.nav-links{display:flex;gap:1.5rem;list-style:none}.nav-links a{font-family:var(--font-ui);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:none;transition:color .12s ease}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.nav-links a.active{border-bottom:1px solid var(--accent)}.nav-actions{display:flex;align-items:center;gap:.7rem;margin-left:1rem}.search-btn{display:inline-flex;align-items:center;gap:.3em;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);padding:.22rem .55rem;cursor:pointer;color:var(--muted);font-family:var(--font-ui);font-size:.62rem;letter-spacing:.05em;transition:color .12s ease,border-color .12s ease}.search-btn:hover{color:var(--accent);border-color:var(--accent)}.search-kbd{font-family:var(--font-ui);font-size:.58rem;color:var(--muted)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--text);line-height:1;padding:.2rem}main{max-width:calc(var(--col-width) + var(--pad-x)*2);margin:0 auto;padding:0 var(--pad-x)}section{padding:var(--section-pad-y) 0;border-bottom:1px solid var(--border)}section:last-of-type{border-bottom:none}.hero{display:grid;grid-template-columns:200px 1fr;column-gap:2.4rem;align-items:start;padding-top:var(--section-pad-y);padding-bottom:var(--section-pad-y);border-bottom:1px solid var(--border)}.hero-photo{flex-shrink:0}.hero-photo img{width:200px;height:250px;object-fit:cover;object-position:top;border-radius:var(--radius);display:block}.hero-content{min-width:0}.keyword-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.1rem}.pill{font-family:var(--font-ui);font-size:.65rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border-radius:20px;padding:.2rem .65rem}.social-links{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin-top:1.4rem}.social-links a{font-family:var(--font-ui);font-size:.75rem;font-weight:500;letter-spacing:.02em;color:var(--muted);border-bottom:none;display:inline-flex;align-items:center;gap:.3em;transition:color .12s ease}.social-links a:hover{color:var(--accent)}.social-links .icon{width:20px;height:20px}.icon{width:13px;height:13px;fill:currentColor;flex-shrink:0}#about{padding-top:var(--section-pad-y)}.keywords{font-size:.88rem;color:var(--accent);margin-bottom:1.3rem;line-height:1.5}.about-photo{margin:1.8rem 0;border-radius:2px;overflow:hidden}.about-photo img{width:100%;height:auto;display:block}.news-list li{display:grid;grid-template-columns:6rem 1fr;column-gap:1.2rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.news-list li:last-child{border-bottom:none}.news-date{font-family:var(--font-ui);font-size:.72rem;color:var(--muted);padding-top:.15em;white-space:nowrap}.news-text{font-size:.93rem;line-height:1.55}.entry{padding:1rem 0;border-bottom:1px solid var(--border)}.entry:last-child{border-bottom:none}.entry.slim{padding:.7rem 0}.entry-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.15rem}.entry-meta{display:inline-flex;align-items:center;gap:.6rem;flex-shrink:0}.entry-logos{display:inline-flex;align-items:center;gap:.45rem}.entry-logos a{border-bottom:none}.entry-logos img{display:block}.entry-title-row{display:flex;align-items:flex-start;gap:.6rem;flex:1;min-width:0}.entry-title-row .entry-title{flex:1}.entry-title{font-family:var(--font-display);font-size:1rem;font-weight:500;line-height:1.35}.entry-date{font-family:var(--font-ui);font-size:.72rem;color:var(--muted);white-space:nowrap;flex-shrink:0;padding-top:.1em}.entry-sub{font-family:var(--font-ui);font-size:.77rem;color:var(--muted);margin-bottom:.5rem;line-height:1.45}.entry-desc{font-size:.94rem;line-height:1.6;margin-bottom:0}.entry-bullets{list-style:disc;padding-left:1.3em;font-size:.91rem;line-height:1.55;color:var(--text)}.entry-bullets li{margin-bottom:.2em}.entry-bullets-nested{list-style:circle;padding-left:1.3em;margin-top:.2em}.inst-logo{height:18px;width:auto;max-width:80px;object-fit:contain;flex-shrink:0;vertical-align:middle;opacity:.85;transition:opacity .15s ease}.inst-logo:hover{opacity:1}.page--teaching .entry-title-row{align-items:center}.page--talks .page-content h2{margin-bottom:.5rem}.page--talks .entry-desc{font-size:.77rem;line-height:1.45}.page--teaching .inst-logo{height:20px;max-width:90px;margin-top:.12em}.page--teaching .inst-logo--eth{margin-top:.02em}.page--teaching .inst-logo--acubesat{height:26px;max-width:120px}.page--teaching .inst-logo--eduact{height:26px;max-width:140px}.page--teaching .inst-logo--american-farm-school{height:26px;max-width:200px}.page--mentorship .inst-logo--acubesat,.page--mentorship .inst-logo--eduact{height:26px;max-width:140px}.page--mentorship .inst-logo--american-farm-school{height:26px;max-width:200px}.project-category{padding:var(--section-pad-y) 0;border-bottom:1px solid var(--border)}.project-category:last-of-type{border-bottom:none}.cat-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.45rem;width:100%}.cat-header h2{margin-bottom:0;flex:1 1 auto;min-width:0}.cat-logos{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.8rem;flex-shrink:0;margin-left:auto}.cat-logo{height:20px;width:auto;max-width:90px;object-fit:contain;opacity:.75;transition:opacity .15s ease}.cat-logo:hover{opacity:1}.cat-logo-esa{height:20px;max-width:120px;object-fit:contain;object-position:left center}#acubesat .cat-logo{height:25px;max-width:120px}#acubesat .cat-logo-esa{height:50px;max-width:165px}.project-category--misc{font-size:.93rem;line-height:1.65}.project-category--misc .misc-lead{margin-bottom:.65rem;color:var(--text)}.project-category--misc .misc-list{list-style:disc;padding-left:1.35em;margin:0;color:var(--text)}.project-category--misc .misc-list>li{margin-bottom:.7rem;text-align:left;}.project-category--misc .misc-list>li .project-image-figure{display:block}.project-category--misc .misc-list>li:last-child{margin-bottom:0}.project-category--misc .misc-list-nested{list-style:circle;padding-left:1.2em;margin:.4rem 0 0}.project-category--misc .misc-list-nested li{margin-bottom:.35rem}.project-category--misc .misc-list .project-images{margin-top:.75rem;margin-bottom:0}.project-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.7rem}.project-heading-row h3{margin-bottom:0;flex:1}.project-logos{display:flex;align-items:center;gap:.6rem;flex-shrink:0;padding-top:.25rem}.project-body{font-size:.93rem;line-height:1.65;margin-bottom:.75em}.project-body:last-of-type{margin-bottom:0}.project-image-figure{display:inline-block;width:fit-content;max-width:100%;margin:1.2rem 0;vertical-align:top}.project-image-figure .project-images{margin:0;display:inline-flex;width:fit-content;flex-wrap:wrap}.project-images{display:flex;gap:.75rem;margin:1.2rem 0;flex-wrap:wrap}.project-images img{height:160px;width:auto;max-width:100%;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border)}.project-image-caption{font-size:.68rem;color:var(--muted);margin:.4rem 0 0;line-height:1.35;max-width:100%;display:block;min-width:0;text-align:left;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.project-image-caption a{color:var(--muted);border-bottom:1px solid rgba(0,0,0,.12)}.project-image-caption a:hover{color:var(--accent);border-bottom-color:var(--accent)}#igem .media-tile-title{font-size:.68rem;line-height:1.32}#igem .media-tile-date{font-size:.57rem}.featured-label{font-family:var(--font-ui);font-size:.67rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:1.8rem 0 .8rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(150px, 1fr));gap:.6rem;margin-bottom:1rem}.media-tile{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg);transition:box-shadow .15s ease,transform .15s ease;text-decoration:none;border-bottom:none;display:flex;flex-direction:column}.media-tile:hover{box-shadow:0 4px 16px rgba(0,0,0,.08);transform:translateY(-2px);border-color:#bbb}.media-tile-img{width:100%;height:85px;object-fit:cover;background:var(--bg-subtle);display:block}.media-tile-img.logo-tile{object-fit:contain;padding:.7rem}.media-tile-body{padding:.5rem .6rem;flex:1;display:flex;flex-direction:column;gap:.2rem}.media-tile-outlet{font-family:var(--font-ui);font-size:.62rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.media-tile-title{font-size:.72rem;line-height:1.35;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.media-tile-date{font-family:var(--font-ui);font-size:.6rem;color:var(--muted);margin-top:auto}.press-list{display:flex;flex-wrap:wrap;gap:.25rem .8rem;font-family:var(--font-ui);font-size:.72rem}.press-list a{color:var(--muted);border-bottom:none;transition:color .12s ease}.press-list a:hover{color:var(--accent)}.press-list-sep{color:var(--border);user-select:none}.chart-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.chart-box{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);padding:1rem .8rem .8rem}.chart-title{font-family:var(--font-ui);font-size:.65rem;font-weight:600;letter-spacing:.09em;text-transform:none;color:var(--muted);margin-bottom:.6rem;text-align:center}.chart-box svg{display:block;width:100%}.chart-bar{fill:var(--accent);opacity:.8;transition:opacity .12s ease}.chart-bar:hover{opacity:1}.chart-axis-label{font-family:var(--font-ui);font-size:7.5px;fill:var(--muted)}.chart-value-label{font-family:var(--font-ui);font-size:7px;fill:var(--text);font-weight:600}.chart-axis-title{font-family:var(--font-ui);font-size:6.2px;fill:var(--muted);font-weight:600;letter-spacing:.02em}.subsec{font-family:var(--font-ui);font-size:.67rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:2rem 0 .9rem}.subsec:first-of-type{margin-top:0}.pub-entry{padding:.85rem 0;border-bottom:1px solid var(--border)}.pub-entry:last-child{border-bottom:none}.pub-tag{font-family:var(--font-ui);font-size:.72rem;color:var(--accent);line-height:1.4;margin-bottom:.25rem}.pub-tag a{color:var(--accent);font-size:.72rem}.pub-tag a:hover{color:var(--text)}.pub-title{font-family:var(--font-display);font-size:1rem;font-weight:500;line-height:1.38;margin-bottom:.2em}.pub-authors{font-size:.85rem;color:var(--muted);line-height:1.45;margin-bottom:0}.honors-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.honors-list li:last-child{border-bottom:none}.honor-left{display:flex;flex-direction:column;gap:.15em;flex:1;min-width:0}.honor-name{font-size:.97rem;font-weight:500;line-height:1.35}.honor-detail{font-size:.8rem;color:var(--muted);line-height:1.4}.honor-right{font-family:var(--font-ui);font-size:.72rem;color:var(--muted);text-align:right;flex-shrink:0;display:flex;flex-direction:column;gap:.1em;align-items:flex-end}.skills-grid{display:grid;grid-template-columns:9rem 1fr;column-gap:1.5rem;row-gap:0}.skills-category{font-family:var(--font-ui);font-size:.75rem;font-weight:500;color:var(--muted);padding:.45rem 0;border-bottom:1px solid var(--border);letter-spacing:.01em}.skills-items{font-size:.91rem;padding:.45rem 0;border-bottom:1px solid var(--border);line-height:1.55;display:flex;flex-direction:column;gap:.25rem}.skills-grid>*:last-child,.skills-grid>*:nth-last-child(2){border-bottom:none}.contact-email{margin:1rem 0 .7rem;font-size:1.1rem;font-style:italic}.contact-email a{color:var(--text);border-bottom:1px solid var(--border)}.contact-email a:hover{border-bottom-color:var(--accent)}.contact-links{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem}.contact-links a{font-family:var(--font-ui);font-size:.78rem;color:var(--muted);border-bottom:none;transition:color .12s ease}.contact-links a:hover{color:var(--accent)}.ebs-display{display:flex;align-items:center;gap:.5rem;margin:1.2rem 0 1.8rem;flex-wrap:wrap}.ebs-btn{font-family:var(--font-display);font-size:2.8rem;font-weight:500;line-height:1;background:none;border:none;cursor:pointer;color:var(--text);padding:.1em .15em;border-radius:var(--radius);transition:color .15s ease,background .15s ease;text-decoration:underline;text-decoration-color:rgba(0,0,0,0);text-underline-offset:3px;transition:text-decoration-color .15s ease,color .15s ease}.ebs-btn:hover{color:var(--accent);text-decoration-color:var(--accent)}.ebs-sep{font-family:var(--font-display);font-size:2.8rem;color:var(--muted);line-height:1;user-select:none}.ebs-label{font-family:var(--font-ui);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.3rem}.ebs-detail{overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .25s ease;border-left:2px solid var(--border);padding-left:1.2rem;margin-top:0}.ebs-detail--open{max-height:600px;opacity:1;margin-top:1.4rem}.ebs-detail-title{font-family:var(--font-display);font-size:1rem;font-weight:500;margin-bottom:.7rem}dialog{border:none;border-radius:var(--radius);padding:0;background:var(--bg);box-shadow:0 8px 40px rgba(0,0,0,.15);max-width:90vw}dialog::backdrop{background:rgba(0,0,0,.35);backdrop-filter:blur(2px)}.ebs-modal-inner{padding:1.6rem 1.8rem;max-width:420px;width:90vw}.ebs-modal-inner h3{font-size:1.05rem;margin-bottom:.9rem}.ebs-chain{list-style:none;font-size:.88rem;line-height:1.7}.ebs-chain li{position:relative;padding-left:1.35em;margin-bottom:.35rem}.ebs-chain li:last-child{margin-bottom:0}.ebs-chain li::before{content:"→";position:absolute;left:0;top:.05em;color:var(--accent)}.modal-close{display:block;margin-top:1.2rem;margin-left:auto;background:none;border:1px solid var(--border);border-radius:var(--radius);padding:.3rem .9rem;font-family:var(--font-ui);font-size:.72rem;cursor:pointer;color:var(--muted);transition:color .12s ease,border-color .12s ease}.modal-close:hover{color:var(--text);border-color:#999}#search-dialog{width:560px;max-width:94vw;position:fixed;inset:0;margin:8vh auto auto;border-radius:8px}.search-inner{display:flex;flex-direction:column}.search-bar{display:flex;align-items:center;gap:.7rem;padding:.85rem 1rem;border-bottom:1px solid var(--border)}.search-bar svg{color:var(--muted);flex-shrink:0}#search-input{flex:1;border:none;outline:none;font-family:var(--font-body);font-size:.95rem;color:var(--text);background:rgba(0,0,0,0)}.search-esc{font-family:var(--font-ui);font-size:.6rem;border:1px solid var(--border);border-radius:3px;padding:.1rem .35rem;color:var(--muted);background:var(--bg-subtle);flex-shrink:0}#search-results{list-style:none;max-height:340px;overflow-y:auto;padding:.35rem 0}.search-result{display:flex;justify-content:space-between;align-items:center;padding:.55rem 1rem;cursor:pointer;gap:1rem;transition:background .1s ease}.search-result.focused,.search-result:hover{background:var(--bg-subtle)}.sr-label{font-size:.88rem;color:var(--text)}.sr-label mark{background:var(--accent-dim);color:var(--accent);border-radius:2px;padding:0 1px}.sr-cat{font-family:var(--font-ui);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);flex-shrink:0}.search-empty{padding:1rem;text-align:center;font-size:.85rem;color:var(--muted)}.interests-list{list-style:none}.interests-list>li{padding:.75rem 0;border-bottom:1px solid var(--border);font-size:.94rem;line-height:1.65}.interests-list>li:last-child{border-bottom:none}.interest-cat{font-family:var(--font-ui);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin-right:.5em}.sports-sublist,.interest-sublist{list-style:disc;padding-left:1.35em;margin-top:.35rem}.sports-sublist li,.interest-sublist>li{margin-bottom:.35rem}.sports-sublist li:last-child,.interest-sublist>li:last-child{margin-bottom:0}.interest-sublist-nested{list-style:circle;padding-left:1.2em;margin-top:.25rem;margin-bottom:0}.interest-sublist-nested li{margin-bottom:.2rem}.interest-sublist-nested li:last-child{margin-bottom:0}.justified-gallery a:hover{border-bottom-color:var(--border)}#site-footer{max-width:calc(var(--col-width) + var(--pad-x)*2);margin:0 auto;padding:1.8rem var(--pad-x) 3rem;font-family:var(--font-ui);font-size:.7rem;color:var(--muted);display:flex;justify-content:space-between}#site-footer a{color:var(--muted);border-bottom:none}#site-footer a:hover{color:var(--accent)}.footer-note{color:var(--border)}.page-title-strip{padding:1.85rem 0 0}.page-title-strip h1{margin-bottom:.75rem}.loader{--color-1: var(--muted);--size: 1px;--factor-small: 30;--factor-large: 55;position:relative;margin:auto;width:calc(55*var(--size));height:calc(55*var(--size));background-repeat:no-repeat;background-image:linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0),linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0),linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0),linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0),linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0),linear-gradient(var(--color-1) calc(50*var(--size)), rgba(0,0,0,0) 0);background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size));background-position:0 center,calc(10*var(--size)) center,calc(20*var(--size)) center,calc(30*var(--size)) center,calc(40*var(--size)) center,calc(50*var(--size)) center;animation:spikeUp 1s linear infinite alternate}@keyframes spikeUp{0%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size))}16%{background-size:calc(5*var(--size)) calc(var(--factor-large)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size))}33%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-large)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size))}50%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-large)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size))}66%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-large)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size))}83%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-large)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size))}100%{background-size:calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-small)*var(--size)),calc(5*var(--size)) calc(var(--factor-large)*var(--size))}}@media (max-width: 720px){:root{--pad-x: 1.4rem}.skills-grid{grid-template-columns:7rem 1fr;column-gap:1rem}.news-list li{grid-template-columns:5rem 1fr}.chart-pair{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(auto-fill, minmax(130px, 1fr))}.hero{grid-template-columns:160px 1fr;column-gap:1.6rem}.hero-photo img{width:160px;height:190px}}@media (max-width: 560px){html{font-size:17px}:root{--pad-x: 1.1rem}h1{font-size:1.95rem}.hero{grid-template-columns:1fr;row-gap:1.4rem}.hero-photo img{width:140px;height:170px}.nav-links{display:flex;background:var(--bg);flex-direction:column;gap:0;width:100%}.nav-links.open{display:flex}.nav-links a{display:block;padding:.7rem var(--pad-x);font-size:.75rem}.nav-toggle{display:block}#site-header{position:relative}.nav-actions{margin-left:.55rem}.entry-header{flex-wrap:wrap}.entry-meta{flex-basis:100%;order:-1;justify-content:flex-end;flex-wrap:wrap}.entry-date{order:2}.page--mentorship .entry-header{flex-wrap:nowrap;align-items:center;gap:.6rem}.page--mentorship .entry-title-row{align-items:center}.page--mentorship .entry-title{font-size:.92rem;line-height:1.22}.page--mentorship .entry-meta{flex-basis:auto;order:0;justify-content:flex-end;flex-wrap:nowrap;margin-top:0;gap:.5rem}.page--mentorship .entry-date{font-size:.66rem;padding-top:0}.page--mentorship .inst-logo{height:18px;max-width:80px}.honors-list li{flex-direction:column}.honor-right{text-align:left;align-items:flex-start}.news-list li{grid-template-columns:1fr;row-gap:.2rem}.skills-grid{grid-template-columns:1fr}.skills-category,.skills-items{border-bottom:none;padding:.2rem 0}.skills-category{margin-top:.8rem;padding-bottom:0}.skills-grid>*:first-child{margin-top:0}section{padding:2.15rem 0}.project-images img{height:120px}.media-grid{grid-template-columns:repeat(auto-fill, minmax(120px, 1fr))}.ebs-btn,.ebs-sep{font-size:2.1rem}#search-dialog{margin-top:4vh}}@media (max-width: 380px){html{font-size:16px}}@media (prefers-color-scheme: dark){:root{--text: #eeeeee;--muted: #999999;--border: #272727;--bg: #101010;--bg-subtle: #1a1a1c;--accent: #57A773;--accent-dim: rgba(66, 123, 88, 0.10)}}