
:root{
    /*Override Bootstrap*/
    --bs-offcanvas-padding-y: 20px;

    /*Fonts*/
    --main-font-family: 'Helvetica Neue', Helvetica, Arial,  sans-serif;
    --secondary-font-family: Helvetica, Arial, sans-serif;
    --light-font-weight: 300;
    --h3-reg-font-weight: 300;
    --reg-font-weight: 400;
    --h4-bold-font-weight: 500;
    --med-font-weight: 500;
    --h6-bold-font-weight: 700;
    --line-height-normal: normal;
    --line-height-body1: 25px;

    /*Borders*/
    --elevation-1: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 1px 2px 0px rgba(0, 0, 0, 0.30), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
    --elevation-2: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 1px 2px 0px rgba(0, 0, 0, 0.30), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
    --elevation-3: 0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px 0px rgba(0, 0, 0, 0.30);
    --elevation-4: 0px 6px 10px 4px rgba(0, 0, 0, 0.15), 0px 2px 3px 0px rgba(0, 0, 0, 0.30);

    /*Shadows*/
    --text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);

    /*Margins*/
    --close-button-padding-y: 10px;

    /*Colours*/
    --alert-background: #F6DC3D;
    --background: #FFFFFF;
    --background-black: #000000;
    --background-transparent: transparent;
    --background-blur: blur(15px);
    --background-blur-mobile: blur(15px);
    --black: #000000;
    --black-opacity-light: rgba(0,0,0,0.25);
    --black-opacity-midlight: rgba(0,0,0,0.30);
    --black-opacity-mid: rgba(0,0,0,0.5);
    --opaque-light-grey: rgba(255,255,255, 0.3);
    --linear-gradient-black: linear-gradient(90deg,transparent, rgba(0,0,0,0.5), transparent);
    --linear-gradient-marble: linear-gradient(90deg, #3F6BAE 3%, #6DA39F 33.33%, #D89E37 66.67%, #823628 100%);
    --white: #FFFFFF;
    --white-opacity-lighter: rgba(255,255,255,0.3);
    --primary-opacity-middark: rgba(48,79,255,0.75);

    --border-black: #000000;

    --surface: #FFFFFF;
    --error: #B20002;
    --text-on-primary: #FFFFFF;
    --text-on-primary-alt: #536DFE;
    --text-on-secondary: #000000;
    --text-on-background: #000000;
    --text-on-surface: #000000;
    --text-on-error: #FFFFFF;
    --text-on-dark: #FFFFFF;
    --primary: #304FFE;
    --primary-alt: #C5CAE9;
    --primary-variant: #283593;
    --secondary: #03DAC6;
    --secondary-variant: #018786;

    --indigo-50: #E8EAF6;
    --indigo-100: #C5CAE9;
    --indigo-200: #9FA8DA;
    --indigo-300: #7886CB;
    --indigo-400: #5C6BC0;
    --indigo-500: #4050B5;
    --indigo-600: #3949AB;
    --indigo-700: #303F9F;
    --indigo-800: #283593;
    --indigo-900: #1A237E;
    --indigo-A100: #8C9EFF;
    --indigo-A200: #536DFE;
    --indigo-A400: #3D5AFE;
    --indigo-A700: #304FFE;

    --teal-50: #E0F2F1;
    --teal-100: #B2DFDB;
    --teal-200: #80CBC4;
    --teal-300: #4DB6AC;
    --teal-400: #26A69A;
    --teal-500: #009688;
    --teal-600: #00897B;
    --teal-700: #00796B;
    --teal-800: #00695C;
    --teal-900: #004D3F;
    --teal-A100: #A7FFEB;
    --teal-A200: #64FFDA;
    --teal-A400: #1DE9B6;
    --teal-A700: #00BFA5;

    --deep-orange-50: #FBE9E6;
    --deep-orange-100: #FFCCBC;
    --deep-orange-200: #FFAB91;
    --deep-orange-300: #FF8A65;
    --deep-orange-400: #FF7043;
    --deep-orange-500:  #FF5722;
    --deep-orange-600: #F4511E;
    --deep-orange-700: #E64A19;
    --deep-orange-800: #D94214;
    --deep-orange-900: #BF360D;
    --deep-orange-A100: #FF9E80;
    --deep-orange-A200: #FF6E40;
    --deep-orange-A400: #FF3D00;
    --deep-orange-A700: #DD2C00;

    --gray-50: #FAFAFA;
    --gray-100: #F5F5F5;
    --gray-200: #EEEEEE;
    --gray-300: #E0E0E0;
    --gray-400: #BDBDBD;
    --gray-500: #9E9E9E;
    --gray-600: #757575;
    --gray-700: #757575;
    --gray-800: #424242;
    --gray-900: #212121;
}

