@import url(https://fonts.googleapis.com/css2?family=Amaranth:wght@400;700&family=Open+Sans:wght@400;500;700&display=swap);*{font-size:15px;margin:0;padding:0}#root{position:relative}html{scroll-behavior:smooth}:root{--main-colour:#1e1e1e;--disabled-colour:#282832;--text-colour:#d4d4d4;--secondary-colour:#9cdcfe;--tertiary-colour:#dcdcaa;--title-font:"Amaranth",sans-serif;--text-font:"Open Sans",sans-serif;--standard-radius:8px}img{height:auto;object-fit:cover;-webkit-user-select:none;-o-user-select:none;user-select:none;width:100%}.d-text{font-family:Open Sans,sans-serif;font-family:var(--text-font);font-size:1.2rem}.d-text,.d-title{color:#d4d4d4;color:var(--text-colour)}.d-title{font-family:Amaranth,sans-serif;font-family:var(--title-font);font-size:2.5rem}.d-button{color:#d4d4d4;color:var(--text-colour);cursor:pointer;flex-direction:row;font-family:Open Sans,sans-serif;font-family:var(--text-font);font-size:1.1rem;position:relative;text-decoration:none}.d-button .underline{background-color:#d4d4d4;background-color:var(--text-colour);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .2s ease-in-out;width:0}.d-button:hover .underline{width:100%}.fcc{align-items:center;justify-content:center}.fcc,.fee{display:flex}.fee{align-items:flex-end;justify-content:flex-end}.fca{justify-content:space-around}.fca,.fce{align-items:center;display:flex}.fce{justify-content:flex-end}.fcs{align-items:center}.fcs,.fss{display:flex;justify-content:flex-start}.fss{align-items:flex-start}.fec{align-items:flex-end}.fec,.fsc{display:flex;justify-content:center}.fsc{align-items:flex-start}.fsb{align-items:flex-start}.fcb,.fsb{display:flex;justify-content:space-between}.fcb{align-items:center}.content{background:#1e1e1e;background:var(--main-colour);overflow:hidden;position:relative;width:100%}.project-container{flex-direction:column;margin:30px 0;width:100%}@media screen and (max-width:1025px){:root{font-size:14px}}@media screen and (max-width:768px){:root{font-size:13px}}.error{flex-direction:column;height:100vh}.error .d-button{margin:10px 0}.error p{margin:10px}.writeup{flex-direction:column;min-height:100vh}.writeup .d-title{padding:120px 0 50px}.writeup .container{flex-direction:column;min-height:100vh;width:100%}@media screen and (max-width:768px){.writeup .container{min-height:60vh}}.navigation-bar{background:var(--main-colour);padding:25px 0;position:fixed;top:0;width:100%;z-index:5}.navigation-bar .brand{color:var(--main-colour);margin-left:7rem;text-decoration:none}.navigation-bar .hamburger{color:var(--text-colour);cursor:pointer;font-size:1.25rem;margin-right:7rem}.navigation-bar .brand img{width:75px}@media screen and (max-width:767px){.navigation-bar .brand{margin-left:3rem}.navigation-bar .hamburger{margin-right:3rem}}.nav-bar{background:#000000e6;height:100vh;width:100vw;z-index:6}.nav-bar,.nav-bar .temp{inset:0;position:absolute}.nav-bar .temp{background:#0000}.nav-bar .links{flex-direction:column;height:100%;width:100%}.nav-bar .links .d-button{background:#0000;border:none;color:var(--text-colour);font-size:2rem;margin:20px 0;text-align:center;width:50%}.nav-bar .links .d-button:hover{background:none;border-color:none;color:var(--secondary-colour)}.navigation-bar .left{font-size:1.1rem;margin-left:5rem}.navigation-bar .right{margin-right:5rem}.navigation-bar .right .d-button{margin:0 20px}.footer{color:var(--text-colour);padding:20px 0;width:100%}.footer .links{flex-direction:row;padding:10px 0}.footer footer{margin:5px 30px;text-align:center}.footer .icons a,.footer.change .icons a,.footer.change .links .d-text,.footer.change footer{color:var(--text-colour)}.footer .icons a svg{font-size:1.3rem}.footer .icons a:hover{color:var(--secondary-colour)}.footer svg{margin:0 5px}.footer .links span{margin:0 10px}.footer .links .link{text-decoration:none}.footer .links .d-text{font-size:1rem}.writeupbutton{flex-direction:row;margin:20px 0;text-decoration:none;width:50%}.writeupbutton>svg{color:var(--text-colour);font-size:1.3rem}.writeupbutton .information{flex-direction:column;width:60%}.writeupbutton .information .title{font-size:1.5rem;font-weight:700}.writeupbutton .information .placement{font-size:1.1rem;opacity:.8}.writeupbutton .information .type{font-size:1.1rem;opacity:.5}.writeupbutton:hover .information .d-text,.writeupbutton:hover svg{color:var(--secondary-colour)}@media screen and (max-width:1200px){.writeupbutton{width:65%}}@media screen and (max-width:1000px){.writeupbutton{width:80%}}@media screen and (max-width:768px){.writeupbutton{width:90%}.writeupbutton .information .title{font-size:1.35rem}.writeupbutton .information .type{font-size:1rem}.writeupbutton .information{margin-left:15px}}@media screen and (width:768px) and (height:1024px){.writeupbutton{width:80%}.writeupbutton .information .title{font-size:1.5rem}.writeupbutton .information .type{font-size:1.1rem}}.projects-page{flex-direction:column;min-height:100vh}.projects-page>.d-title{padding-top:120px;text-align:center;width:100%}.projects-page .project-container{min-height:50vh}@media screen and (max-width:1200px){.projects-page .project-container{margin:10px 0;min-height:60vh}}@media screen and (max-width:768px){.projects-page .project-container{min-height:60vh}}.project{flex-direction:row;margin:20px 0;text-decoration:none;width:50%}.project .temporary{background:var(--disabled-colour);height:6.75rem}.project .temporary,.project img{border-radius:var(--standard-radius);width:12rem}.project img{aspect-ratio:16/9}.project>svg{color:var(--text-colour);font-size:1.3rem}.project .information{flex-direction:column;width:60%}.project .information .title{font-size:1.5rem;font-weight:700}.project .information .type{font-size:1.1rem;opacity:.5}.project:hover .information .d-text,.project:hover svg{color:var(--secondary-colour)}@media screen and (max-width:1200px){.project{width:65%}}@media screen and (max-width:1000px){.project .temporary{height:5.625rem;width:10rem}.project{width:80%}.project img{width:10rem}}@media screen and (max-width:768px){.project{width:90%}.project .information .icon-container{display:none}.project .information .title{font-size:1.35rem}.project .information .type{font-size:1rem}.project .information{margin-left:15px}}@media screen and (width:768px) and (height:1024px){.project{width:80%}.project .information .icon-container{display:flex}.project .information .title{font-size:1.5rem}.project .information .type{font-size:1.1rem}.project img{width:12rem}.project .information .icon-container>.skill svg{margin-top:0}.project .temporary{height:6.75rem;width:12rem}}.icons{flex-direction:row;flex-wrap:wrap}.skill svg{color:var(--text-colour);font-size:2rem;margin-right:20px}@media screen and (max-width:768px){.skill svg{margin-top:20px}}.search-bar{background:var(--main-colour);flex-direction:column;padding:20px 0 50px;width:100%}.search-bar input{background:var(--main-colour);border:2px solid var(--text-colour);border-radius:5px;color:var(--text-colour);outline:none;padding:10px 20px;width:40vw}.search-bar .choices{flex-direction:row;flex-wrap:wrap;margin:10px 0 -50px;width:80%}.search-bar input:focus{border-color:var(--secondary-colour)}.search-bar .d-button{padding:10px 20px}.search-bar .search-container{flex-direction:row}@media screen and (max-width:1200px){.search-bar input{width:60vw}}.choice{border:2px solid var(--text-colour);border-radius:5px;color:var(--text-colour);margin:10px 15px;padding:7.5px 12.5px}.choice.selected{border-color:var(--secondary-colour)}.page{flex-direction:column;min-height:100vh;width:100%}.page>.d-title{padding-top:120px}.page>.d-text,.page>.d-title{text-align:center;width:100%}.page .skill-container{flex-direction:row;width:70%}.page .quickoverview{flex-direction:column;padding:40px 0;width:100%}.page .quickoverview .d-text{margin:10px 0;text-align:justify;width:70vw}.page .quickoverview>.d-title{font-size:1.8rem;text-align:left;width:70%}.page .button-container{margin:40px 0;width:70%}.page .button-container .d-button{color:var(--secondary-colour)}@media screen and (max-width:768px){.page .button-container,.page .quickoverview .d-text,.page .quickoverview>.d-title,.page .skill-container{width:80vw}}.mobile-responsive{flex-direction:row-reverse;margin:80px 0;width:100%}.mobile-responsive .information{flex-direction:column;margin:0 10rem 0 3rem;width:50%}.mobile-responsive .picture-container{box-sizing:border-box;height:0;margin:0 3rem 0 10rem;padding:50px 0;position:relative;width:50%}.mobile-responsive .picture-container img{border:3px solid var(--disabled-colour);border-radius:var(--standard-radius);position:absolute;text-align:center;transform:translate(-50%,-50%)}.mobile-responsive .picture-container .desktop{aspect-ratio:16/9;left:50%;max-width:450px;top:50%;width:70%}.mobile-responsive .picture-container .tablet{aspect-ratio:4/3;left:80%;max-width:325px;top:80%;width:50%}.mobile-responsive .picture-container .mobile{aspect-ratio:1/2;left:10%;max-width:125px;top:10%;width:20%}.mobile-responsive .information .d-title{font-size:1.8rem}.mobile-responsive .information .d-text{text-align:justify}@media screen and (max-width:1200px){.mobile-responsive .information{margin:0 2rem 0 8rem}}@media screen and (max-width:1000px){.mobile-responsive{flex-direction:column;margin:50px 0}.mobile-responsive .information{margin:20px 0;width:70%}.mobile-responsive .picture-container{margin:0;padding:200px 0;width:100%}.mobile-responsive .picture-container .desktop{left:45%;max-width:none;top:50%;width:50%}.mobile-responsive .picture-container .tablet{left:65%;max-width:none;top:70%;width:30%}.mobile-responsive .picture-container .mobile{left:20%;max-width:none;top:20%;width:10%}}@media screen and (max-width:768px){.mobile-responsive .information{width:80%}.mobile-responsive .picture-container{padding:100px 0}.mobile-responsive .picture-container .mobile{top:35%}}.technology-used{flex-direction:row;margin:70px 0;width:100%}.technology-used .information{flex-direction:column;margin:0 6rem 0 10rem;width:50%}.technology-used .stacks{flex-direction:column;margin:0 6rem 0 2rem;width:50%}.technology-used .information .d-title{font-size:1.8rem}.technology-used .information .d-text{text-align:justify}@media screen and (max-width:1200px){.technology-used .information{margin:0 2rem 0 8rem}}@media screen and (max-width:1000px){.technology-used{flex-direction:column;margin:30px 0}.technology-used .information{flex-direction:column;margin:0;width:70%}.technology-used .stacks{flex-direction:row;flex-wrap:wrap;margin:20px 0;width:70%}.technology-used .information{width:80%}}.stack{margin:10px 0;width:40%}.stack svg{font-size:3.2rem;margin-right:5px}.stack div{font-size:1.5rem}@media screen and (max-width:1000px){.stack{width:50%}}.general{flex-direction:row}.general .picture-container{margin:0 2rem}.general .picture-container img{border-radius:var(--standard-radius);object-fit:stretch;width:70%}.title-text{flex-direction:column;margin:70px 0;width:100%}.title-text .d-title{font-size:1.8rem;text-align:justify}.title-text .d-text{margin:0 10rem}.general{flex-direction:column;margin:80px 0;width:100%}.general .general-information-container{flex-direction:row;width:100%}.general .information{flex-direction:column;margin:0 3rem 0 10rem;width:50%}.general .information .d-title{font-size:1.8rem;margin-top:0}.general .information .d-text{text-align:justify}.general .picture-container{width:50%}.general .picture-container img{aspect-ratio:4/3;border:2px solid var(--disabled-colour);margin:0 9rem}@media screen and (max-width:1400px){.general .picture-container img{margin:0 1rem}}@media screen and (max-width:1025px){.general .general-information-container{flex-direction:column}.general .information .d-title{margin:0 0 10px}.general-information-container .picture-container{margin-top:30px}.general .picture-container img{aspect-ratio:16/9}.general .picture-container{width:80%}.general .information{margin:0;width:80%}}@media screen and (max-width:768px){.general .picture-container{width:100%}}.about{flex-direction:column;min-height:100vh}.about .header{background:var(--main-colour);flex-direction:column;min-height:70vh;padding:120px 0 50px}.about .header .picture{aspect-ratio:1/1;background:var(--main-colour);border:2px solid var(--tertiary-colour);border-radius:50%;flex-shrink:0;height:325px;overflow:hidden;width:325px;z-index:2}.about .header .picture>span{display:block!important;height:100%;width:100%}.about .header .information{border:2px solid var(--tertiary-colour);border-radius:var(--standard-radius);flex-direction:column;margin-top:-30px;padding:30px 30px 10px;width:45%}.about .header .information .position{text-align:center}.about .overview{flex-direction:row;margin:75px 0}.about .header .picture img{border-radius:50%;height:100%;object-fit:cover;width:100%}.about .header .information .buttons{flex-direction:row;flex-wrap:wrap;margin:15px 0}.about .header .information .buttons .container{margin:5px 30px}.about .header .information .buttons .container svg{color:var(--text-colour);font-size:1.3rem;margin-right:5px}@media screen and (max-width:1000px){.about .overview{flex-direction:column}.about .overview>.abilities{padding-top:0}}@media screen and (max-width:768px){.about .header .information{width:70%}}.abilities .ability-container{flex-direction:row;flex-wrap:wrap}.abilities{width:50%}.abilities .ability-container,.abilities .skill-container,.abilities>.d-text,.abilities>.d-title{margin-left:9rem}.abilities .ability-container,.abilities .skill-container,.abilities>.d-text{margin-right:6rem}.abilities .d-text{text-align:justify}@media screen and (max-width:1200px){.abilities .ability-container,.abilities .skill-container,.abilities>.d-text,.abilities>.d-title{margin-left:7rem}.abilities .ability-container,.abilities .skill-container,.abilities>.d-text{margin-right:2rem}}@media screen and (max-width:1000px){.abilities{width:100%}.abilities .ability-container,.abilities .skill-container,.abilities>.d-text,.abilities>.d-title{margin:0 8rem}}@media screen and (max-width:768px){.abilities{padding-top:100px}.abilities .ability-container,.abilities .skill-container,.abilities>.d-text,.abilities>.d-title{margin:0 3rem}.abilities .skill-container{flex-wrap:wrap}}.ability{flex-direction:column;margin:20px 0;width:50%}.ability .number{color:var(--secondary-colour);font-weight:700}.ability .description{opacity:.8}.types{flex-direction:column;width:50%}@media screen and (max-width:1000px){.types{margin-top:75px;width:100%}}.types .type{border-bottom:2px solid var(--main-colour);flex-direction:row;margin-right:50px;padding:15px 0;text-decoration:none;width:70%}.types .type .temporary,.types .type img{border-radius:var(--standard-radius)}.types .type img{aspect-ratio:16/9;background:var(--main-colour);object-fit:cover;width:12rem}.types .type svg{color:var(--text-colour);font-size:1.3rem}.types .type .d-text{font-weight:700}.types .type.heeheeheehar .temporary{background:var(--disabled-colour)}.types .type:hover .d-text,.types .type:hover svg{color:var(--secondary-colour)}@media screen and (max-width:1200px){.types .type .temporary{height:5.625rem;width:10rem}}@media screen and (max-width:1000px){.types .type{margin-right:0;width:60%}}@media screen and (max-width:768px){.types .type{width:80%}.types .type .temporary{height:3.9375rem;width:7rem}}.education{flex-direction:row;margin-bottom:75px;width:100%}.education .information{flex-direction:column;margin:0 5rem 0 7rem;width:50%}.education .timeline{flex-direction:column;margin:0 9rem 0 5rem;position:relative;width:50%}.education .timeline .backbone{background:var(--disabled-colour);height:100%;left:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:3px}.education .timeline:hover .backbone{background:var(--secondary-colour)}.education .information .d-text{text-align:justify}@media screen and (max-width:1200px){.education .information{flex-direction:column;margin:0 6rem 0 4rem;order:2;width:50%}}@media screen and (max-width:1000px){.education .timeline{margin:50px 0;width:80%}.education{flex-direction:column-reverse}.education .information{width:65%}}.education .timeline .timeline-component:hover{border-color:var(--secondary-colour)}.certification{flex-direction:row;margin-bottom:75px;width:100%}.certification .information{flex-direction:column;margin:0 5rem 0 7rem;width:50%}.certification .timeline{flex-direction:column;margin:0 9rem 0 5rem;position:relative;width:50%}.certification .timeline .backbone{background:var(--disabled-colour);height:100%;left:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:3px}.certification .timeline:hover .backbone{background:var(--secondary-colour)}.certification .information .d-text{text-align:justify}@media screen and (max-width:1200px){.certification .information{flex-direction:column;margin:0 6rem 0 4rem;order:2;width:50%}}@media screen and (max-width:1000px){.certification .timeline{margin:50px 0;width:80%}.certification{flex-direction:column-reverse}.certification .information{width:65%}}.certification .timeline .timeline-component:hover{border-color:var(--secondary-colour)}.cve{flex-direction:row;margin-bottom:75px;width:100%}.cve .information{flex-direction:column;margin:0 9rem 0 5rem;width:50%}.cve .timeline{flex-direction:column;margin:0 5rem 0 7rem;position:relative;width:50%}.cve .timeline .backbone{background:var(--disabled-colour);height:100%;left:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:3px}.cve .timeline:hover .backbone{background:var(--secondary-colour)}.cve .information .d-text{text-align:justify}@media screen and (max-width:1200px){.cve .information{flex-direction:column;margin:0 6rem 0 4rem;width:50%}}@media screen and (max-width:1000px){.cve .timeline{margin:50px 0;width:80%}.cve{flex-direction:column-reverse}.cve .information{width:65%}}.timeline-component{border:3px solid var(--disabled-colour);border-radius:var(--standard-radius);flex-direction:column;margin:10px 0 10px 50px;padding:10px 20px;width:100%}.timeline-component .d-title{font-size:1.4rem}.timeline-component .d-text{font-size:1rem}.cve .timeline .timeline-component:hover{border-color:var(--secondary-colour)}@media screen and (max-width:1000px){.timeline-component{width:80%}}@media screen and (max-width:768px){.timeline-component{margin:5px 0 5px 20px}}.builder-container{flex-direction:column;min-height:100vh;padding:80px 0 50px;width:100vw}.command-builder-title{margin:50px 0}.builder-description{margin-bottom:50px;width:80%}.command-builder{border:2px solid var(--tertiary-colour);border-radius:8px;flex-direction:column;padding:1rem;width:80%}.command-builder-title{color:var(--text-colour);font-size:2rem;margin-bottom:1rem;text-align:left;width:80%}.form-group{margin-bottom:1rem;width:90%}.form-group label{color:var(--text-colour);font-weight:700;margin-bottom:.5rem}.form-group input[type=text],.form-group select{border:1px solid #ccc;border-radius:4px;padding:.5rem;width:100%}.form-options{margin-bottom:1rem;width:90%}.checkbox-label{align-items:center;display:inline-flex;font-size:14px;font-weight:400;gap:.5rem;margin-bottom:.5rem}.command-output{border:1px solid #ccc;border-radius:4px;font-family:monospace;padding:.5rem;width:100%}.copy-button{background:var(--main-colour);border:2px solid var(--tertiary-colour);border-radius:5px;color:var(--text-colour);margin-right:20px;outline:none;padding:7.5px 10px;width:50%}.copy-button:hover{background:var(--tertiary-colour);color:#000}input[type=checkbox]{accent-color:var(--tertiary-colour);cursor:pointer;height:16px;margin-right:.5rem;width:16px}.workshops{flex-direction:column}.workshops .d-title{padding:120px 0 50px}.workshops .container{flex-direction:column;min-height:100vh;width:100%}@media screen and (max-width:768px){.workshops .container{min-height:60vh}}.workshopbutton{flex-direction:row;margin:20px 0;text-decoration:none;width:50%}.workshopbutton>svg{color:var(--text-colour);font-size:1.3rem}.workshopbutton .information{flex-direction:column;width:90%}.workshopbutton .information .title{font-size:1.5rem;font-weight:700}.workshopbutton .information .type{font-size:1.1rem;opacity:.8}.workshopbutton .information .description{font-size:1.1rem;opacity:.5;text-align:justify}.workshopbutton:hover .information .d-text,.workshopbutton:hover svg{color:var(--secondary-colour)}@media screen and (max-width:1200px){.workshopbutton{width:65%}}@media screen and (max-width:1000px){.workshopbutton{width:80%}}@media screen and (max-width:768px){.workshopbutton{width:90%}.workshopbutton .information .title{font-size:1.35rem}.workshopbutton .information .type{font-size:1rem}.workshopbutton .information{margin-left:15px}}@media screen and (width:768px) and (height:1024px){.workshopbutton{width:80%}.workshopbutton .information .title{font-size:1.5rem}.workshopbutton .information .type{font-size:1.1rem}}
/*# sourceMappingURL=main.978ff9d9.css.map*/