/*--fonts--*/

@font-face {
    font-family: 'Avenir-Roman';
    font-display: swap;
    src: url('/raft/shared/fonts/avenir-roman/Avenir-Roman.woff2') format('woff2');
    src: url('/raft/shared/fonts/avenir-roman/Avenir-Roman.woff') format('woff');
    src: url('/raft/shared/fonts/avenir-roman/Avenir-Roman.woff') format('ttf');
    src: url('/raft/shared/fonts/avenir-roman/Avenir-Roman.woff') format('otf');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "Lato-Regular";
    font-display: swap;
    src: url("/raft/shared/fonts/lato/lato-regular.woff2") format("woff2"), url("..//raft/shared/fonts/lato/lato-regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
  }

  @font-face {
    font-family: "Lato-Bold";
    font-display: swap;
    src: url("/raft/shared/fonts/lato/lato-bold.woff2") format("woff2"), url("..//raft/shared/fonts/lato/lato-bold.woff") format("woff");
    font-weight: normal;
    font-style: normal;
  }

  @font-face {
    font-family: "Lato-Black";
    font-display: swap;
    src: url("/raft/shared/fonts/lato/lato-black.woff2") format("woff2"), url("..//raft/shared/fonts/lato/lato-black.woff") format("woff");
    font-weight: normal;
    font-style: normal;
  }

  @font-face {
    font-family: "Nunito-Bold";
    font-display: swap;
    src: url("/raft/shared/fonts/nunito/nunito-bold.woff2") format("woff2"),
        url("/raft/shared/fonts/nunito/nunito-bold.woff") format("woff"),
        url("/raft/shared/fonts/nunito/nunito-bold.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
  }


/*--layout--*/

html {
    height: auto;
    min-height: 100%;
    background: -webkit-linear-gradient(top, #4ac1fd 0, #b6e5fe 100%);
    visibility: visible;
    opacity: 1;
}

body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    background-repeat: no-repeat;
    display: flex;
    min-height: 100vh;
    flex-direction: column;
}

main {
    display: flex;
    margin: 0 auto;
    width: 340px;
    min-height: 500px;
    flex: 1;
}

@media (min-width: 768px) {
    main {
        width: 430px;
    }
}

#identity-app {
    width: 100%;
}

button {
    color: #ffffff;
    border: none;
    text-align: center;
    padding: 12px 20px 18px;
    border-radius: 24px;
    box-shadow: 0px 2px 4px rgb(0 0 0 / 20%);
    display: inline-block;
    cursor: pointer;
    font-family: 'Nunito-Bold', sans-serif;
    width: 100%;
    max-width: 100%;
    transition: 0.5s all;
    font-size: 20px;
    display: flex;
    justify-content: space-evenly;
    position: relative;
}

button:focus, a:focus {
    border-color: #de7f2e;
    outline: none !important;
}

button, a {
    border: 2px solid transparent;
}

@media (max-width: 768px) {
    a:focus {
        outline: none !important;
        outline-width: 0 !important;
    }
}


button:hover {
    background: #E87300;
}

form {
    background-color: #fff;
    box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
    padding: 20px;
    border-radius: 24px;
    display: flex;
    flex-direction: column;
}


@media (min-width: 768px) {
    form {
        padding: 40px;
    }
}

label {
    font-family: 'Nunito-medium', sans-serif;
    font-size: 16px;
    color: #000000;
    margin: 0;
    font-weight: normal;
}

input:focus {
    border: 3px solid #E87300;
    outline: none !important;
    outline-width: 0 !important;

}

input {
    color: #000000;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 20px;
    background: #ffffff;
    border-radius: 18px;
    padding: 10px;
    border: 3px solid #B4B7B9;
    margin: 5px 0;
    display: block;
    width: 100%;
    box-sizing: border-box;
    outline: none !important;
    outline-width: 0 !important;
}

input.invalid {
    border: 3px solid #EF6071;
    outline: none !important;
    outline-width: 0 !important;
}

label.invalid {
    color: #EF6071;
}

.account-jiji-avatar {
    width:100%;
    text-align:center;
    margin:30px 0;
}

.jiji-mailbox {
    width:100%;
    text-align:center;
    margin-top:25px;
}

h1 {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    font-size: 32px;
    line-height: 48px;
}

a:active, a:hover {
    color: #f89e3a;
    text-decoration: none;
    cursor: pointer;
}

a:focus {
    text-decoration: none;
    cursor: pointer;
}

a {
    color: #034F6B;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.5s all;
    display: block;
    text-align: end;
    margin: 20px 0;
    text-decoration: none;
}

a:hover {
    color: #E87300;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    height: 95px;
    max-width: 768px;
    padding: 0 20px;
}

#header-logo {
    margin-left: 5px;
    margin-top: 17px;
}


@media (min-width: 768px) {
    header {
        padding: 0;
    }
}

.main {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    background-color: #fff;
    padding: 40px 40px 40px;
    box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
    border-radius: 24px;
    min-height: 350px;
    position: relative;
    margin-top: 72px;
}

article {
    margin: 20px 0 200px;
}

article.welcome-wrapper {
    margin: 100px 0 175px;
}

.form-title {
    margin: 0 0 10px;
    font-size: 32px;
    line-height: 48px;
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
}