p{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 16px;
    letter-spacing: 0.024px;
    line-height: var(--line-height-body1);
}

.body-1{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 16px;
    letter-spacing: 0.024px;
    line-height: var(--line-height-body1);
}

.body-2{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 14px;
    letter-spacing: 0.014px;
    line-height: var(--line-height-normal);
}

h1{
    font-family: var(--secondary-font-family);
    font-weight: var(--light-font-weight);
    font-size: 96px;
    letter-spacing: -1.44px;
    line-height: var(--line-height-normal);
}

h2{
    font-family: var(--main-font-family);
    font-weight: var(--light-font-weight);
    font-size: 60px;
    letter-spacing: -0.3px;
    line-height: var(--line-height-normal);
}

h3{
    font-family: var(--main-font-family);
    font-weight: var(--h3-reg-font-weight);
    font-size: 48px;
    line-height: var(--line-height-normal);
}

h4{
    font-family: var(--main-font-family);
    font-weight: var(--h4-bold-font-weight);
    font-size: 34px;
    letter-spacing: 0.085px;
    line-height: var(--line-height-normal);
}

h5{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 24px;
    line-height: var(--line-height-normal);
}

h6{
    font-family: var(--secondary-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 20px;
    letter-spacing: 0.03px;
    line-height: var(--line-height-normal);
}

.subtitle-1, .leading-text-1{
    font-family: var(--main-font-family);
    font-weight: var(--med-font-weight);
    font-size: 16px;
    letter-spacing: 0.03px;
    line-height: var(--line-height-normal);
}

.subtitle-2, .leading-text-2{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 14px;
    letter-spacing: 0.014px;
    line-height: var(--line-height-normal);
}

.button-text{
    font-family: var(--main-font-family);
    font-weight: var(--med-font-weight);
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.024px;
    line-height: var(--line-height-normal);
}

.caption{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 12px;
    letter-spacing: 0.048px;
    line-height: var(--line-height-normal);
}

.overline{
    font-family: var(--main-font-family);
    font-weight: var(--reg-font-weight);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.15px;
    line-height: var(--line-height-normal);
}

.error-text{
    color: var(--error);
}
/*UI Components*/
/*Buttons*/

.disabled{
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
  }

.button-reg{
    width: 126px;
    height: 51px;
    flex-shrink: 0;
    border: none;
}

.button-med{
    width: 108px;
    height: 51px;
    flex-shrink: 0;
    border: none;
}

.button-reg:hover, .button-med:hover{
    background-color: var(--indigo-800);
}

.button-sm{
    width: 75px;
    height: 51px;
    flex-shrink: 0;
    border: none;
}

.button-sm:hover{
    background-color: var(--background-black);
}

.button-transparent{
    width: 136px;
    height: 45px;
    flex-shrink: 0;
    border-style: solid;
    border-width: 1px;
    border-color: var(--white);
    border-radius: 10px;
}

.button-transparent:hover{
    background-color: var(--white);
    color: var(--black);
    border-style: solid;
    border-width: 1px;
    border-color: var(--white);
    border-radius: 10px;
}

.button-sm-alt{
    width: 75px;
    height: 51px;
    flex-shrink: 0;
    border: none;
}

.button-med-alt{
    width: 108px;
    height: 51px;
    flex-shrink: 0;
    border: none;
}

.button-single-action{
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50px;
    border: none;
}

.button-single-action-sm{
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 50px;
    border: none;
}

.button-single-action-arrow{
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: none;
}

/*Body Components*/
.paragraph-href{
    color: var(--primary);
    text-decoration: none;
}

.header-title-margin{
    margin-bottom: 30px;
}

.header-card-title-margin{
    margin-bottom: 20px;
}

/*Menu*/
/*See media queries at bottom of file*/

.menu{
    background-color: var(--background-transparent);
    z-index: 10;
}

/*Used for desktop mode in pages with dark backgrounds*/
.menu-text-white{
    color: var(--text-on-dark);
    text-decoration: none;
}

.menu-text-white:hover{
    color: var(--text-on-dark);
}

.menu-logo{
    width: 50px;
    height: 50px;
}

/*Override Bootstrap classes*/
.navbar-toggler{
    width: 40px;
    height: 40px;
}

.navbar-toggler,
.navbar-toggler:focus,
.navbar-toggler:active,
.navbar-toggler-icon:focus {
    outline: none;
    border: none;
    box-shadow: none;
}

.navbar-toggler-icon{
    margin-top: 9px;
}

.btn-close,
.btn-close:focus,
.btn-close:active {
    outline: none;
    border: none;
    box-shadow: none;
}

/*Overrides default margin, padding, and opacity for close button*/
.btn-close{
    margin-left: 10px;
    margin-top: calc(.5 * var(--bs-offcanvas-padding-y)) !important;
    margin-bottom: calc(.5 * var(--close-button-padding-y)) !important;
    padding: calc(0px * .5) calc(0px * .5) !important;
    --bs-btn-close-color: var(--white);
    --bs-btn-close-opacity: 1;
    --bs-btn-close-hover-opacity: 1;
}

.offcanvas-header{
    padding: 0px;
}

.mobile-toggler-icon-white.navbar-toggler-icon{
    width: 40px;
    height: 40px;
    background-image: url(
        "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"
        );
}

.mobile-close-icon-default{
    margin-left: 3px;
    background-image: url(
        "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%239E9E9E'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e"
    );
}

.mobile-close-icon-white{
    background-image: url(
        "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e"
    );
}

.mobile-menu {
    width: 100%;
    background-color: var(--background-transparent);
    backdrop-filter: var(--background-blur-mobile);
    -webkit-backdrop-filter: var(--background-blur-mobile);
}

.mobile-menu-title-default{
    color: var(--indigo-100);
    margin-left: 49px;
}

.mobile-menu-title-white{
    width: 221px;
    color: var(--text-on-dark);
}

.technology-menu-item{
    background-color: var(--background-transparent);
    border: none;
}

/*Banner*/
.banner-title-node{
    color: var(--white);
}

.banner-title-about{
    color: var(--white);
}

.value-statement{
    width: 85%;
    text-align: center;
}

.bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    z-index: 1;
}

