body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}#projects{padding:0 20px;background-color:var(--background-color);width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:auto;box-sizing:border-box}.projects-container{display:grid;grid-gap:20px;gap:20px;padding:20px}.project-card{padding:10px;box-sizing:border-box;background:var(--card-color);border-radius:8px;margin:10px;box-shadow:0 4px 6px rgba(0,0,0,.1);overflow:hidden;max-width:400px;max-height:500px;transition:all .3s ease;cursor:pointer;flex-grow:1;flex-shrink:1;flex-basis:calc(45% - 40px)}.project-card:hover{transform:translateY(-10px);background:var(--card-hover-color)}.project-card img{width:100%;height:300px;object-fit:contain}.project-card h3{padding:15px;margin:0}.project-card p{padding:0 15px 15px;margin:0}.project-card.expanded{grid-gap:20px;gap:20px}.project-card.expanded p{margin-top:10px;color:#575757}.project-card.expanded img{height:100%}.project-card.expanded h3{grid-column:2;padding-bottom:0}.project-card.expanded p{grid-column:2}@media (min-width:901px) and (max-width:2000px){.projects-container{grid-template-columns:repeat(2,1fr)}}@media (min-width:2001px){.projects-container{grid-template-columns:repeat(4,1fr)}}@media (max-width:900px){.project-card{max-width:100%;flex:1 1 100%}.project-card.expanded{grid-template-columns:1fr}.project-card.expanded img{height:200px}.project-card.expanded h3,.project-card.expanded p{grid-column:1}}#team{background-color:var(--team-background-color);width:100%;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box}#team .section-title,#team h3,#team p{color:var(--team-text-color)}.team-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(390px,1fr));grid-gap:20px;gap:20px;padding:20px;align-items:stretch}.team-card{background:var(--team-card-color);box-shadow:0 4px 8px rgba(0,0,0,.1);padding:50px;border-radius:8px;transition:transform .3s ease;box-sizing:border-box;margin:10px;max-width:400px;overflow:hidden;display:flex;flex-direction:column;align-items:center;height:100%}.team-card.break-after{grid-column:1/-1;margin-bottom:10px;border-bottom:2px solid #ddd;padding-bottom:10px;height:400px}.team-section-container{align-items:center}.team-container-container,.team-section-container{display:flex;flex-direction:column;width:100%;justify-content:center;box-sizing:border-box}.team-container-container{padding:20px}.team-card:hover{transform:translateY(-10px);background:#f0f0f0;cursor:pointer}.team-card-inner{height:auto;display:flex;flex-direction:column}.team-card img{width:150px;height:150px;border-radius:50%;object-fit:cover;margin:0 auto 15px}.team-card h3{grid-column:2;padding:15px;margin:0}.team-card p{padding:0 15px 15px;margin:0}.team-card role{font-style:italic;margin:0 0 10px;padding:0 10px}.team-member-desc{flex-grow:1;overflow:auto;padding:0 10px 10px;margin:0}.team-card-inner{flex:1 1}#alumni{padding:40px 20px;background:var(--background-color,#eef1f4)}#alumni .section-title{text-align:center;margin-bottom:16px}.alumni-card{max-width:900px;margin:0 auto;background:var(--card-color,#fff);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:28px 24px;text-align:center}.alumni-logo{width:72px;height:72px;object-fit:contain;margin-bottom:12px;opacity:.9}.alumni-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:8px 18px;gap:8px 18px}.alumni-list li{padding:6px 0;color:#222}.alumni-note{margin-top:12px;color:#666;font-size:.95rem}@media (max-width:560px){.alumni-list{grid-template-columns:1fr}}*,:after,:before{box-sizing:border-box}#publications{padding:40px;background-color:#f9f9f9}.section-title{text-align:center;margin-bottom:30px}.year-section{margin-bottom:20px}.year-section h3{border-bottom:2px solid #ddd;padding-bottom:5px;margin-bottom:15px}.year-container{flex-direction:column;grid-template-columns:1fr;justify-content:center;grid-gap:15px;gap:15px}.publication-card{background:#fff;text-align:center;border-radius:8px;padding:15px;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:transform .3s ease;max-width:1600px;width:100%;margin:20px auto}.publication-card:hover{transform:translateY(-10px);background:var(--card-hover-color);cursor:pointer}.publication-card h4{margin:0 0 10px;font-size:1.2em}.publication-card p{margin:5px 0}@media (max-width:768px){.publication-card{padding:10px;margin:15px auto}}.custom-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:30px;color:rgba(0,0,0,.5);cursor:pointer;z-index:10;transition:color .3s ease;background:none;border:none;outline:none}.custom-arrow:hover{color:#555}.custom-prev-arrow{left:-40px}.custom-next-arrow{right:-40px}.carousel-wrapper{position:relative}.news-container{max-width:600px;margin:30px auto 0}.news-carousel .news-item{padding:20px;text-align:center;background:#f9f9f9;border-radius:8px}.news-title{font-size:1.2em;font-weight:700}.news-description{font-size:1em;margin-top:10px}#competition-announcement{padding:40px;background-color:#f9f9f9;text-align:center}#competition-announcement .competition-content{max-width:800px;margin:0 auto;font-size:1.1em;line-height:1.5;color:#333}.competition-button{margin-top:30px;padding:12px 30px;background:var(--card-color);border-radius:6px;font-size:1.1em;transition:.3s ease;color:#000;border:1px solid #ccc}.competition-button:hover{background:var(--card-hover-color);transform:translateY(-3px);cursor:pointer}#competition{padding:56px 20px;background:var(--background-color,#fff);display:flex;flex-direction:column;grid-gap:32px;gap:32px;align-items:flex-start}#competition p{text-align:justify}#competition .section-title{text-align:center;letter-spacing:.2px;margin:0 0 8px}.competition-intro{max-width:980px;margin:0 auto 8px;font-size:1.08rem;line-height:1.7;color:#2b2b2b;text-align:center}.competition-card{background:transparent;box-shadow:none;border-radius:0;max-width:980px;width:100%;margin:0 auto;text-align:left;border-top:1px solid #e9ecef;padding:24px 0 0}.competition-card:first-of-type{border-top:0;padding-top:0}.competition-card h3{margin:0 0 10px;font-size:1.35rem;font-weight:700;letter-spacing:.2px}.competition-card li,.competition-card p{color:#333;line-height:1.75;font-size:1.02rem}.keydates{display:grid;grid-template-columns:220px 1fr;grid-gap:8px 18px;gap:8px 18px;align-items:start}.keydates .k{font-weight:600;color:#111}.keydates .v{color:#333}.metrics{grid-gap:6px;gap:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size:.98rem;justify-items:start}.codeblock{margin-top:12px;border:1px solid #eef0f2;background:#fafbfc;border-radius:6px;overflow:auto}.codeblock pre{margin:0;padding:12px 14px;font-size:.92rem}.data-row{display:flex;grid-gap:1.5rem;gap:1.5rem;align-items:flex-start}.data-row .text{flex:1 1}.landmarks-image{max-width:200px;height:auto;align-self:center}.competition-button{align-self:center;display:inline-block;margin:10px auto 8px;padding:12px 26px;background:var(--card-color,#f3f4f6);border-radius:999px;text-decoration:none;font-size:1.05rem;color:#111;border:1px solid #dadde1;transition:transform .2s ease,background .2s ease}.competition-button:hover{background:var(--card-hover-color,#e9ecef);transform:translateY(-1px)}.refs{max-width:900px;margin:4px auto 0;text-align:left}.refs h4{margin:12px 0}@media (max-width:760px){.keydates{grid-template-columns:1fr}.competition-intro{text-align:left}}

