:root{--color-primary:#366460;--color-subtitle:#442020;--color-text-dark:#333;--color-text-medium:#666;--color-text-light:#888;--color-white:#fff;--color-divider:rgba(0, 0, 0, 0.06);--color-border-light:#f0f0f0;--color-testimonial-border:rgba(204, 0, 0, 0.1);--color-cta-bg:#23403d;--color-navbar-hover-bg:rgba(255, 255, 255, 0.15);--color-table-border:#d1d5da;--shadow-light:rgba(0, 0, 0, 0.08);--shadow-medium:rgba(0, 0, 0, 0.1);--shadow-hover:rgba(0, 0, 0, 0.12);--shadow-hover-darker:rgba(0, 0, 0, 0.15)}.hero-title{color:var(--color-primary);font-weight:700;font-size:3.5em;font-family:computer modern,serif;max-width:100%;text-align:center;padding-top:50px}.hero-subtitle{color:var(--color-subtitle);font-size:1.8em;font-family:computer modern,serif;max-width:100%;text-align:center;margin:0 auto}.hero-description-item+.hero-description-item{margin-top:1rem}@media(max-width:768px){.hero-title{font-size:2.25em;padding-top:25px}.hero-subtitle{font-size:1.3em}}.github-buttons{margin:20px 0;text-align:center}.release-boxes{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1.2em;margin-top:1.5em}.latest-release{flex:1 1 22em;max-width:26em;margin:0;padding:.9em 1.4em;border-radius:8px;border:1px solid var(--color-border-light);background:var(--color-white);box-shadow:0 2px 8px var(--shadow-light);text-align:center}.latest-release.dev-release{border:1px dashed var(--colorHighlight,#d99a2b)}.latest-release-title{font-weight:700;color:var(--color-primary);font-size:1.15em}.dev-release .latest-release-title{color:#b3781a}.dev-badge{display:inline-block;background:var(--colorHighlight,#d99a2b);color:var(--color-white);font-size:.65em;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.15em .5em;margin-right:.4em;vertical-align:middle}.latest-release-date{color:var(--color-text-light);font-size:.9em;margin-top:.2em}.latest-release-links{list-style:none;margin:.6em 0 0;padding:0;font-size:.95em}.latest-release-links li{margin-top:.3em;display:flex;flex-wrap:wrap;justify-content:center;gap:.4em}.latest-release-links a{color:var(--color-primary);text-decoration:none}.latest-release-links li>a:not([hidden])~a:not([hidden])::before{content:"\00b7";display:inline-block;margin-right:.4em;color:var(--color-text-light)}.latest-release-links a:hover{text-decoration:underline}.dev-release .latest-release-links a{color:#b3781a}@media(max-width:768px){.release-boxes{margin-top:1em}.latest-release{max-width:90%;flex-basis:100%}}.timeline-section{margin:40px 0;text-align:center}.timeline-container{display:flex;justify-content:center;align-items:center;max-width:100%;margin:0 auto}.timeline-image{max-width:100%;height:auto;border-radius:8px}@media(max-width:768px){.timeline-section{margin:20px 0;padding:0 10px}.timeline-image{max-width:95%}}.hero-info-section{margin:40px 0;padding:0 20px}.info-content{display:flex;flex-direction:row;align-items:center;max-width:85%;margin:0 auto;gap:2rem;padding-top:1.5em}.info-logo{flex-shrink:0}.info-logo img{width:16em;height:auto;object-fit:contain}.info-text{flex:1;min-width:0}.info-text p{font-size:1.1em;line-height:1.6;color:var(--color-text-dark);margin:0;text-align:left}@media(max-width:768px){.hero-info-section{margin:30px 0;padding:0 15px}.info-content{flex-direction:column;text-align:center;max-width:95%;gap:1.5rem}.info-logo{max-width:200px;margin:0 auto}.info-logo img{max-width:200px}.info-text{width:100%}.info-text p{text-align:center;font-size:1em}}.software-icons{margin:40px 0;text-align:center}.software-icons h3{color:var(--color-primary);margin-bottom:20px;font-family:times new roman,Times,serif}.software-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:800px;margin:0 auto;justify-items:center}.software-item{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:450px;width:100%}.software-item a{text-decoration:none;color:inherit}.software-icon{margin-bottom:15px;object-fit:contain;width:90px;height:90px}.software-icon-fallback{width:90px;height:90px;margin-bottom:15px;background-color:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:1.8em}.software-name{font-weight:700;color:var(--color-primary);margin-bottom:8px;font-size:1.8em}.software-description{font-size:1.35em;color:var(--color-text-medium)}@media(max-width:768px){.software-grid{grid-template-columns:1fr!important;gap:40px;max-width:400px}.software-item{max-width:350px}.software-icon{width:75px;height:75px}.software-icon-fallback{width:75px;height:75px;font-size:1.5em}.software-name{font-size:1.5em}.software-description{font-size:1.2em}}.what-icons{margin:40px 0;text-align:center}.what-icons h3{color:var(--color-primary);margin-bottom:20px;font-family:times new roman,Times,serif}.what-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:40px;max-width:75%;margin:0 auto;justify-items:center;padding-bottom:30px}.what-item{display:flex;flex-direction:column;align-items:left;text-align:left;max-width:450px;width:100%}.what-item a{text-decoration:none;color:inherit}.what-item:not(:first-child){border-left:1.5px solid var(--color-divider);padding-left:1.5rem}.what-icon{margin-bottom:15px;object-fit:contain;width:90px;height:90px}.what-icon-fallback{width:90px;height:90px;margin-bottom:15px;background-color:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:1.8em}.what-name{font-weight:700;color:var(--color-primary);margin-bottom:8px;font-size:1.3em}.what-description{font-size:1em;color:var(--color-text-medium)}@media(max-width:768px){.what-grid{grid-template-columns:1fr!important;gap:40px;max-width:400px}.what-item{max-width:350px}.what-icon{width:75px;height:75px}.what-icon-fallback{width:75px;height:75px;font-size:1.5em}.what-name{font-size:1.2em}.what-description{font-size:1em}.what-item:not(:first-child){border-left:none;padding-left:0}}.testimonials-section{margin:60px 0;text-align:center}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:40px;max-width:1000px;margin:40px auto 0;padding:0 20px}.testimonial-item{background:var(--color-white);border-radius:12px;padding:30px;box-shadow:0 4px 20px var(--shadow-light);border:1px solid var(--color-testimonial-border);transition:transform .3s ease,box-shadow .3s ease;position:relative}.testimonial-item:hover{transform:translateY(-5px);box-shadow:0 8px 30px var(--shadow-hover)}.testimonial-quote{margin-bottom:25px;position:relative}.quote-mark{font-size:4rem;color:var(--color-primary);font-family:times new roman,serif;position:absolute;top:-20px;left:-10px;line-height:1;opacity:.3}.quote-text{font-size:1.1em;line-height:1.6;color:var(--color-text-dark);font-style:italic;text-align:left;padding-left:20px;position:relative;z-index:1}.testimonial-author{text-align:left;padding-left:20px;border-top:2px solid var(--color-border-light);padding-top:20px}.author-name{font-weight:700;color:var(--color-primary);font-size:1.1em;margin-bottom:5px}.author-role{color:var(--color-text-medium);font-size:.95em;line-height:1.4}@media(max-width:768px){.testimonials-section{margin:40px 0}.testimonials-grid{grid-template-columns:1fr;gap:30px;padding:0 15px;max-width:90%}.testimonial-item{padding:25px}.quote-mark{font-size:3rem;top:-15px;left:-5px}.quote-text{font-size:1em;padding-left:15px}.testimonial-author{padding-left:15px}}button.cta-button{background-color:var(--color-cta-bg)}nav,.navbar{min-height:5rem;transition:transform .3s ease-in-out;background-color:var(--color-primary);color:var(--color-white)}.navbar a,.navbar a:visited,.navbar a:hover,.navbar a:focus,.navbar a:active{color:var(--color-white)!important}.navbar.navbar-hidden{transform:translateY(-100%)}.navbar-brand{min-height:5rem}.navbar .container{min-height:5rem}.navbar-logo{height:40px;padding-right:1.5rem}.navbar-logo-text{font-size:1.75rem;font-weight:700}.navbar-brand img{max-height:48px!important;height:48px}.navbar-item,.navbar-link{padding:.75rem 1.25rem;font-size:1.1rem;color:#fff}.navbar-item.has-dropdown .navbar-link:hover,.navbar-item.has-dropdown:hover .navbar-link{text-decoration:none!important}.navbar-burger{width:5.5rem;height:5.5rem}.navbar-burger span{height:3px;left:calc(50% - 12px);width:24px}.navbar-burger span:first-child{top:calc(50% - 9px)}.navbar-burger span:nth-child(2){top:calc(50% - 1.5px)}.navbar-burger span:nth-child(3){top:calc(50% + 6px)}.navbar-item.has-dropdown{padding:14px 0}.navbar-dropdown{font-size:1.3rem;padding-bottom:.75rem;padding-top:1rem;background-color:var(--color-primary);border:none;box-shadow:none}.navbar-dropdown .navbar-item{padding-left:3rem;padding-right:3rem;color:var(--color-white)}.navbar-dropdown .navbar-item:hover{background-color:var(--color-navbar-hover-bg);color:var(--color-white)}.navbar-item.has-dropdown .navbar-link:after{height:1em;width:1em;border-width:4px}.navbar-item.has-dropdown .navbar-dropdown{top:5.5rem;min-width:440px;margin-top:2px;left:auto;right:0}.navbar-item.has-dropdown .navbar-dropdown .navbar-item{padding:20px 40px}@media screen and (min-width:1024px){.navbar>.container .navbar-brand{margin-left:-1.5rem}.navbar>.container .navbar-menu{margin-right:-1.5rem}.navbar-dropdown .navbar-item{padding:.75rem 2rem}.navbar-dropdown a.navbar-item{padding-right:6rem}.navbar-link::after{display:none!important}}@media screen and (max-width:1023px){.navbar-menu.is-active{background-color:var(--color-primary)}.navbar-item.has-dropdown{padding:0}.navbar-item.has-dropdown .navbar-dropdown{position:static;background-color:transparent;box-shadow:none;border:none;padding:0;font-size:inherit}.navbar-dropdown .navbar-item{padding-left:2.5rem}}.navbar-item.has-dropdown .navbar-link{position:relative;display:flex;align-items:center;gap:.5rem}.navbar-item.has-dropdown .navbar-link::after{display:none!important}.dropdown-arrow{display:inline-block;transition:transform .3s ease;font-size:.8em}.navbar-item.has-dropdown:hover .dropdown-arrow{transform:rotate(90deg)}.navbar-item.has-dropdown:hover .navbar-dropdown,.navbar-item.has-dropdown .navbar-dropdown:hover{display:block!important}.navbar-dropdown{transition:opacity .2s ease,visibility .2s ease}.navbar-item.has-dropdown:hover .navbar-dropdown{opacity:1;visibility:visible}.navbar-item.has-dropdown .navbar-dropdown::before{content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:0 0}nav[aria-label=Breadcrumb],.nav[aria-label=Breadcrumb]{display:none!important}.research-header{text-align:center;margin:2rem 0;color:var(--color-primary);font-size:2.5em;font-weight:700}.research-description{font-size:1.2em;line-height:1.6;color:var(--color-text-medium);margin:2rem 0;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.research-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin:3rem 0;padding:0 1rem;max-width:1200px;margin-left:auto;margin-right:auto}.research-project{background:var(--color-white);border-radius:10px;padding:2rem;box-shadow:0 4px 6px var(--shadow-medium);transition:transform .3s ease,box-shadow .3s ease;border:2px solid transparent;border-left:4px solid var(--color-primary)}.research-project:hover{transform:translateY(-5px);box-shadow:0 8px 15px var(--shadow-hover-darker);border-color:var(--color-primary)}.research-project-link{text-decoration:none;color:inherit;display:block}.research-project-link:hover{text-decoration:none}.research-project-title{color:var(--color-primary);font-size:1.4em;margin-bottom:1rem;font-weight:700;line-height:1.3}.research-project-institution{color:var(--color-text-light);font-size:.95em;font-style:italic;margin-bottom:1rem;font-weight:500}.research-project-description{color:var(--color-text-dark);font-size:1.05em;line-height:1.5;margin:0}@media(max-width:768px){.research-grid{grid-template-columns:1fr;gap:1.5rem;margin:2rem 0;padding:0 1rem}.research-project{padding:1.5rem}.research-project-title{font-size:1.2em}.research-header{font-size:2em}}#footer{background-color:var(--color-primary);padding:1.5rem 1.5rem 1.75rem}:root{--spht-footer-height:11em}.team-header{text-align:center;margin:2rem 0}.team-description{font-size:1.2em;line-height:1.6;color:var(--color-text-medium);margin:2rem 0;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,320px));justify-content:center;gap:2rem;margin:3rem 0;padding:0 1rem}.team-member{background:var(--color-white);border-radius:10px;padding:2rem;text-align:center;box-shadow:0 4px 6px var(--shadow-medium);transition:transform .3s ease,box-shadow .3s ease;border:2px solid transparent}.team-member:hover{transform:translateY(-5px);box-shadow:0 8px 15px var(--shadow-hover-darker);border-color:var(--color-primary)}.team-member-link{text-decoration:none;color:inherit;display:block}.team-member-link:hover{text-decoration:none}.team-member-image{width:120px;height:120px;margin:0 auto 1.5rem;border-radius:50%;overflow:hidden;border:4px solid var(--color-primary);background:var(--color-border-light)}.team-member-image img{width:100%;height:100%;object-fit:contain}.team-member-name{color:var(--color-primary);font-size:1.4em;margin-bottom:1rem;font-weight:700}.team-member-affiliations{margin-bottom:1rem}.team-member-affiliation{color:var(--color-text-medium);font-size:.95em;font-style:italic;margin-bottom:.25rem}.team-member-role{color:var(--color-text-dark);font-size:1em;line-height:1.4;margin:0}.team-grid--compact{grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:900px;margin-left:auto;margin-right:auto}.team-grid--compact .team-member{padding:1.25rem}.team-grid--compact .team-member-image{width:80px;height:80px;margin-bottom:1rem;border-width:3px}.team-grid--compact .team-member-name{font-size:1.1em;margin-bottom:.5rem}.team-grid--compact .team-member-affiliation{font-size:.85em}.team-grid--compact .team-member-role{font-size:.9em}.gsoc-grid{display:flex;flex-direction:column;gap:3rem;margin:3rem 0;padding:0 1rem;max-width:1000px;margin-left:auto;margin-right:auto}.gsoc-member{display:flex;background:var(--color-white);border-radius:12px;padding:2.5rem;gap:2.5rem;box-shadow:0 4px 15px var(--shadow-light);border:1px solid var(--color-border-light);transition:transform .3s ease,box-shadow .3s ease;align-items:flex-start}.gsoc-member:hover{transform:translateY(-5px);box-shadow:0 10px 25px var(--shadow-medium);border-color:var(--color-primary)}.gsoc-member-image{flex-shrink:0;width:180px;height:180px;border-radius:12px;overflow:hidden;border:4px solid var(--color-primary);background:var(--color-border-light)}.gsoc-member-image img{width:100%;height:100%;object-fit:cover}.generic-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-primary);opacity:.6}.generic-icon svg{width:60%;height:60%}.gsoc-member-info{flex:1;text-align:left}.gsoc-member-name{color:var(--color-primary);font-size:1.8em;margin-bottom:.5rem;font-weight:900}.gsoc-project-title{color:var(--color-text-dark);font-size:1.3em;font-weight:700;margin-bottom:1rem;line-height:1.3}.gsoc-project-description{color:var(--color-text-medium);font-size:1.1em;line-height:1.6;margin-bottom:1.5rem}.gsoc-member-bio{color:var(--color-text-dark);font-size:1em;line-height:1.5;border-top:1px solid var(--color-divider);padding-top:1rem;font-style:italic}.section-divider{border:0;height:1px;background:var(--color-divider);margin:4rem 0}@media(max-width:768px){.gsoc-member{flex-direction:column;align-items:center;text-align:center;padding:1.5rem;gap:1.5rem}.gsoc-member-image{width:150px;height:150px}.gsoc-member-name{font-size:1.5em}.gsoc-project-title{font-size:1.1em}.gsoc-member-info{text-align:center}.team-grid{grid-template-columns:1fr;gap:1.5rem;margin:2rem 0}.team-member{padding:1.5rem}.team-member-image{width:100px;height:100px}.team-member-name{font-size:1.2em}.team-grid--compact{grid-template-columns:repeat(2,1fr);gap:1rem}.team-grid--compact .team-member-image{width:70px;height:70px}}table{border-collapse:collapse;width:100%;margin-bottom:1rem}th,td{border:1px solid var(--color-table-border);padding:.5rem;text-align:left}.image-box{width:240px;padding:.5rem;border:1px solid #ccc;background:#f8f8f8}.image-box.right{float:right;margin:0 0 1rem 1.5rem}.image-box.left{float:left;margin:0 1.5rem 1rem 0}.image-box img{display:block;max-width:100%;height:auto;margin-bottom:.5rem}.image-box p{margin:0;font-size:.9rem}