.bg-attachment-fixed {
    background-attachment: fixed;
}

.banner-image-home{
    background-image: url(../images/banner/banner-home-mobile.png);
    z-index: -99;
}

.banner-image-node{
    background-color: var(--black);
    background-image: url(../images/banner/banner-nodes.jpg);
    background-size: clamp(700px, 80%, 80%) auto;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -99;
}

.banner-image-about{
    background-image: url(../images/banner/banner-about.jpg);
    z-index: -99;
}

#banner-video{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -100;
}

#banner-video video{
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
}

.banner-section{
    position: relative;
}

.banner-overlay-container{
    min-height: 100vh;
    padding: 60px 0 0 0;
    display: flex;
    align-items: center;
    background-color: var(--background-transparent);
}

.banner-scroll-container{
    position: absolute;
    bottom: 0;
    margin-bottom: 60px;
}

.banner-overlay-content{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.banner-overlay-container-node{
    min-height: 60vh;
    padding: 60px 0 0 0;
    display: flex;
    align-items: center;
    background-color: var(--background-transparent);
}

.banner-overlay-opacity{
    background-color: var(--black-opacity-mid);
}

.banner-overlay-linear-opacity{
    opacity: 50;
    background: var(--linear-gradient-black);
}

.banner-overlay-elements{
    width: 75%;
}

.banner-scroll-icon{
    font-size: 60px;
    color: var(--primary-opacity-middark);
}

/*Quick Start menu*/
.banner-overlay-elements{
    width: 75%;
}

/*See media queries at end of file*/
.quick-start-title{
    width: 121px;
    padding-bottom: 15px;
    margin-bottom: 25px;
    border-bottom: solid;
    border-bottom-width: thin;
    border-color: var(--white);
}

.hero-menu-wrap{
    width: 500px;
    height: 400px;
    padding: 40px;
    background-color: var(--black-opacity-midlight);
    box-shadow: var(--elevation-3);
    z-index: 3;
}

.hero-menu a {
    color: var(--white);
    text-decoration: none;
}

.hero-menu a:hover {
    color: var(--primary);
}

.hero-menu ul{
    padding-left: 0px;
    margin-bottom: 0px;
    list-style-type: none;
}

.hero-menu ul li a{
    display: flex;
    width: 192px;
    height: 47px;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    text-shadow: var(--text-shadow);
}

.hero-menu ul li:not(:last-child) {
    margin-bottom: 20px;
}

/*Home Page*/
/*Custom Settings For Each Home Page Content Section*/
.card-button-margin{
    margin-top: 30px;
}

.margin-technology-card-content{
    margin-bottom: 30px;
}

.faq-card-content{
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 48px;
    padding-bottom: 48px;
    width: 100%;
}

.usage-content-title{
    margin-bottom: 20px;
}

.usage-content-button{
    margin-top: 20px;
}

/*Get Started Users*/

.usage-menu-container{
    border-bottom: var(--black);
    border-bottom-style: solid;
    border-bottom-width: thin;
    margin-top: 50px;
    margin-bottom: 50px;
}

.usage-menu-button{
    color: var(--text-on-surface);
    text-decoration: none;
    cursor: pointer;
}

.usage-menu-button h3{
    margin-right: 60px;
    margin-left: 60px;
}

.getStartedOpacity{
    background-color: var(--black-opacity-mid);
}

.user-content{
    color: var(--text-on-dark);
}

.user-image{
    width: 100%;
    background-image: url("../images/student-user.jpg");
    background-position: center;
    background-size: cover;
}

.student-user-image{
    background-image: url("../images/student-user.jpg");
}

.researcher-user-image{
    background-image: url("../images/researcher-user.jpg");
}

.hobbyist-user-image{
    background-image: url("../images/hobbyist-user.jpg");
}

/*FAQ*/
.margin-faq-content{
    margin-top: 20px;
}

.margin-feedback-card{
    margin-bottom: 30px;
}

/*Extras*/

/*Useful Link*/
.useful-link{
    margin-bottom: 30px;
}

/*Node Page*/
/*See media queries at end of file*/
.node-main-info{
    margin-bottom: 30px;
}

.node-main-info a h2, .node-main-info p{
    margin-bottom: unset;
}

.node-info-text{
    color: var(--text-on-dark);
}

.node-menu-container{
    width: 100%;
    border-bottom: var(--border-black);
    border-bottom-style: solid;
    border-bottom-width: thin;
}

.node-menu-item{
    color: var(--text-on-surface);
    text-decoration: none;
    cursor: pointer;
}

.margin-node-menu-item {
    margin-top: 10px;
    margin-bottom: 20px;
}

.node-menu-item:focus{
    color: var(--primary);
}

.dropdown-menu-item{
    margin-right: 118px;
    color: var(--text-on-surface);
    text-decoration: none;
    cursor: pointer;
}

#nodeDropdownContainer:focus-within > #nodeDropdownContent {
    display: block;
}