/*! Colour palette */:root{--primary-color:#3f978d;--secondary-color:#3f978d;--background-color:#f0f2f5;--card-color:#fff;--card-hover-color:#f9f9f9;--section-color:#f9f9f9;--team-background-color:#f0f2f5;--team-card-color:#fff;--team-text-color:#000;--team-section-color:#f9f9f9}.more-text{color:grey;background-color:initial}body{font-family:"Arial",sans-serif;margin:0;padding:0;background-color:var(--background-color);color:#333;width:100%}header{background:var(--primary-color);color:#fff;padding:0;text-align:center;z-index:1000}.header-content{display:flex;justify-content:space-between;align-items:center;padding:20px;max-width:1200px;margin:auto}header h1{margin:0;font-size:2.5em}.header-logo{width:130px;height:130px;border-radius:50%;object-fit:cover}nav{display:flex;top:0;cursor:pointer;justify-content:center;background-color:#000;padding:15px;position:sticky;z-index:1000}nav,nav a{border-bottom:2px solid #000}nav a{color:#fff;margin:0 15px;text-decoration:none;font-size:1.1em}nav a:hover{border-bottom:2px solid var(--secondary-color)}section{padding:50px 20px;margin:auto;text-align:center}.section-title{font-size:2em;margin-bottom:20px;border-bottom:2px solid var(--secondary-color);display:inline-block;padding-bottom:10px;align-self:center}.home-image{width:100%;max-width:600px;display:block;margin:20px auto}.logo{height:200px;margin:0 20px}.year-section h3{margin:0 0 20px;font-size:1.5em;text-align:left}footer{background-color:var(--primary-color);text-align:center;padding:20px;position:relative;bottom:0;width:100%;box-sizing:border-box}footer,footer a{color:#fff}@media (max-width:768px){header h1{font-size:2em}nav a{font-size:1em;margin:0 10px}.logo{height:70px;margin:10px 0}.header-content{flex-direction:column;align-items:center}.header-logo{width:50px;height:50px;margin-top:10px}}@media (max-width:1536px){header h1{font-size:1.5em}.header-content{padding:10px}.header-logo{width:50px;height:50px}.header-content{flex-direction:column;align-items:center}}
/*# sourceMappingURL=main.9116e03d.chunk.css.map */