.span-five {
    font-size: 16px;
    line-height: 22px;
    display: block;
    font-family: 'Avenir-Roman', sans-serif;
    color: #000000;
    /* margin: 0 0 10px 0; */
    margin-bottom: 0px;
}

.center-text {
    text-align: center;
    align-self: center;
}

.left-text {
    text-align: start;
    align-self: flex-start;
}

.input-one:last-of-type {
    margin: 20px 0 5px;
}

.show {
    width: fit-content;
    align-self: flex-end;
}

.btn-primary {
    background: #09608B;
    line-height: 50px;
}

.btn-secondary {
    background: #4196C0;
    line-height: 40px;
}

.btn-tertiary {
    background: #09608B;
    line-height: 40px;
}

.btn-link {
    color: #034F6B;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.5s all;
    padding: 0;
    box-shadow: none;
    border-radius: 0;
    background: none;
    font-size: 15px;
    margin: 0;
}

.forgot-password-btn {
    text-align: right;
    margin: 20px 0 30px 0;
}

@media (min-width: 768px) {
    .btn-primary {
        font-size: 32px;
    }

    .btn-secondary {
        font-size: 28px;
    }

    .btn-tertiary {
        font-size: 28px;
    }
}

button:hover {
    background: #E87300;
}

button.btn-link:hover {
    background: none;
    color: #E87300;
}

.bold {
    font-weight: 600;
}

.find-school-left {
    display: flex;
    flex-direction: column;
    padding-right: 10px;
    justify-content: center;
}

/* #educator-signin {
    display: flex;
    justify-content: space-evenly;
    position: relative;
} */

.btn-primary:disabled {
    background: #ededed !important;
    color: #9C9A9A !important;
    border: 1px solid #d4d4d4;
    box-shadow: none;
    cursor: not-allowed !important;
}

.spinner {
    opacity: 1;
    animation-name: spinning;
    animation-duration: 10s;
    animation-iteration-count: infinite;
    align-self: center;
    position: absolute;
    left: 80px;
    display: none;
}

.version-number {
    display: inline;
}

@keyframes spinning {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(3600deg);
    }
}

.cloud-1 {
    top: 80px;
    animation-name: cloud-one;
    animation-duration: 200s;
    opacity: .3;
}

.cloud-2 {
    top: 200px;
    animation-name: cloud-two;
    animation-duration: 240s;
    width: 150px;
    opacity: .3;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

.cloud-3 {
    top: 435px;
    animation-name: cloud-three;
    animation-duration: 150s;
    width: 180px;
    opacity: .35;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

.cloud-4 {
    top: 315px;
    animation-name: cloud-four;
    animation-duration: 100s;
    width: 210px;
    opacity: .4;
}

.cloud-5 {
    top: 740px;
    animation-name: cloud-five;
    animation-duration: 140s;
    width: 200px;
    opacity: .6;
}

.cloud-1,
.cloud-2,
.cloud-3,
.cloud-4,
.cloud-5 {
    position: fixed;
    z-index: -1;
    animation-iteration-count: infinite;
    animation-direction: normal;
    animation-timing-function: linear;
}

@keyframes cloud-one {
    0% { left: -20% }

    100% { left: 100% }
}

@-webkit-keyframes cloud-one {
    0% { left: 20% }

    100% { left: 100% }
}

@keyframes cloud-two {
    0% { left: 50% }

    100% { left: 100% }
}

@-webkit-keyframes cloud-two {
    0% { left: 50% }

    100% { left: 100% }
}

@keyframes cloud-three {
    0% { left: 50% }

    100% { left: 100% }
}

@-webkit-keyframes cloud-three {
    0% { left: 50% }

    100% { left: 100% }
}

@keyframes cloud-four {
    0% { left: -25% }

    100% { left: 100% }
}

@-webkit-keyframes cloud-four {
    0% { left: -25% }

    100% { left: 100% }
}

@keyframes cloud-five {
    0% { left: -30% }

    100% { left: 100% }
}

@-webkit-keyframes cloud-five {
    0% { left: -30% }

    100% { left: 100% }
}

footer {
    min-height: 330px;
    width: 100%;
    background: #09608B;
    background-image: url('../images/welcome-footer-bg.png');
    background-size: cover;
    background-position-x: center;
    left:0;
    right:0;
}

footer .container {
    max-width: 1024px;
    margin: 0 auto;
    padding: 30px;
    position: relative;
}

footer .footer-menu {
    display: flex;
}

footer a {
    color: #ffffff;
    font-family: 'Lato-Regular' , sans-serif;
    font-size: 16px;
    text-decoration: none;
    margin: 0;
    text-align: start;
    font-weight: normal;
    line-height: normal;
    white-space: nowrap;
}

footer .fm-group ul {
    display: inline-block;
    padding: 0;
    list-style: none;
    margin-right: 40px;
}

footer .fm-group ul li {
    width: 100%;
    text-align: center;
    margin-bottom: 12px;
    text-align: left;
}

footer .footer-misc {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 77px;
}

footer .footer-misc .footer-logo {
    width: 170px;
    margin-bottom: 20px;
}

footer .footer-misc .copyright {
    font-family: "Lato-Regular",sans-serif;
    color: #fff;
    font-size: 12px;
    display: flex;
    flex-direction: column;
}

footer .fm-group h2 {
    font-family: 'Lato-Black' , sans-serif;
    font-size: 18px;
    color: #ffda9b;
    font-weight: 400;
    margin: 0 0 0;
}

footer .fm-bottom {
    text-align: right;
    display: inline-block;
    align-self: flex-end;
}

footer .fm-bottom ul {
    display: flex;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}

footer .fm-bottom ul li {
    display: inline;
    margin-right: 30px;
    margin-left: 0;
    margin-bottom: 0;
}

footer .mind-logo {
    overflow: hidden;
    vertical-align: middle;
    margin-bottom: 5px;
}

footer .mind-logo:hover #Footer_V2 {
    fill: #EF8A18;
}

footer .mind-logo-link {
    max-width: 124px;
    align-self: flex-end;
}

footer #footer a:focus {
    color: #ffffff;
}

