*{margin:0;padding:0;box-sizing:border-box}:root{--ellablue-lightest: #eaeff2;--ellablue-light: #cbd7df;--ellablue: #9caebf;--ellablue-dark: #859baf;--ellablue-darker: #567490;--ellablue-darkest: #23455c;--ellagreen: #499792;--ellagreen-dark: #125C57;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--link-color: #fca311;--link-visited: #e0b16e;--link-hover: #f8d38f}html{scroll-behavior:smooth}body{font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}h1,h2,h3{text-align:center}h2{font-size:3rem;font-weight:700;padding-bottom:2rem;margin-bottom:3rem;position:relative}h2:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:10rem;height:1px;background-color:var(--gray-100)}h3{font-size:1.8rem;font-weight:700;padding-bottom:1.5rem}a{color:var(--link-color);text-decoration:none;transition:color .3s}a:visited{color:var(--link-visited)}a:hover{color:var(--link-hover)}a[data-tooltip]{position:relative;display:inline-block}a[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:50%;transform:translate(-50%);padding:.5rem .75rem;border-radius:.25rem;font-size:.875rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s;z-index:10}a[data-tooltip]:hover:after{opacity:1}a[data-tooltip]:after{bottom:-3rem;background-color:#fff;color:var(--ellablue-darkest)}.text-content p,.text-content ul{text-align:justify;font-size:1.25rem;line-height:1.75;margin-bottom:2rem;padding:0 1.5rem}.text-content li{margin:0 3rem}nav{position:fixed;top:0;left:0;right:0;background-color:var(--ellablue-darkest);z-index:50;padding:1.1rem 2rem;transition:background-color .3s,color .3s}.nav-container{display:flex;align-items:center;justify-content:space-between}.hamburger{display:none;background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;transition:color .15s}.hamburger:hover{color:var(--ellablue)}nav.nav-light .hamburger{color:var(--ellablue-darkest)}nav.nav-light .hamburger:hover{color:var(--ellablue-dark)}.nav-logo-image{height:26px;width:auto;display:block}.nav-menu{display:flex;gap:2rem;list-style:none;font-size:1.1rem}.nav-menu a{color:#fff;text-decoration:none;transition:color .15s}.nav-menu a:hover{color:var(--ellablue)}.nav-menu a.active{font-weight:1000}nav.nav-light{background-color:#fff}nav.nav-light .nav-menu a{color:var(--ellablue-darkest)}nav.nav-light .nav-menu a:hover{color:var(--ellablue-dark)}@media(hover:none)and (pointer:coarse){.hamburger:hover,.nav-menu a:hover{color:#fff}nav.nav-light .hamburger:hover,nav.nav-light .nav-menu a:hover{color:var(--ellablue-darkest)}}nav.nav-light .nav-menu a.active{color:var(--ellablue-darker)}section{min-height:100svh;display:flex;scroll-margin-top:3.5rem;padding-bottom:2rem}.section-main{align-items:center;justify-content:center;background-color:var(--ellablue-darkest);position:relative}.section-about,.section-software,.section-contact{align-items:center;justify-content:center;color:#fff}.section-about{flex-direction:column;background-color:var(--ellablue-darker)}.section-about h2{padding-top:2rem}.section-software{padding-top:2rem;flex-direction:column;background-color:var(--ellablue-dark)}.section-contact{background-color:var(--ellablue-darker)}.content{width:100vw;max-width:none;z-index:1;background-color:inherit}.content>*{max-width:50rem;margin-left:auto;margin-right:auto}.project-grid{display:grid;gap:1.5rem;margin-left:auto;margin-right:auto}.project-grid-1{grid-template-columns:repeat(1,1fr);max-width:33.33%}.project-grid-2{grid-template-columns:repeat(2,1fr);max-width:66.67%}.project-grid-3{grid-template-columns:repeat(3,1fr);max-width:100%}.project-card{display:flex;flex-direction:column;align-items:center;padding:2rem 1.7rem 3rem;gap:1.5rem;background-color:var(--ellablue-darkest);border-radius:.5rem}.hero{text-align:center}.hero-logo{width:min(550px,80vw);height:auto;margin:0 auto 2rem;display:block}.hero p{font-size:1.5rem;color:var(--gray-200);margin:0 auto;padding:0 6vw}.affiliation-logo{height:30px;width:auto;position:absolute;bottom:3rem}.photo-container{width:100vw;height:60vh;overflow:hidden;display:flex;align-items:center;position:sticky;top:3.5rem;z-index:0}.photo-container img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.software-container{max-width:105rem;padding:0 6vw}.software-category{margin-bottom:3rem}.category-title{font-size:2rem;font-weight:600;margin-bottom:1.5rem}.project-logo{width:16rem;height:16rem;display:flex;align-items:center;justify-content:center}.project-logo-image{width:100%;height:100%;object-fit:contain}.project-links{font-size:1.5rem}.project-links a{margin:0 .2rem}.project-description{text-align:center;color:var(--gray-100)}.docs-content{text-align:center;max-width:50rem}.buttons{display:flex;flex-direction:column;text-align:center;max-width:12rem;margin:0 auto}.button{display:block;font-size:1.3rem;background-color:var(--ellagreen);padding:1rem;border-radius:2rem;transition:background-color .3s;text-decoration:none;color:#fff}.buttons a,.buttons a:visited{color:#fff}.buttons a:hover{background-color:var(--ellagreen-dark)}footer{background-color:#fff;padding:1rem 2rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}footer p{color:var(--ellablue-darker);font-size:.9rem;margin:0;justify-self:center;text-align:center}.footer-logo{flex-shrink:0}footer .footer-logo:first-child{justify-self:start}footer .footer-logo:last-child{justify-self:end}.footer-logo-image{height:26px;width:auto;display:block}@media(max-width:1103px){.photo-container{height:40vh}.photo-container img{object-position:center 65%}.project-grid-2{max-width:100%}.project-grid-3{grid-template-columns:repeat(2,1fr)}.project-grid-3 .project-card:last-child{grid-column:1 / -1}}@media(max-width:768px){.hamburger{display:block}.nav-menu{display:none;position:fixed;top:3.5rem;left:0;right:0;flex-direction:column;background-color:var(--ellablue-darkest);gap:0;padding:.5rem 0;margin:0;list-style:none;z-index:49}.nav-menu.active{display:flex}nav.nav-light .nav-menu{background-color:#fff}.nav-menu a{display:block;padding:.75rem 2rem;width:100%}.photo-container img{object-position:center 80%}.hero p{font-size:1.125rem}h2{font-size:2rem}h3{font-size:1.4rem}.text-content p,.text-content ul{text-align:left}.category-title{font-size:1.5rem}.project-grid-2,.project-grid-3{grid-template-columns:1fr}.project-logo{width:12rem;height:12rem}footer{grid-template-columns:1fr;justify-items:center;text-align:center}footer .footer-logo:first-child,footer .footer-logo:last-child{justify-self:center}}@media(max-width:412px){.photo-container{height:30vh}}