.node-dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    z-index: 1;
}

.node-planet-background1{
    background-image: url("../images/nodes/node-planet1.png");
}

.node-planet-background2{
    background-image: url("../images/nodes/node-planet2.png");
}

.node-planet-background3{
    background-image: url("../images/nodes/node-planet3.png");
}

.node-name{
    text-decoration: underline;
}

.undecorated-link{
    color: unset;
    text-decoration: none;
}

.node-online{
    color: var(--teal-400);
}

.node-offline{
    color: var(--error);
}

.node-register-button{
    margin-right: 27px;
}

.node-register-link{
    color: var(--white);
    text-decoration: none;
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 9px;
    padding-bottom: 9px;
}

.node-signup-link{
    color: var(--white);
    text-decoration: none;
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 9px;
    padding-bottom: 9px;
}

.node-services-container{
    margin-bottom: 120px;
}

.margin-node-card-title{
    margin-bottom: 10px;
}

.node-card p{
    margin-bottom: unset;
}

.node-card-link-button{
    width: 93px;
    height: 30px;
    padding-left: 35px;
    padding-right: 35px;
    padding-top: 8px;
    padding-bottom: 8px;
    text-decoration: none;
}

.node-card-doc-button{
    width: 153px;
    height: 30px;
    padding-left: 35px;
    padding-right: 35px;
    padding-top: 8px;
    padding-bottom: 8px;
    text-decoration: none;
}

.services-title-border{
    border-bottom-style: solid;
    border-bottom-color: var(--black);
    border-bottom-width: thin;
}

.services-button-margin {
    margin-top: 10px;
}

/*About Page*/

.about-intro{
    margin-left: 198px;
}

.about-intro-title{
    width: 200px;
}

.profile-image{
    width: 200px;
    height: 200px;
    object-fit: contain;
    margin-bottom: 21px;
}

.profile-entry{
    min-height: 24px;
    margin-bottom: 21px;
}