footer #footer .container a:hover {
    color: #F89E39;
}

footer a:hover #Footer_V2 {
    fill: #F89E39;
}

footer #f-privacy-policy, #f-terms-of-use {
    font-size: 14px;
}

footer .other {
    color: #ffffff;
    font-family: 'Lato-Regular' , sans-serif;
    font-size: 16px;
    text-decoration: none;
    font-size: 14px;
}

footer button {
	background: none;
	color: inherit;
	border: none;
	padding: 0;
	font: inherit;
	cursor: pointer;
	outline: inherit;
}

footer #bottom-right {
    display: flex;
    flex-direction: column-reverse;
}

footer .bottom-right-text {
    display: flex;
}

footer #version {
    margin-right: 20px;
}

footer #version:hover {
    color: #F89E39;
    background-color: transparent;
}

footer #version-modal {
    z-index: 9999;
    height: 300px;
    text-align: left;
    background: white;
    border-radius: 24px;
    border-color: gray;
    border-style: solid;
    border-width: thin;
    padding: 15px 24px 10px 24px;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 15px;
    line-height: 23px;
    left: calc(50% - 150px);
    top: -100px;
    display: none;
    flex-direction: column;
    justify-content: space-between;
    position: absolute;
    left: calc(50% - 150px);
    top: -100px;
    max-width: 232px;
}

footer .version-header {
    display: flex;
    justify-content: space-between;
}

footer .version-title {
    font-family: 'Avenir-Roman', sans-serif;
    font-weight: 800;
}

footer #screen-resolution {
    display: flex;
}

footer #browser-viewport {
    display: flex;
}

footer #version {
    box-shadow: none;
    display: block;
}

footer #copy-button:hover {
    background: #ffffff;
    cursor: pointer;
}

footer #copy-text:active {
    color: red !important;
}

footer #copy-button {
    color: blue;
    fill: blue;
    display: flex;
    justify-content: flex-start;
    box-shadow: none;
}

footer .close-icon {
    padding: 5px 5px 0 5px;
    box-shadow: none;
    width: auto;
}

footer .close-icon:hover {
    background-color: transparent;
}

@media (max-width: 1239px) {
    footer .container {
        padding: 30px;
        margin: 0;
    }
}

@media (max-width: 891px) {

    footer .footer-menu {
        flex-wrap: wrap;
    }

    footer .fm-bottom {
        margin: 0;
    }

    footer .footer-misc .fm-bottom ul {
        flex-direction: column;
    }

    footer .footer-misc .fm-bottom ul li {
        display: block;
        margin-left: 0;
        margin-bottom: 20px;
    }

    footer .fm-bottom ul {
        margin-top: 0;
    }

    footer .footer-misc .copyright {
        width: 130px;
        margin-top: 5px;
        display: block;
        text-align: right;
    }

    footer .bottom-right-text {
        flex-direction: column-reverse;
    }

    footer #version {
        margin-right: 0;
        margin-top: 10px;
    }
}

footer .footer-link:focus {
    border-color: transparent;
}

footer .footer-link:focus-visible {
    border-color: #de7f2e;
}

footer a:active, a:hover {
    color: #f89e3a;
    text-decoration: none;
    cursor: pointer;
}

footer a:focus {
    text-decoration: none;
    cursor: pointer;
}

footer .mind-logo-link span {
    display: none;
}

footer a:focus, footer area:focus, footer button:focus, footer footer input:focus, footer select:focus, footer textarea:focus {
    outline: 5px auto -webkit-focus-ring-color !important;
    outline-color: #de7f2e !important;
}

#errorText {
    display: block;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 18px;
    padding-top: 10px;
    color: #EF6071;
    margin: 0 0 8px 0;
    font-weight: 600;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 8px;
    background: rgba(0, 0, 0, 0.1);
}

::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(6, 27, 39, 0.5);
}

.st-math-support-module {
    max-width: 430px;
    height: auto;
    margin: 40px auto 0;
    display: flex;
}

.st-math-support-robot {
    display: inline-block;
    width: 25%;
    vertical-align: bottom;
    align-self: flex-end;
}

.st-math-support-data::before {
    content: '';
    position: absolute;
    left: -16px;
    bottom: 9px;
    width: 0;
    height: 0;
    transform: rotate(-10deg);
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 20px solid rgb(225 244 254);
}

.st-math-support-data {
    display: inline-block;
    vertical-align: bottom;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 24px;
    padding: 20px;
    width: 290px;
    margin-left: 30px;
    position: relative;
}

.support-header {
    margin: 0px 0px 3px;
    font-size: 16px;
    display: block;
    font-weight: bold;
    font-family: 'Avenir-Roman', sans-serif;
}

.st-math-support-data a {
    color: #034F6B;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    cursor: pointer;
    display: block;
    margin: 0;
    text-align: start;
    transition: none;
}

.st-math-support-data a:hover {
    color: #E87300;
}

#school-details {
    cursor: pointer;
    background: rgba(255, 255, 255, 0.7);
    padding: 20px;
    border-radius: 24px;
    font-family: 'Avenir-Roman', sans-serif;
    display: flex;
    position: absolute;
    text-align: start;
    top: 0;
    right: calc(50% - 284px);
    font-size: 16px;
    line-height: 22px;
    font-family: 'Avenir-Roman', sans-serif;
    color: #000000;
    font-weight: normal;
    margin-top: 10px;
}

#school-details:hover #hat {
    fill: #E87300;
}

#school-details:hover {
    color: #034F6B;
}

@media (max-width: 570px) {
    #school-details {
        position: static;
        justify-content: space-between;
    }
}

.find-school-left {
    display: flex;
    flex-direction: column;
    padding-right: 10px;
}

.jiji-map {
    margin-top: -73px;
}

.single-sign-on-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    margin-top: 10px;
    line-height: 2rem;
}
.single-sign-on-link {
    display: inline;
    font-size: 32px;
    font-weight: bold;
    font-family: 'Nunito-Bold', sans-serif;
    text-align: center;
    line-height: 32px;
    transition: none;
    text-align: center;
}

.picture-password main {
    width: 100%;
    align-items: unset;
}

#header-logo:focus {
    border-color: transparent;
}

#header-logo:focus-visible {
    border-color: #de7f2e;
}

.st-math-support-module a:first-of-type {
    margin-bottom: 5px;
}

.st-math-support-module a:focus {
    border-color: transparent;
}

.st-math-support-module a:focus-visible {
    border-color: #de7f2e;
}

.heading-four {
    font-size: 18px;
    line-height: 31px;
}















/*--account-change-password--*/

.account-change-password-wrapper #educator-show-password {
    margin: 0  0 10px 0;
}

.account-change-password-wrapper .input-one:last-of-type {
    margin: 0px 0 5px;
}

.account-change-password-wrapper .check {
    display: inline;
    color: green;
    font-weight: bold;
}

.account-change-password-wrapper .hidden {
    display: none;
}

.account-change-password-wrapper span.invalid {
    color: #EF6071;
}

.account-change-password-wrapper .invalid:focus {
    border-color: #EF6071 !important;
}

.account-change-password-wrapper label.invalid {
    color: #EF6071;
}

.account-change-password-wrapper .span-five:last-of-type {
    margin: 0 0 20px 0;
}


/*--account-invitation-create--*/

.account-invitation-create-wrapper .input-three {
    margin-top: 35px;
}

.account-invitation-create-wrapper #info-text {
    margin-bottom: 0px;
}

.account-invitation-create-wrapper .check {
    display: inline;
    color: green;
    font-weight: bold;
}

.account-invitation-create-wrapper .hidden {
    display: none;
}

.account-invitation-create-wrapper span.invalid {
    color: #EF6071;
}

.account-invitation-create-wrapper .invalid:focus {
    border-color: #EF6071 !important;
}

.account-invitation-create-wrapper label.invalid {
    color: #EF6071;
}

.account-invitation-create-wrapper input.invalid {
    border: 3px solid #EF6071;
}

.account-invitation-create-wrapper .span-five:last-of-type {
    margin: 0 0 20px 0;
}


/*--account-invitation-signin--*/

.account-invitation-signin-wrapper h1 {
    margin-top: 0;
    margin-bottom: 2px;
}

.account-invitation-signin-wrapper .input-one:last-of-type {
    margin: 20px 0 5px;
}

.account-invitation-signin-wrapper .show {
    width: fit-content;
    align-self: flex-end;
}

.account-invite-signin-support-module {
    display: none;
}

.account-invitation-signin-wrapper .span-five {
    margin-bottom: 15px;
    margin-top: 10px;
}

.account-invitation-signin-wrapper #errorText {
    display: none;
}

/*--account-password-changed--*/
/*--none--*/


/*--classlink-login--*/

#classlink-wrapper .main {
    min-height: auto;
    padding-bottom: 55px;
}

#classlink-wrapper a:focus {
    border-color: transparent;
}

#classlink-wrapper a:focus-visible {
    border-color: #de7f2e;
}



/*--clever-login--*/

#clever-login-wrapper {
    display: block;
}

#clever-login-wrapper .main {
    min-height: auto;
    padding-bottom: 55px;
}

#clever-login-wrapper a:focus {
    border-color: transparent;
}

#clever-login-wrapper a:focus-visible {
    border-color: #de7f2e;
}

/*--educator-sign-in-help--*/

.educator-sign-in-help-wrapper .form-title {
    margin: 0 0 10px 0;
}

.educator-sign-in-help-wrapper .input-one:last-of-type {
    margin: 0 0 5px;
}

.educator-sign-in-help-wrapper .spinner {
    left: 40px;
}


/*--educator-signin--*/

.educator-signin-wrapper h1 {
    margin-top: 0;
    margin-bottom: 2px;
}

.educator-signin-wrapper .input-one:last-of-type {
    margin: 20px 0 5px;
}

.educator-signin-wrapper .show {
    width: fit-content;
    align-self: flex-end;
}

.educator-signin-wrapper a {
    margin: 0;
    display: inline;
}