.profile-entry-overflow-content{
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.profile-entry-overflow-content:hover{
    overflow: visible;
    white-space: inherit;
    width: 200px;
    background: var(--background);
    display: block;
    position: absolute;
    border: var(--border-black);
    border-style: solid;
    border-width: thin;
    border-radius: 5px;
    padding: 5px;
}

.profile-social-media{

    margin-right: 30px;
}

.profile-icon-primary{
    color: var(--primary);
    cursor: pointer;
}

.profile-icon-grey{
    color: var(--gray-500);
    cursor: none;
}

.marble-docs-link{
    color: var(--black);
    text-decoration: none;
}

.marble-github-link{
    color: inherit;
    text-decoration: none;
}

.committee-container{
    width: 93%;
}

.committee-card{
    width: 240px;
    height: 450px;
    margin-top: 60px;
    margin-left: 60px;
    margin-right: 60px;
}

/*Footer*/

.footer{
    background-image: url("../images/footer/world-relief-map.png");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.footer-overlay{
    background: var(--opaque-black);
}

.funder-logo-container{
    width: 95%;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 50px;
    padding-bottom: 50px;
}

.funder-link{
    min-width: 150px;
    max-width: 250px;
    align-content: center;
}

.funder-logo{
    width: 100%;
}

.copyright{
    padding-top: 50px;
}

/*Colours Used*/
/*NOTE: Some colour classes have multiple classes that include those for components above.*/

.bg-button-transparent, .button-single-action-arrow{
    background-color: var(--background-transparent);
}

.bg-button-primary{
    background-color: var(--primary);
}

.bg-button-alt{
    background-color: var(--primary-alt);
}

.button-sm:active, .button-med:active{
    background-color: var(--indigo-A700);
}

.button-sm-alt:hover, .button-med-alt:hover{
    background-color: var(--indigo-200);
}

.button-sm-alt:active, .button-med-alt:active{
    background-color: var(--indigo-300);
}

.text-primary{
    color: var(--primary);
}

.text-on-primary{
    color: var(--text-on-primary);
}

.text-on-dark{
    color: var(--text-on-dark);
}

.registration-status-title{
    font-weight: bold;
}

/*Media Queries*/
@media (width < 576px){
    /*Menu*/
    .navbar-nav .nav-link:not(:last-child){
        border-bottom: solid;
        border-bottom-width: thin;
        border-bottom-color: var(--white);
    }
    .mobile-menu-title-spacing{
        margin-left: 0px;
    }

    .menu-items-spacing{
        margin-left: 0px;
        margin-bottom: 0px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /*Banner*/
    .hero-menu-wrap{
        width: 241px;
        height: 417px;
        margin-left: 0px;
        padding: 40px;
        background-color: var(--black-opacity-midlight);
        box-shadow: var(--elevation-3);
        z-index: 3;
    }

    .hero-menu{
        width: 80%;
    }

    /*Home*/
    .margin-content-section{
        margin-bottom: 50px;
    }

    .width-content-section{
        width: 95%;
    }

    .technology-container-width{
        width: 100%;
    }

    .margin-technology-card{
        margin-bottom: 30px;
    }

    .margin-technology-card-content, .margin-technology-card-content h6{
        margin-bottom: 20px;
    }

      .banner-width-mobile{
        width: 90%;
    }
  
    /*Technology Section*/
    .technology-card{
        min-width: 33%;
    }

    .technology-card h6{
        margin-bottom: unset;
    }

    .technology-card-title{
        min-height: 1.5em;
    }

    .width-usage-section{
        width: 95%;
    }

    .margin-usage-card{
        margin-top: 30px;
    }

    .margin-usage-text{
        margin-left: 15px;
        margin-right: 15px;
    }

    .padding-usage-content{
        padding-top: 20px;
    }

    .user-image-height{
        height: auto;
    }

    /*Extras*/
    .width-faq-section{
       width: 95%;
    }

    .padding-faq-card{
        width: 100%;
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .margin-feedback-button{
        margin-left: 20px;
    }

    .margin-useful-links{
        margin-left: 0px;
    }

    .width-extras-section{
        width: 95%;
    }

    /*Social Media*/
    .margin-social-media{
        margin-top: 50px;
    }

    .social-media-icon{
        height: 30px;
        width: 30px;
        margin-top: 10px;
        margin-right: 30px;
    }

    .social-media-link{
        /* height and width matches social-media-icon */
        height: 30px;
        width: 30px;
        margin-top: 10px;
        margin-right: 30px;
        display: inline-block;
        text-decoration: unset;
    }

    /*Node*/
    .node-menu-container a:not(:last-child) {
        margin-right: 20px;
    }

    .margin-node-menu-container {
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 20px;
    }

    .node-image-background {
        width: 100%;
        height: 864px;
        max-height: 864px;
        padding: 20px;
        background-color: var(--background-black);
        background-repeat: no-repeat;
        background-size: auto 35%;
        background-position: 50% 30%;
        background-origin: content-box;
    }

    .node-info-left {
        margin-left: 0px;
    }

    .node-info-bottom-left {
        margin-left: 0px;
    }

    .node-info-bottom-right {
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
    }

    .margin-node-email{
        margin-top: 0px;
    }

    .services-header {
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        letter-spacing: 0.03px;
        line-height: var(--line-height-normal);
    }

    .width-node-services-div{
        width: 95%;
    }

    .node-card{
        max-width: 345px;
        max-height: 208px;
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .services-button a:not(:last-child) {
        margin-right: 10px
    }

    .margin-services-title {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .services-button:not(:last-child) {
        margin-right: 10px
    }

    /*About*/
    .value-statement{
        margin-top: 60px;
        width: 65%;
    }

    .margin-faq-top{
        margin-top: 30px;
    }

    .committee-menu-container{
        border-bottom: var(--black);
        border-bottom-style: solid;
        border-bottom-width: thin;
        margin-top: 50px;
        margin-bottom: 20px;
    }

    .margin-committee-title{
        margin-bottom: 20px;
    }

    .committee-menu-button{
        color: var(--black);
        text-decoration: none;
        cursor: pointer;
    }

    .margin-committee-menu-button a:not(:last-child){
        margin-right: 50px;
    }
}

@media (width >= 576px) {
    /*Banner*/
    .hero-menu-wrap{
        width: 500px;
        height: 400px;
        margin-left: 50px;
        padding: 40px;
        background-color: var(--black-opacity-midlight);
        box-shadow: var(--elevation-3);
        z-index: 3;
    }

    .hero-menu{
        width: 45%;
    }

    /*Body Components*/
    .header-title-margin{
        margin-bottom: 30px;
    }

    /*Node Page*/

    .width-node-intro{
        width: 65%;
    }

    .margin-content-section{
        margin-bottom: 50px;
    }

    .margin-value-statement {
        margin-top: 50px;
    }

    .margin-node-menu-item {
        margin-top: 10px;
        margin-bottom: 20px;
    }

    .node-menu-header {
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        letter-spacing: 0.03px;
        line-height: var(--line-height-normal);
    }

    .node-dropdown-chevron {
        margin-left: 10px;
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        line-height: var(--line-height-normal);
    }

    .node-menu-container a:not(:last-child) {
        margin-right: 50px;
    }

    .node-image-background{
        width: 100%;
        height: 692px;
        max-height: 692px;
        background-color: var(--background-black);
        background-repeat: no-repeat;
        background-size: auto 80%;
        background-position: center;
        background-origin: content-box;
        padding-top: 30px;
        padding-bottom: 30px;
    }
  
    /*Home*/
    .width-content-section{
        width: 75%;
    }

    .technology-container-width{
        width: 75%;
    }

    .margin-technology-card{
        margin-left: 15px;
        margin-right: 15px;
        margin-bottom: 30px;
    }

    .margin-technology-card-content, .margin-technology-card-content h6{
        margin-bottom: 30px;
    }

    .width-usage-section{
        width: 75%;
    }

    .margin-usage-card{
        margin-top: 30px;
    }

    .margin-usage-text{
        margin-left: 15px;
        margin-right: 15px;
    }

    .padding-usage-content{
        padding-top: 25px;
    }

    .user-image-height{
        height: auto;
    }

    /*Extras*/
    .width-faq-section{
       width: 75%;
    }

    .padding-faq-card{
        width: 100%;
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .margin-feedback-button{
        margin-left: 0px;
    }

    .margin-useful-links{
        margin-left: 50px;
    }

    .width-extras-section{
        width: 95%;
    }

    /*Social Media*/
    .margin-social-media{
        margin-top: 50px;
    }

    .social-media-icon{
        height: 40px;
        width: 40px;
        margin-top: 10px;
        margin-right: 30px;
    }

    .social-media-link{
        /* height and width matches social-media-icon */
        height: 40px;
        width: 40px;
        margin-top: 15px;
        margin-right: 30px;
        display: inline-block;
        text-decoration: unset;
    }

    .banner-width-mobile{
        width: 90%;
    }

    .banner-title-home{
        background: var(--linear-gradient-marble);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .margin-banner-title{
        margin-bottom: 50px;
    }

    .hero-menu {
        width: 80%;
    }

    /*Node*/
    .node-info-bottom-left {
        margin-left: 0px;
    }

    .node-details-text {
        font-family: var(--main-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 12px;
        letter-spacing: 0.048px;
        line-height: var(--line-height-normal);
        margin-left: 0px;
    }

    .margin-services-title {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .services-header {
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        letter-spacing: 0.03px;
        line-height: var(--line-height-normal);
    }

    .width-node-services-div{
        width: 95%;
    }

    .node-card{
        max-width: 345px;
        max-height: 238px;
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .margin-node-card-title{
        margin-bottom: 10px;
    }

    .services-button-margin {
        margin-top: 10px;
    }

    .services-button a:not(:last-child) {
        margin-right: 10px
    }

    .node-menu-header {
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        letter-spacing: 0.03px;
        line-height: var(--line-height-normal);
    }

    .node-dropdown-chevron {
        margin-left: 10px;
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        line-height: var(--line-height-normal);
    }

    .margin-node-menu-container {
        margin-left: 0px;
        margin-top: 25px;
        margin-right: 0px;
        margin-bottom: 20px;
    }

    .margin-node-menu-item {
        margin-top: 10px;
        margin-bottom: 20px;
    }

    .node-info-left {
        margin-left: 30px;
    }

    .node-info-bottom-left {
        margin-left: 30px;
    }
  
    .node-info-bottom-right {
        margin-left: 30px;
        margin-top: 0px;
        margin-right: 30px;
    }

    .services-header {
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 20px;
        letter-spacing: 0.03px;
        line-height: var(--line-height-normal);
    }

    .services-title-border {
        border-bottom-style: solid;
        border-bottom-color: var(--black);
        border-bottom-width: thin;
    }

    .width-node-services-div {
        width: 90%;
    }

    .services-margin-div {
        margin-top: 0px;
    }

    .margin-value-statement{
        margin-top: 60px;
    }

    .value-statement{
        width: 65%;
    }

    .content-section{
        margin-bottom: 50px;
    }

    .committee-menu-container{
        border-bottom: var(--black);
        border-bottom-style: solid;
        border-bottom-width: thin;
        margin-top: 50px;
        margin-bottom: 20px;
    }

    .committee-menu-button{
        color: var(--black);
        text-decoration: none;
        cursor: pointer;
    }

    .margin-committee-menu-button a:not(:last-child){
        margin-right: 50px;
    }

    .width-node-intro{
        width: 65%;
    }

    .margin-content-section{
        margin-bottom: 50px;
    }

    .node-image-background {
        width: 100%;
        height: 864px;
        max-height: 864px;
        padding: 20px;
        background-color: var(--background-black);
        background-repeat: no-repeat;
        background-size: auto 35%;
        background-position: 50% 30%;
        background-origin: content-box;
    }

    .node-info-left {
        margin-left: 0px;
    }

    /*About*/
    .margin-committee-title{
        margin-bottom: 30px;
    }

    .mobile-menu-title-spacing{
        margin-left: 49px;
    }

    .menu-items-spacing{
        margin-left: 49px;
        margin-bottom: 0px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .mobile-menu {
        width: 100%;
        background-color: var(--background-transparent);
        backdrop-filter: var(--background-blur-mobile);
        -webkit-backdrop-filter: var(--background-blur-mobile);
    }

    .navbar-nav .nav-link:not(:last-child) {
        border-bottom: solid;
        border-bottom-width: thin;
        border-bottom-color: var(--white);
    }

    .margin-faq-top{
        margin-top: 30px;
    }
}

@media (width >= 768px) {
  
    .menu-items-spacing{
        margin-left: 49px;
        margin-bottom: 0px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /*Extras*/
    .width-extras-section{
        width: 75%;
    }

    .social-media-icon{
        height: 40px;
        width: 40px;
        margin-top: 15px;
        margin-right: 30px;
    }

    .social-media-link{
        /* height and width matches social-media-icon */
        height: 40px;
        width: 40px;
        margin-top: 15px;
        margin-right: 30px;
        display: inline-block;
        text-decoration: unset;
    }
  
    .mobile-menu-title-spacing{
        margin-left: 49px;
    }

    .menu-items-spacing{
        margin-left: 49px;
        margin-bottom: 0px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .node-menu-header{
        font-family: var(--main-font-family);
        font-weight: var(--h3-reg-font-weight);
        font-size: 48px;
        line-height: var(--line-height-normal);
    }

    .node-dropdown-chevron{
        margin-left: 28px;
        font-family: var(--secondary-font-family);
        font-weight: var(--reg-font-weight);
        font-size: 24px;
        line-height: var(--line-height-normal);
    }

    .width-node-services-div{
        width: 95%;
    }

    .node-image-background{
        width: 100%;
        height: 692px;
        max-height: 692px;
        background-color: var(--background-black);
        background-repeat: no-repeat;
        background-size: auto 80%;
        background-position: center;
        background-origin: content-box;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .services-header{
        font-family: var(--main-font-family);
        font-weight: var(--h3-reg-font-weight);
        font-size: 48px;
        line-height: var(--line-height-normal);
    }
}

@media (width >= 992px) {




    .node-info-left{
        margin-left: 50px;
    }

    .services-margin-div{
        margin-top:50px;
    }
}

@media (width <= 992px) {

    .banner-title-home{
        background: var(--linear-gradient-marble);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .menu-text-colour{
        color: var(--text-on-dark);
        text-decoration: none;
    }

    .menu-text-colour:hover{
        color: var(--text-on-dark);
    }

    .nav-link{
        width: 221px;
    }
}
  
@media (width > 992px) {
    /*Menu*/
    .navbar-nav .nav-link:not(:last-child) {
        border-bottom: none;
    }

    .mobile-menu {
        background-color: var(--background-transparent);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    /*Home*/
    .margin-usage-card{
        margin-top: 0px;
    }

    .margin-usage-text{
        margin-left: 0px;
        margin-right: 0px;
    }

    .user-image-height {
        height: 842px;
    }

    .margin-content-section{
        margin-bottom: 120px;
    }

    /*Node Page*/
    .width-node-intro{
        width: 100%;
    }

    .margin-node-menu-container{
        margin-left: 50px;
        margin-top: 50px;
        margin-right: 50px;
        margin-bottom: 50px;
    }

    .node-menu-container a:not(:last-child){
        margin-right: 118px;
    }
  
    .menu-items-container{
        width: 1000px;
    }

    .node-info-left{
        margin-left: 50px;
    }

    .node-info-bottom-left{
        margin-left: 50px;
    }

    .node-info-bottom-right{
        margin-top:0px;
        margin-right: 50px;
    }

    .margin-node-email{
        margin-top: 60px;
    }

    .services-margin-div{
        margin-top:50px;
    }

    .services-button a:not(:last-child) {
        margin-right: 20px
    }

    .services-header{
        font-family: var(--main-font-family);
        font-weight: var(--h3-reg-font-weight);
        font-size: 48px;
        line-height: var(--line-height-normal);
    }

    .margin-services-title{
        margin-top: 120px;
        margin-bottom:40px;
    }

    .width-node-services-div{
        width: 80%;
    }

    .node-card{
        max-width: 322px;
        max-height: 238px;
        margin-left: 35px;
        margin-top: 35px;
        margin-right: 35px;
        margin-bottom: 35px;
        padding-left: 17px;
        padding-right: 17px;
        padding-top: 24px;
        padding-bottom: 24px;
    }

    /*Body Components*/
    .header-title-margin{
        margin-bottom: 50px;
    }

    /*Menu*/
    .menu-items-container{
        width: 1000px;
    }

    /*Banner*/
    .banner-title-home{
        background: var(--linear-gradient-marble);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        filter: drop-shadow(0px 4px 4px var(--black-opacity-light));
    }

    .margin-banner-title{
        margin-bottom: 0px;
    }

    .value-statement{
        margin-top: 60px;
        width: auto;
    }

    .margin-faq-top{
        margin-top: 20px;
    }

    .committee-menu-container{
        border-bottom: var(--black);
        border-bottom-style: solid;
        border-bottom-width: thin;
        margin-top: 50px;
        margin-bottom: 50px;
    }

    /*Technology Section*/
    .technology-card{
        min-width: 33%;
    }

    .technology-card h6{
        margin-bottom: unset;
    }

    .technology-card-title{
        min-height: 2.5em;
    }

    /*Extras*/
    .width-extras-section{
        width: 75%;
    }

    /*Social Media*/
    .margin-social-media{
        margin-top: 120px;
    }

    .social-media-icon{
        height: 40px;
        width: 40px;
        margin-top: 15px;
        margin-right: 30px;
    }

    .social-media-link{
        /* height and width matches social-media-icon */
        height: 40px;
        width: 40px;
        margin-top: 15px;
        margin-right: 30px;
        display: inline-block;
        text-decoration: unset;
    }

    .margin-committee-menu-button a:not(:last-child){
        margin-right: 120px;
    }
}