.educator-signin-wrapper {
    margin-top: 20px;
}

.educator-signin-wrapper .input-one {
    margin: 0 0 5px;
}


/*--enter-invite-code--*/

.enter-invite-code-wrapper form > img {
    position: relative;
    height: 179px;
    width: 132px;
    align-self: center;
    margin: -72px auto 5px;
}

.enter-invite-code-wrapper main {
    margin-top: 60px;
}

.enter-invite-code-wrapper .form-title {
    margin-bottom: 10px;;
}

.enter-invite-code-wrapper .span-five {
    margin: 0;
}

.enter-invite-code-wrapper .input-one:last-of-type {
    margin: 8px 0 5px;
}

.enter-invite-code-wrapper {
    margin-top: 60px;
}


/*--expired-link--*/

.expired-link-wrapper {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 72px;
    display: flex;
}

.expired-link-wrapper .jiji-lost {
    margin-top: -73px;
}

.expired-link-wrapper .expired-link-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 10px;
    align-self: start;
}

.expired-link-wrapper .expired-link-subtext {
font-family: 'Avenir-Roman' , sans-serif;
font-size: 16px;
color: #000000;
text-align: start;
margin-bottom: 30px;
}


/*--find-school--*/

#find-school {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background-color: #fff;
    padding: 40px 40px 30px;
    box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
    border-radius: 24px;
    position: relative;
}

#find-school h1 {
    margin-top: 0;
    margin-bottom: 7px;
}

#find-school .description {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 15px;
    box-sizing: border-box;
}

#find-school ul.school-list {
    list-style: none;
    margin: 0;
    padding: 0px;
    max-height: 400px;
    overflow-y: auto;
}

#find-school ul.school-list li {
    border-bottom: 1px solid #D8D8D8;
    padding-bottom: 14px !important;
    padding-top: 10px !important;
}

#find-school ul.school-list button {
    border: none;
    color: black;
    text-align: left;
    display: block;
    border-radius: unset;
    background-color: transparent;
    box-shadow: none;
    font-family: 'Avenir-Roman', sans-serif;
    padding: 0;
}
#find-school ul.school-list button:focus-visible {
    border: 2px solid #E87300;
    outline: none !important;
    outline-width: 0 !important;
    border-radius: 5px;
}

#find-school ul {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: -40px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}

#find-school li {
    display: list-item;
    text-align: -webkit-match-parent;
    font-family: 'Avenir-Roman', sans-serif;
}

#find-school ul.school-list {
    list-style: none;
}

#find-school ul.school-list li .school-name {
    margin: 0;
    cursor: pointer;
    color: #034F6B;
    margin-bottom: 0;
}

#find-school .span-six {
    font-size: 14px;
    line-height: 19px;
}

#find-school ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 8px;
    background: rgba(0, 0, 0, 0.1);
}

#find-school ::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(6, 27, 39, 0.5);
}

#find-school .text-blurb-wrapper {
    margin-left: 20px;
}

#find-school .description .help-head {
    margin-bottom: 0;
    font-family: 'Nunito-Black' , sans-serif;
    font-size: 16px;
    color: #000000;
    line-height: 24px;
    letter-spacing: .25px;
    font-weight: bold;
}

#find-school .help-blurb .text-blurb-wrapper span {
    word-wrap: break-word;
    font-family: 'Avnir-Roman' , sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 19px;
    font-weight:100
}

#find-school .school-search-icon {
    position: relative;
    margin-top: 20px
}

#find-school #searchInput {
    padding-left: 46px;
}

/*--join-class-first-name--*/

.join-class-first-name-wrapper .welcome {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
}

.join-class-first-name-wrapper .welcome.reverse {
    flex-direction: row-reverse;
}

.join-class-first-name-wrapper .welcome-text {
    background: #BEEFFD;
    border-radius: 24px;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 20px;
    padding: 10px 18px;
    margin-left: 20px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.join-class-first-name-wrapper .reverse .welcome-text {
    margin-right: 20px;
    margin-left: 0;
}

.join-class-first-name-wrapper .welcome-text::before {
    content: '';
    position: absolute;
    bottom: 11px;
    left: -26px;
    width: 0;
    height: 0;
    border-radius: 1px;
    transform: rotate(70deg);
    clear: both;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 38px solid #beeffd;
}

.join-class-first-name-wrapper .reverse .welcome-text::before {
    right: -26px;
    left: unset;
    bottom: 8px;
    transform: rotate(295deg);
}

.join-class-first-name-wrapper .robot-face{
    height: 82px;
    width: 105px;
}

.join-class-first-name-wrapper .hide {
    display: none;
}

.join-class-first-name-wrapper form > button {
    margin-top: 20px;
}

.join-class-first-name-wrapper form {
    position: relative;
}


/*--join-class-last-name--*/

.join-class-last-name-wrapper .welcome {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
}

.join-class-last-name-wrapper .welcome.reverse {
    flex-direction: row-reverse;
}

.join-class-last-name-wrapper .welcome-text {
    background: #BEEFFD;
    border-radius: 24px;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 20px;
    margin-left: 20px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    text-align: center;
}

.join-class-last-name-wrapper .reverse .welcome-text {
    margin-right: 20px;
    margin-left: 0;
}

.join-class-last-name-wrapper .welcome-text::before {
    content: '';
    position: absolute;
    bottom: 11px;
    left: -26px;
    width: 0;
    height: 0;
    border-radius: 1px;
    transform: rotate(70deg);
    clear: both;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 38px solid #beeffd;
}

.join-class-last-name-wrapper .reverse .welcome-text::before {
    right: -26px;
    left: unset;
    bottom: 8px;
    transform: rotate(295deg);
}

.join-class-last-name-wrapper .robot-face{
    height: 82px;
    width: 105px;
}

.join-class-last-name-wrapper .hide {
    display: none;
}

.join-class-last-name-wrapper form > button {
    margin-top: 20px;
}

.join-class-last-name-wrapper form {
    position: relative;
}

.join-class-last-name-wrapper .hidden {
    display: none;
}

/*--join-class-signin-create--*/

.join-class-signin-create .main {
    background-color: rgba(255, 255, 255, 0.7);;
    padding: 20px;
    min-height: 50px;
    flex-direction: inherit;
    justify-content: initial;
    max-width: 768px;
    margin: auto;
    display: none;
}

.join-class-signin-create #educatorName {
    display: inline;
}

.join-class-signin-create .create-new-account-text-holder {
    width: 59%;
    vertical-align: middle;
}

.join-class-signin-create .create-new-account-text-holder svg {
    vertical-align: middle;
    overflow: hidden;
}

.join-class-signin-create .create-new-account-text-holder span {
    display: inline-block;
    width: 65%;
    vertical-align: middle;
    margin: 19px;
    font-size: 16px;
    line-height: 22px;
    font-family: 'Avenir-Roman', sans-serif;
    color: #000000;
}

.join-class-signin-create .create-new-account-button-holder {
    display: inline-block;
    width: 39%;
    vertical-align: middle;
}

.join-class-signin-create #arena-wrapper:focus-visible {
    outline: none;
}

.join-class-signin-create #arena-wrapper {
    outline: none;
}

.join-class-signin-create #arena-wrapper {
    width: 100% !important;
    height: 72vh !important;
}
.join-class-signin-create #arena-wrapper div {
    margin: auto !important;
}
.join-class-signin-create #arena-wrapper div:focus {
    outline: none;
}

.join-class-signin-create .arena {
    width: 100% !important;
    height: 100% !important;
}

.join-class-signin-create picture-password loading .loading {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
}

.join-class-signin-create .throbber img {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
    display: inline-block;
    position: absolute;
    top: calc(50% - 22px);
    left: calc(50% - 22px);
    animation-name: spin;
    animation-duration: 5000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }

  @keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}


/*--not-found--*/

.not-found-wrapper {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 72px;
}

.not-found-wrapper .jiji-lost {
    margin-top: -73px;
}

.not-found-wrapper .not-found-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: start;
}

.not-found-wrapper .not-found-subtext {
font-family: 'Avenir-Roman' , sans-serif;
font-size: 18px;
color: #000000;
text-align: start;
}


.sso-gg4l {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 102px;
}
.sso-gg4l .jiji-lost {
    margin-top: -113px;
}
.sso-gg4l .error-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}

.sso-gg4l .error-subtext {
    font-family: 'Avenir-Roman' , sans-serif;
    font-size: 18px;
    color: #000000;
    text-align: center;
    display: inline-flex;
}
.sso-gg4l .jiji-welcome {
    width: 259px;
    height: 282px;

}

.sso-clever {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 102px;
}
.sso-clever .jiji-lost {
    margin-top: -113px;
}
.sso-clever .error-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}

.sso-clever .error-subtext {
    font-family: 'Avenir-Roman' , sans-serif;
    font-size: 18px;
    color: #000000;
    text-align: center;
    display: inline-flex;
}
.sso-clever .jiji-welcome {
    width: 259px;
    height: 282px;

}


.sso-auth {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 102px;
}
.sso-auth .jiji-lost {
    margin-top: -113px;
}
.sso-auth .error-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}

.sso-auth .error-subtext {
    font-family: 'Avenir-Roman' , sans-serif;
    font-size: 18px;
    color: #000000;
    text-align: center;
    display: inline-flex;
}
.sso-auth .jiji-welcome {
    width: 259px;
    height: 282px;

}


.sso-classlink {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 102px;
}
.sso-classlink .jiji-lost {
    margin-top: -113px;
}
.sso-classlink .error-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}

.sso-classlink .error-subtext {
    font-family: 'Avenir-Roman' , sans-serif;
    font-size: 18px;
    color: #000000;
    text-align: center;
    display: inline-flex;
}
.sso-classlink .jiji-welcome {
    width: 259px;
    height: 282px;

}

/*--error--*/


.error-wrapper {
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 72px;
}

.error-wrapper .jiji-lost {
    margin-top: -73px;
}

.error-wrapper .error-text {
    font-family: 'Nunito-Bold', sans-serif;
    color: #000000;
    display: inline;
    font-size: 32px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}

.error-wrapper .error-subtext {
    font-family: 'Avenir-Roman' , sans-serif;
    font-size: 18px;
    color: #000000;
    text-align: center;
    display: inline-flex;
}


.errorLink {
    margin: 0;
    display: flex;
    align-items: center;
}

.errorCodeBox {
    display: flex;
    border: 2px solid black;
    border-radius: 20px;
    padding: 10px 15px 15px 15px;
    margin-top: 20px;
    font-size: 32px;
    font-family: 'Nunito-Bold', sans-serif;
    flex-wrap: wrap;
}

.errorCodeText {
    margin-right: 5px;
}

/*--recent-schools--*/

.recent-schools-wrapper .input-three {
    margin-top: 35px;
}

.recent-schools-wrapper h1 {
    margin-bottom: 12px;
    margin-top: 4px;
}

.recent-schools-wrapper .main  {
    display: block;
    min-height: auto;
}

.recent-schools-wrapper ul.school-list {
    list-style: none;
    margin: 0;
    padding: 0px;
    max-height: 400px;
    overflow-y: auto;
}

.recent-schools-wrapper ul.school-list li {
    border-bottom: 1px solid #D8D8D8;
    padding-bottom: 14px;
    padding-top: 10px;
}

.recent-schools-wrapper ul {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: -40px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}

.recent-schools-wrapper li {
    display: list-item;
    text-align: -webkit-match-parent;
    font-family: 'avenir-roman', sans-serif;
}

.recent-schools-wrapper ul.school-list {
    list-style: none;
}

.recent-schools-wrapper ul.school-list li .school-name {
    margin: 0;
    cursor: pointer;
    color: #034F6B;
    margin-bottom: 0;
}

.recent-schools-wrapper .span-six {
    font-size: 14px;
    line-height: 19px;
}

.recent-schools-wrapper ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 8px;
    background: rgba(0, 0, 0, 0.1);
}

.recent-schools-wrapper ::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(6, 27, 39, 0.5);
}

.recent-schools-wrapper .more-schools a {
    text-align: center;
}

.recent-schools-wrapper .link-two {
    color: #034F6B;
    font-family: 'Avenir-Roman', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.5s all;
    margin: 10px 0 0 0;
}


/*--reset-password-expired-link--*/

.reset-password-expired-link-wrapper.jiji-lost {
    width:100%;
    text-align: center;
    margin: -80px 0 0 0;
}

.reset-password-expired-link-wrapper .span-five {
    margin-bottom: 20px;
}


/*--sign-out--*/

.sign-out-wrapper .main {
    margin-top: 72px;
}

.sign-out-wrapper .form-title {
    margin-top: 10px;
    align-self: flex-start;
}

.sign-out-wrapper .span-five {
    align-self: flex-start;
    margin-bottom: 20px;
}

.sign-out-wrapper .jiji-wave {
    width:100%;
    text-align: center;
    margin:-121px 0 0 0
}


/*--sign-out-timeout--*/

.sign-out-timeout-wrapper .main {
    margin-top: 72px;
}

.sign-out-timeout-wrapper .span-five {
    margin-bottom: 25px;
    align-self: flex-start;
}

.sign-out-timeout-wrapper .form-title {
    margin-top: 15px;
}

.sign-out-timeout-wrapper .jiji-sleep {
    width:100%;
    text-align:center;
    margin: -123px 0px 0 0;
}


/*--student-pic-pass-signin--*/
.student-pic-pass-sign-in-wrapper #arena-wrapper {
    width: 100% !important;
    height: 85vh !important;
}

.student-pic-pass-sign-in-wrapper #arena-wrapper:focus-visible {
    outline: none;
}

.student-pic-pass-sign-in-wrapper #arena-wrapper div {
    margin: auto !important;
}

.student-pic-pass-sign-in-wrapper #arena-wrapper div:focus {
    outline: none;
}

.student-pic-pass-sign-in-wrapper .arena {
    width: 100% !important;
    height: 100% !important;
}

.student-pic-pass-sign-in-wrapper picture-password loading .loading {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
  }

.student-pic-pass-sign-in-wrapper .throbber img {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
    display: inline-block;
    position: absolute;
    top: calc(50% - 22px);
    left: calc(50% - 22px);
    animation-name: spin;
    animation-duration: 5000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }

  @keyframes spin {
      from {
          transform:rotate(0deg);
}
      to {
          transform:rotate(360deg);
}
}

.student-pic-pass-sign-in-wrapper .throbber img {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
    display: inline-block;
    position: absolute;
    top: calc(50% - 22px);
    left: calc(50% - 22px);
    animation-name: spin;
    animation-duration: 5000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }

.picture-password-wrapper {
    margin: auto;
    max-width: 1200px;
}

.picture-password .throbber img {
    zoom: 3;
    background: #585858;
    opacity: 1;
    border-radius: 30px;
    display: inline-block;
    position: absolute;
    top: calc(50% - 22px);
    left: calc(50% - 22px);
    animation-name: spin;
    animation-duration: 5000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }

#picPassTop {
    position: relative;
}

#jijiPicPass {
    position: absolute;
    height: 100%;
    top: 12px;
}

.jijiFlipped {
    transform: scaleX(-1);
}

.jijiStill {
    height: 163px !important;
    top: 52px !important;
    left: 68px !important;
}

.passwordInput {
    border: lightgray 1px solid;
    border-radius: 5px;
    cursor: pointer;
    height: auto;
    width: -webkit-fill-available;
    margin: .5%;
    padding-top: 6%;
    display: flex;

}

.passwordItem {
    width: 94%;
    height: auto;
    margin: 3px;
    max-width: 50px;
    max-height: 50px;
}

.row {
    display: flex;
}

.option {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 5px;
    cursor: pointer;
    height: auto;
    width: -webkit-fill-available;
    margin: .5%;
}

.optionImage {
    display: block;
    width: 94%;
    height: auto;
    margin: 3px;
}

.bumpRight {
    margin-right: 3%;
}

#tunnel {
    display: flex;
    flex-grow: 1;
    padding: 5% 1%;
    background: linear-gradient(0deg, rgba(64,64,64,1) 0%, rgba(78,78,78,1) 70%, rgba(143,143,143,1) 100%);
    margin-left: 10%;
}

.floorLine {
    width: 200%;
    background-color: white;
    height: 5px;
    position: absolute;
    left: 0;
}

#backUp {
    background-color: transparent;
    width: 70px;
    opacity: 0.4;
    margin: 20px 0 50px 90%;
    box-shadow: none;
    padding: 0;
}

.questionMark {
    width: 66%;
    margin: auto;
}

/*--student-sign-in--*/

.student-sign-in-wrapper button {
    margin-top: 0;
}

.student-sign-in-wrapper h1 {
    margin-top: 10px;
    margin-bottom: -10px;
}

.student-sign-in-wrapper .show {
    margin-bottom: 30px;
}

.student-sign-in-wrapper .input-one:last-of-type {
    margin: 0 0 0;
}

#student-sign-in-container #school-details {
    display: none;
}


/*--student-sign-in-options--*/

.student-options-wrapper {
    margin: 40px 0 200px;
}

.pic-pass,
.text-pass {
    background-color: #fff;
    box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
    padding: 20px;
    border-radius: 24px;
}

@media (min-width: 768px) {
    .pic-pass,
    .text-pass {
       padding: 40px;
    }
}

.pic-pass .inner,
.text-pass .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.pic-pass .inner img,
.text-pass .inner img {
    max-width: 260px;
    margin-bottom: 40px;
}

@media (min-width: 768px) {
    .pic-pass .inner img,
    .text-pass .inner img {
        max-width: 306px;
    }
}

.text-pass {
    margin-top: 40px;
}


/*--system-maintenance--*/

.system-maintenance-wrapper .main {
    align-items: center;
    margin-top: 72px;
}

.system-maintenance-wrapper .span-five {
    margin-bottom: 20px;
    text-align: center;
    margin: 0 -20px 20px -20px;
}

.jiji-wrench {
    width:100%;
    text-align:center;
    margin: -123px 0 0 0;
}

.system-maintenance-wrapper h1 {
    align-self: center;
}

@media (max-width: 768px) {
    .system-maintenance-wrapper .maintenance-image {
        height: 120px;
        width: auto;
        margin: 85px 0 0 0;
    }

    .system-maintenance-wrapper h1 {
        font-size: 18px;
        line-height: normal;
    }

    .system-maintenance-wrapper .span-five {
        font-size: 12px;
    }

    .system-maintenance-wrapper .btn-primary {
        padding: 5px 20px 10px 20px;
        width: auto;
        line-height: normal;
        font-size: 18px;
    }

    .system-maintenance-wrapper .main {
        padding: 10px;
        min-height: auto;
    }

}


/*--under-construction--*/

.hard-hat-jiji {
    width:100%;
    text-align:center;
    margin: -123px 0 0 0;
}

.under-construction-wrapper .span-five {
    margin-bottom: 20px;
    text-align: center;
    margin: 0 -20px 20px -20px;
}

.under-construction-wrapper h1 {
    align-self: center;
}

@media (max-width: 768px) {
    .under-construction-wrapper .maintenance-image {
        height: 120px;
        width: auto;
        margin: 85px 0 0 0;
    }

    .under-construction-wrapper h1 {
        font-size: 18px;
        line-height: normal;
    }

    .under-construction-wrapper .span-five {
        font-size: 12px;
    }

    .under-construction-wrapper .btn-primary {
        padding: 5px 20px 10px 20px;
        width: auto;
        line-height: normal;
        font-size: 18px;
    }

    .under-construction-wrapper .main {
        padding: 10px;
        min-height: auto;

    }

}


/*--website-login --*/

#website-login-wrapper {
    display: block;
}

#website-login-wrapper .main {
    align-items: center;
    min-height: auto;
    padding-bottom: 55px;
    margin-top: 72px;
}

#website-login-wrapper a:focus {
    border-color: transparent;
}

#website-login-wrapper a:focus-visible {
    border-color: #de7f2e;
}

/*--welcome--*/

.welcome-wrapper .main {
    padding-bottom: 30px;
}

.welcome-wrapper h1 {
    display: none;
}

.welcome-wrapper {
    margin: 100px 0 175px;
}

.welcome-wrapper button {
    margin-top: 0;
}

.welcome-wrapper .btn-secondary {
    margin-top: 30px;
}

.welcome-wrapper .jiji-welcome {
    position: absolute;
    top: -70px;
    width: 259px;
    height: 282px;

}

.welcome-wrapper .invite-code {
    background: rgba(255, 255, 255, 0.7);
    padding: 20px;
    box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
    width: 100%;
    color: #09608B;
    font-family: 'Nunito-Bold', sans-serif;
    transition: 0.5s all;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 600;
    margin-top: 30px;
    cursor: pointer;
}

@media (min-width: 768px) {
    .welcome-wrapper .invite-code {
        font-size: 28px;
    }
}

.welcome-wrapper .invite-code:hover {
    color: #E87300;
}

.welcome-wrapper .invite-code img {
    margin-right: 30px;
}