@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@300;400;500;600;700&family=Source+Serif+Pro:wght@700&display=swap');

:root {
    --stem-ff-body:
    'Alexandria', sans-serif;
    --stem-ff-heading:
    'Alexandria', sans-serif;
    --stem-ff-p:
    'Alexandria', sans-serif;
    --stem-ff-fontawesome:
    "Font Awesome 6 Pro";
    --stem-ff-eleganticons:
    "ElegantIcons";
    --stem-common-white: #ffffff;
    --stem-common-black: #000;
    --stem-heading-primary: #000f2f;
    --stem-grey-1: #f5f5f5;
    --stem-grey-2: #f5f7fb;
    --stem-text-body: #333f59;
    --stem-text-2: #7e8188;
    --stem-text-3: #949db1;
    --stem-text-4: #737383;
    --stem-theme-primary: #05a5a5;
    --stem-theme-secondary: #ffa423;
    --stem-theme-bg: #05a5a5;
    --stem-theme-bg-2: #020c2a;
    --stem-border-1: #000f2f;
    --stem-border-2: #eeeff0;
    --stem-fw-normal: normal;
    --stem-fw-elight: 200;
    --stem-fw-light: 300;
    --stem-fw-regular: 400;
    --stem-fw-medium: 500;
    --stem-fw-sbold: 600;
    --stem-fw-bold: 700;
    --stem-fw-ebold: 800;
    --stem-fw-black: 900;
    --stem-fz-body: 14px;
    --stem-fz-p: 14px;
    --stem-fz-h1: 40px;
    --stem-fz-h2: 36px;
    --stem-fz-h3: 24px;
    --stem-fz-h4: 20px;
    --stem-fz-h5: 16px;
    --stem-fz-h6: 14px;

        /* --tp-ff-body: 'Alexandria', sans-serif;
    --tp-ff-heading: 'Alexandria', sans-serif;
    --tp-ff-p: 'Alexandria', sans-serif;
    --tp-ff-fontawesome: "Font Awesome 6 Pro";
    --tp-ff-eleganticons: "ElegantIcons";
    --tp-common-white: #ffffff;
    --tp-common-black: #000;
    --tp-heading-primary: #000f2f;
    --tp-grey-1: #f5f5f5;
    --tp-grey-2: #f5f7fb;
    --tp-text-body: #333f59;
    --tp-text-2: #7e8188;
    --tp-text-3: #949db1;
    --tp-text-4: #737383;
    --tp-theme-primary: #2c79ff;
    --tp-theme-secondary: #ffa423;
    --tp-theme-bg: #0e2d62;
    --tp-theme-bg-2: #020c2a;
    --tp-border-1: #000f2f;
    --tp-border-2: #eeeff0;
    --tp-fw-normal: normal;
    --tp-fw-elight: 200;
    --tp-fw-light: 300;
    --tp-fw-regular: 400;
    --tp-fw-medium: 500;
    --tp-fw-sbold: 600;
    --tp-fw-bold: 700;
    --tp-fw-ebold: 800;
    --tp-fw-black: 900;
    --tp-fz-body: 14px;
    --tp-fz-p: 14px;
    --tp-fz-h1: 40px;
    --tp-fz-h2: 36px;
    --tp-fz-h3: 24px;
    --tp-fz-h4: 20px;
    --tp-fz-h5: 16px;
    --tp-fz-h6: 14px; */
}

* {
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

body {
    font-family: var(--stem-ff-body);
    font-size: var(--stem-fz-body);
    font-weight: normal;
    color: var(--stem-text-body);
    line-height: 26px;
}

a {
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--stem-ff-heading);
    color: var(--stem-heading-primary);
    margin-top: 0px;
    font-weight: 700;
    line-height: 1.5;
    transition: all 0.3s ease-out 0s;
}

h1 {
    font-size: var(--stem-fz-h1);
}

h2 {
    font-size: var(--stem-fz-h2);
}

h3 {
    font-size: var(--stem-fz-h3);
}

h4 {
    font-size: var(--stem-fz-h4);
}

h5 {
    font-size: var(--stem-fz-h5);
    margin-bottom: 0;
}

h6 {
    font-size: var(--stem-fz-h6);
}

ul {
    margin: 0px;
    padding: 0px;
}

p {
    font-family: var(--stem-ff-p);
    font-size: var(--stem-fz-p);
    font-weight: var(--stem-fw-normal);
    color: var(--stem-text-body);
    margin-bottom: 15px;
    line-height: 26px;
    font-weight: 400;
}

a,
button,
p,
input,
select,
textarea,
li,
.transition-3,
h1,
h2,
h3,
h4,
h5,
h6 {
    transition: all 0.3s ease-out 0s;
}

a:focus,
.button:focus {
    text-decoration: none;
    outline: none;
}

a:focus,
a:hover {
    color: inherit;
    text-decoration: none;
}

a,
button {
    color: inherit;
    outline: none;
    border: none;
    background: transparent;
}

button:hover {
    cursor: pointer;
}

button:focus {
    outline: 0px;
}

.uppercase {
    text-transform: uppercase;
}

.capitalize {
    text-transform: capitalize;
}

input {
    outline: none;
}

input::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

input[type="color"] {
    appearance: none;
    background: none;
    border: 0px;
    cursor: pointer;
    height: 100%;
    width: 100%;
    padding: 0px;
    border-radius: 50%;
}

::selection {
    background: var(--stem-common-black);
    color: var(--stem-common-white);
    text-shadow: none;
}

::placeholder {
    color: var(--stem-common-black);
    font-size: var(--stem-fz-body);
    opacity: 1;
}

.w-img img {
    width: 100%;
}

.m-img img {
    max-width: 100%;
}

.fix {
    overflow: hidden;
}

.clear {
    clear: both;
}

.z-index-1 {
    z-index: 1;
}

.z-index-11 {
    z-index: 11;
}

.overflow-y-visible {
    overflow: hidden visible;
}

.p-relative {
    position: relative;
}

.p-absolute {
    position: absolute;
}

.include-bg {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
}

.body-overlay {
    background-color: var(--stem-common-black);
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0px;
    z-index: 98;
    left: 0px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-out 0s;
}

.body-overlay:hover {
    cursor: url("../img/icons/cross-out.png"), pointer;
}

.body-overlay.opened {
    opacity: 0.7;
    visibility: visible;
}

@media (max-width: 575px) {
    .progress-wrap {
        left: 15px;
        bottom: 15px;
    }
}

.basic-pagination ul li {
    display: inline-block;
    margin-bottom: 30px;
}

.basic-pagination ul li:not(:last-child) {
    margin-left: 10px;
}

@media (max-width: 575px) {
    .basic-pagination ul li:not(:last-child) {
        margin-left: 3px;
    }
}

.basic-pagination ul li a,
.basic-pagination ul li span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    line-height: 46px;
    text-align: center;
    border-radius: 7px;
    border: 2px solid rgb(241, 241, 241);
    font-size: 18px;
    font-weight: 600;
}

.basic-pagination ul li a:hover,
.basic-pagination ul li a.current,
.basic-pagination ul li span:hover,
.basic-pagination ul li span.current {
    background: var(--stem-theme-primary);
    border-color: var(--stem-theme-primary);
    color: var(--stem-common-white);
}

.nice-select::after {
    border: none;
    background-color: transparent;
    transform: translateY(-50%);
    margin-top: 0px;
    left: 0px;
    content: "";
    font-family: var(--stem-ff-fontawesome);
    transform-origin: center center;
    color: var(--stem-common-black);
    font-weight: 500;
    height: auto;
    width: auto;
}

.nice-select.open::after {
    transform: translateY(-50%) rotate(180deg);
}

.stem-backtotop {
    position: fixed;
    bottom: 0px;
    left: 40px;
    background: var(--stem-theme-primary);
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    color: rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.06) 0px 16px 32px 0px;
    opacity: 0;
    transition: all 0.6s ease 0s;
    z-index: 99;
    font-size: 20px;
    border-radius: 5px;
}

.stem-backtotop.show {
    top: auto;
    bottom: 40px;
    opacity: 1;
}

.stem-backtotop:hover {
    background-color: var(--stem-theme-secondary);
}

.cart-plus,
.cart-minus {
    width: 25px;
    height: 30px;
    line-height: 30px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    font-size: 14px;
    transition: all 0.3s ease-out 0s;
}

.cart-plus:hover,
.cart-minus:hover {
    cursor: pointer;
}

.product-quantity input {
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: normal;
    text-align: center;
    width: 40px;
}

.cart-input {
    height: 30px;
    width: 32px;
    text-align: center;
    font-size: 14px;
    border-right: none;
    border-left: none;
    border-image: initial;
    border-top: 2px solid var(--stem-border-1);
    border-bottom: 2px solid var(--stem-border-1);
    display: inline-block;
    vertical-align: middle;
    margin: 0px -3px;
    padding-bottom: 0px;
}

.cart-input:focus {
    outline: none;
}

.stem-dropcap {
    display: inline-block;
    font-size: 50px;
    font-weight: 700;
    float: right;
    height: 70px;
    width: 70px;
    line-height: 70px;
    text-align: center;
    color: var(--stem-common-black);
    background-color: var(--stem-common-white);
    box-shadow: rgba(0, 0, 0, 0.06) 0px 16px 32px 0px;
    margin-left: 20px;
}

.course__view h4 {
    font-size: 15px;
    font-weight: 500;
    color: rgb(83, 84, 91);
    display: inline-block;
    margin-bottom: 0px;
}

.course__sort-inner .nice-select {
    background-color: var(--stem-grey-2);
}

.course__sort-inner .nice-select::after {
    left: 10px;
    background-color: var(--stem-grey-2);
}

.br-0 span {
    border-radius: 0px !important;
}
.tp-btn-2 {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: var(--tp-common-white);
    background: var(--tp-theme-primary);
    text-align: center;
    padding: 15px 38px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.tp-btn-2 i {
    padding-right: 5px;
}

.tp-btn-2:hover {
    color: var(--tp-theme-primary);
    background-color: var(--tp-common-white);
}

.tp-btn-2:focus {
    color: var(--tp-theme-primary);
}

.tp-btn {
    padding: 2px;
    text-align: center;
    position: relative;
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
    border-radius: 6px;
}

.tp-btn span {
    color: var(--tp-common-white);
    background-color: var(--tp-theme-primary);
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    padding: 8px 25px;
    letter-spacing: -0.02rem;
    border: 1px solid var(--tp-theme-primary);
    display: inline-block;
    border-radius: 6px;
    transition: all 0.3s ease-out 0s;
}

.tp-btn i {
    padding-right: 15px;
}

.tp-btn:hover span {
    color: var(--tp-common-white);
    background-color: var(--tp-theme-secondary);
    border-color: transparent;
}
.breadcrumb__overlay {
    position: relative;
}

.breadcrumb__overlay::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: #0d2d61;
    z-index: -1;
}
.breadcrumb__title {
    font-size: 70px;
    color: var(--tp-common-white);
}
.stem-btn-2 {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: var(--stem-common-white);
    background: var(--stem-theme-primary);
    text-align: center;
    padding: 15px 38px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.stem-btn-2 i {
    padding-right: 5px;
}

.stem-btn-2:hover {
    color: var(--stem-theme-primary);
    background-color: var(--stem-common-white);
}

.stem-btn-2:focus {
    color: var(--stem-theme-primary);
}

.stem-btn {
    padding: 2px;
    text-align: center;
    position: relative;
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
    /* border-radius: 6px; */
}

.stem-btn span {
    color: var(--stem-common-white);
    background-color: #00a6a5;
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    padding: 8px 25px;
    letter-spacing: 0;
    border: 1px solid #00a6a5;
    display: inline-block;
    transition: all 0.3s ease-out 0s;
    border-radius: 10px !important;
}

.stem-btn i {
    padding-right: 15px;
}

.stem-btn:hover span {
    color: var(--stem-common-white);
    background-color: #018a8a;
    border-color: #018a8a;
}

.stem-border-btn,
.stem-border-btn-white {
    padding: 2px;
    text-align: center;
    position: relative;
    text-decoration: none;
    display: inline-block;
}

.stem-border-btn span,
.stem-border-btn-white span {
    color: var(--stem-theme-primary);
    background-color: var(--stem-common-white);
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    padding: 7px 35px;
    letter-spacing: -0.02rem;
    border: 2px solid var(--stem-theme-primary);
    display: inline-block;
    border-radius: 6px;
    transition: all 0.3s ease-out 0s;
}

.stem-border-btn i,
.stem-border-btn-white i {
    padding-right: 15px;
}

.stem-border-btn:hover span,
.stem-border-btn-white:hover span {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    border-color: transparent;
}

.stem-border-btn-white span {
    border-color: rgba(50, 112, 252, 0.08);
    color: var(--stem-common-black);
    padding: 7px 25px;
}

.stem-transparent-btn {
    padding: 2px;
    text-align: center;
    position: relative;
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
}

.stem-transparent-btn span {
    color: var(--stem-common-white);
    background-color: transparent;
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    padding: 10px 35px;
    letter-spacing: -0.02rem;
    border: 2px solid rgba(255, 255, 255, 0.1);
    display: inline-block;
    border-radius: 6px;
    transition: all 0.3s ease-out 0s;
}

.stem-transparent-btn i {
    padding-right: 15px;
}

.stem-transparent-btn:hover span {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    border-color: transparent;
}

.stem-white-btn {
    padding: 2px;
    text-align: center;
    position: relative;
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
}

.stem-white-btn span {
    color: var(--stem-common-black);
    background-color: var(--stem-common-white);
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    padding: 12px 35px;
    letter-spacing: -0.02rem;
    display: inline-block;
    border-radius: 4px;
    transition: all 0.3s ease-out 0s;
    border-radius: 10px;
}

.stem-white-btn i {
    padding-right: 15px;
}

.stem-white-btn:hover span {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    border-color: transparent;
}

.stem-phone-btn {
    font-size: 14px;
    color: var(--stem-common-white);
    margin-left: 20px;
}

.stem-phone-btn i {
    margin-left: 5px;
}

.stem-phone-btn:hover {
    color: var(--stem-common-white);
}

.stem-play-btn {
    color: var(--stem-common-white);
    display: inline-block;
}

.stem-play-btn span {
    display: inline-block;
}

.stem-play-btn i {
    font-size: 24px;
    width: 47px;
    height: 47px;
    text-align: center;
    border-radius: 50%;
    line-height: 43px;
    border: 2px solid var(--stem-common-white);
    display: inline-block;
    margin-left: 15px;
    transition: all 0.3s ease-out 0s;
}

.stem-play-btn:hover {
    color: var(--stem-common-white);
}

.stem-play-btn:hover i {
    background-color: var(--stem-theme-secondary);
}

.stem-submit-btn {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    text-align: center;
    padding: 12px 30px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 6px;
}

.stem-submit-btn i {
    padding-right: 5px;
}

.stem-submit-btn:hover {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-secondary);
}

.stem-submit-btn:focus {
    color: var(--stem-theme-primary);
}

.e-btn {
    display: inline-block;
    height: 50px;
    line-height: 52px;
    text-align: center;
    padding: 0px 25px;
    color: rgb(255, 255, 255);
    background: var(--stem-theme-primary);
    border-radius: 4px;
    font-weight: 500;
}

.e-btn:hover {
    background-color: var(--stem-theme-secondary);
    color: white;
}

.e-btn.orange {
    background-color: var(--stem-theme-secondary);
}

.e-btn.orange:hover {
    background-color: var(--stem-theme-primary);
}

.stem-hader-btn {
    color: var(--stem-common-white);
}

.stem-hader-btn .icon {
    margin-right: 10px;
    display: inline-block;
}

.stem-hader-btn .avata {
    width: 36px;
    height: 36px;
    text-align: center;
    display: inline-block;
    border-width: 2px;
    border-color: rgba(255, 255, 255, 0.1);
    border-style: solid;
    border-radius: 50%;
    line-height: 32px;
    margin-right: 40px;
}

.stem-hader-btn:hover {
    color: var(--stem-common-white);
}

.stem-hader-btn:hover .icon {
    animation: 0.5s ease 0s 1 normal forwards running tfLeftToRight;
}

.play-btn {
    display: inline-block;
    width: 44px;
    height: 44px;
    font-size: 12px;
    text-align: center;
    line-height: 44px;
    border-radius: 50%;
    background: rgb(255, 255, 255);
    color: var(--stem-theme-primary);
    animation: 2s ease 0s infinite normal none running pulse;
}

.pulse-btn {
    display: inline-block;
    width: 80px;
    height: 80px;
    line-height: 84px;
    text-align: center;
    background-color: var(--stem-common-white);
    border-radius: 50%;
    color: var(--stem-common-black);
    animation: 2s ease 0s infinite normal none running pulse;
}

.pulse-btn i {
    font-size: 18px;
}

.pulse-btn:hover {
    background-color: var(--stem-common-black);
    color: var(--stem-common-white);
}

.pulse-btn i {
    padding-right: 2px;
}

.hamburger-btn {
    width: 30px;
    height: 30px;
    position: relative;
    transition: all 0.5s ease-in-out 0s;
    cursor: pointer;
    background: transparent;
    border: 0px;
    outline: 0px;
}

.hamburger-btn span {
    background: var(--stem-common-black);
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    opacity: 1;
    right: 0px;
    z-index: 1;
}

.hamburger-btn span:nth-child(1) {
    top: 0px;
}

.hamburger-btn span:nth-child(2) {
    top: 10px;
}

.hamburger-btn span:nth-child(3) {
    top: 20px;
}

.link-btn {
    position: relative;
    display: inline-block;
    font-size: 18px;
    color: var(--stem-text-3);
    background: transparent;
    border: 1px solid var(--stem-border-2);
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 48px;
    padding-left: 25px;
    transition: all 0.2s ease 0s;
    overflow: hidden;
}

.link-btn i {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    transition: all 0.2s ease 0s;
}

.link-btn i:last-child {
    right: 0%;
    visibility: hidden;
    opacity: 0;
}

.link-btn:hover {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    border-color: var(--stem-theme-primary);
}

.link-btn:hover i {
    right: 100%;
    visibility: hidden;
    opacity: 0;
}

.link-btn:hover i:last-child {
    right: 50%;
    visibility: visible;
    opacity: 1;
}

.link-btn-2 {
    position: relative;
    font-size: 16px;
    color: var(--stem-text-1);
    font-weight: 500;
    padding-left: 21px;
    display: inline-block;
}

.link-btn-2 i {
    font-size: 14px;
    position: absolute;
    top: 12px;
    transform: translateY(-50%);
    transition: all 0.2s ease 0s;
}

.link-btn-2 i:first-child {
    left: 10%;
    visibility: hidden;
    opacity: 0;
}

.link-btn-2 i:last-child {
    left: 0px;
}

.link-btn-2:hover {
    color: var(--stem-theme-primary);
}

.link-btn-2:hover i:first-child {
    left: 0px;
    visibility: visible;
    opacity: 1;
}

.link-btn-2:hover i:last-child {
    left: -10%;
    visibility: hidden;
    opacity: 0;
}

.link-btn-2.link-prev {
    padding-left: 0px;
    padding-right: 21px;
}

.link-btn-2.link-prev i:first-child {
    right: 10%;
    left: auto;
}

.link-btn-2.link-prev i:last-child {
    right: 0px;
    left: auto;
}

.link-btn-2.link-prev:hover i:first-child {
    right: 0%;
    left: auto;
}

.link-btn-2.link-prev:hover i:last-child {
    right: -10%;
    left: auto;
}

.more-btn {
    font-weight: 500;
    font-size: 16px;
}

.more-btn i {
    margin-right: 10px;
}

.more-btn:hover {
    color: var(--stem-theme-primary);
}

.more-btn:hover i {
    animation: 0.5s ease 0s 1 normal forwards running tfLeftToRight;
}

.hero-btn-2 {
    margin-bottom: 10px;
}

@-webkit-keyframes pulse {
    0% {
        box-shadow: rgba(255, 255, 255, 0.4) 0px 0px 0px 0px;
    }

    70% {
        box-shadow: rgba(255, 255, 255, 0) 0px 0px 0px 45px;
    }

    100% {
        box-shadow: rgba(255, 255, 255, 0) 0px 0px 0px 0px;
    }
}

@keyframes pulse {
    0% {
        box-shadow: rgba(255, 255, 255, 0.4) 0px 0px 0px 0px;
    }

    70% {
        box-shadow: rgba(255, 255, 255, 0) 0px 0px 0px 45px;
    }

    100% {
        box-shadow: rgba(255, 255, 255, 0) 0px 0px 0px 0px;
    }
}

@keyframes stem-bounce {

    20%,
    53%,
    80%,
    0%,
    100% {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0px, 0px, 0px);
    }

    40%,
    43% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0px, -30px, 0px);
    }

    70% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0px, -15px, 0px);
    }

    90% {
        transform: translate3d(0px, -4px, 0px);
    }
}

.stem-bounce {
    animation-name: bounce;
    transform-origin: center bottom;
}

@keyframes tfLeftToRight {
    49% {
        transform: translateX(-30%);
    }

    50% {
        opacity: 0;
        transform: translateX(30%);
    }

    51% {
        opacity: 1;
    }
}

@-webkit-keyframes stem-float-1 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-30px, 40px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@keyframes stem-float-1 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-30px, 40px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@keyframes stem-float-2 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-30px, -30px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@-webkit-keyframes stem-float-2 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-30px, 40px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@-webkit-keyframes stem-float-3 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-20px, 30px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@keyframes stem-float-3 {
    0% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-20px, 30px) rotate(0deg) scale(1);
    }

    100% {
        transform: translate(0px, 0px) rotate(0deg) scale(1);
    }
}

@keyframes tpswing {
    0% {
        transform: rotate(-6deg);
    }

    100% {
        transform: rotate(6deg);
    }
}

@keyframes tpswing2 {
    0% {
        transform: rotate(-5deg);
    }

    100% {
        transform: rotate(1deg);
    }
}

@keyframes tpupdown {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(-20px);
    }
}

@keyframes opactiy {
    0% {
        transform: rotate(-5deg);
    }

    100% {
        transform: rotate(1deg);
    }
}

@keyframes opactiy {
    0% {
        opacity: 0.1;
    }

    50% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes borderanimate2 {
    0% {
        transform: translate(50%, -50%) scale(0.8);
    }

    60% {
        opacity: 1;
    }

    100% {
        transform: translate(50%, -50%) scale(2.5);
        opacity: 0;
    }
}

.stem-preloader {
    background-color: var(--stem-common-white);
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0px;
    z-index: 9999;
    right: 0px;
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease-out 0s;
}

.stem-preloader__center {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.stem-preloader img,
.stem-preloader svg {
    display: block;
    width: 100px;
    height: 100px;
    animation: 3s ease 0s infinite normal none running stem-bounce;
}

.stem-preloader img .path-yellow,
.stem-preloader svg .path-yellow {
    color: rgb(237, 184, 62);
    width: 0px;
    animation: 1.5s ease 0s infinite normal none running colorchange;
    transition: all 0.5s ease-out 0s;
}

@keyframes colorchange {
    10% {
        color: green;
    }

    10% {
        color: pink;
    }

    20% {
        color: deeppink;
    }

    30% {
        color: darkorange;
    }

    40% {
        color: aquamarine;
    }

    50% {
        color: darkcyan;
    }

    70% {
        color: orange;
    }

    80% {
        color: cornflowerblue;
    }

    90% {
        color: grey;
    }

    100% {
        color: white;
    }
}

.grey-bg {
    background: var(--stem-grey-1);
}

.grey-bg-2 {
    background: var(--stem-grey-2);
}

.white-bg {
    background: var(--stem-common-white);
}

.black-bg {
    background: var(--stem-common-black);
}

.theme-bg {
    background-color: var(--stem-theme-bg);
}

.theme-bg-2 {
    background-color: var(--stem-theme-bg-2);
}

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

.stem-range-slider .inside-slider {
    padding-right: 7px;
    padding-left: 17px;
}

.stem-range-slider .noUi-target {
    background-color: rgb(25, 28, 60);
    border-radius: 12px;
    border: 0px;
    box-shadow: none;
}

.stem-range-slider .noUi-connect {
    background-color: var(--stem-theme-primary);
}

.stem-range-slider .noUi-horizontal {
    height: 6px;
}

.stem-range-slider .noUi-handle {
    height: 24px;
    width: 24px;
    background-color: var(--stem-theme-primary);
    border-radius: 50%;
    border: 4px solid var(--stem-common-white);
    box-shadow: rgba(5, 9, 43, 0.3) 0px 4px 10px;
    top: -9px;
}

.stem-range-slider .noUi-handle:hover {
    cursor: pointer;
}

.stem-range-slider .noUi-handle::before,
.stem-range-slider .noUi-handle::after {
    display: none;
}

.stem-range-slider-dark .noUi-handle {
    border: 4px solid rgb(45, 49, 75);
}

.stem-swiper-dot .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: var(--stem-grey-1);
    opacity: 1;
    margin: 0px 9px;
    position: relative;
}

.stem-swiper-dot .swiper-pagination-bullet::after {
    position: absolute;
    content: "";
    right: 50%;
    top: 50%;
    width: calc(100% + 16px);
    height: calc(100% + 16px);
    background-color: transparent;
    border: 2px solid transparent;
    border-radius: 50%;
    transform: translate(50%, -50%) scale(0);
}

.stem-swiper-dot .swiper-pagination-bullet button {
    font-size: 0px;
}

.stem-swiper-dot .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--stem-theme-primary);
}

.stem-swiper-dot .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    border-color: var(--stem-theme-primary);
    transform: translate(50%, -50%) scale(1);
}

.stem-swiper-arrow {
    width: 80px;
    height: 80px;
    line-height: 80px;
    font-size: 20px;
    text-align: center;
    background-color: var(--stem-common-white);
    color: var(--stem-common-black);
}

.stem-swiper-arrow:hover {
    background-color: var(--stem-common-black);
    color: var(--stem-common-white);
}

.offcanvas__logo img {
    max-width: 128px;
}

.offcanvas__area {
    position: fixed;
    left: -490px;
    top: 0px;
    width: 450px;
    height: 100%;
    transition-duration: 0.5s;
    z-index: 999;
    overflow-y: scroll;
    min-width: 300px;
    min-height: 768px;
    background-size: cover;
    background-color: var(--stem-grey-1);
}

.offcanvas__area::-webkit-scrollbar {
    display: none;
}

.offcanvas__area.offcanvas-opened {
    left: 0px;
}

@media (max-width: 575px) {
    .offcanvas__area {
        width: 290px;
    }
}

.offcanvas__wrapper {
    position: relative;
    padding: 45px;
    overflow: auto;
    width: 100%;
    height: 100%;
}

.offcanvas__wrapper .stem-btn {
    height: 45px;
    line-height: 45px;
}

@media (max-width: 575px) {
    .offcanvas__wrapper {
        padding: 20px;
    }
}

.offcanvas__close-btn {
    display: inline-block;
    font-size: 16px;
    height: 40px;
    width: 40px;
    line-height: 36px;
    background: var(--stem-theme-primary);
    color: rgb(255, 255, 255);
}

.offcanvas__close-btn:hover {
    background: var(--stem-theme-secondary);
}

.offcanvas-info p {
    margin-bottom: 40px;
    color: var(--stem-common-black);
}

.offcanvas__top {
    padding-bottom: 20px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .offcanvas__top {
        margin-bottom: 0px;
    }
}

.offcanvas__cta {
    position: absolute;
    bottom: 0px;
}

.offcanvas__cta-2 {
    position: static;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .offcanvas__cta {
        position: static;
    }
}

.offcanvas__cta-title {
    color: var(--stem-common-black);
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 22px;
    margin-bottom: 20px;
}

.offcanvas__cta span {
    display: block;
    font-size: 16px;
    color: var(--stem-common-black);
    margin-bottom: 15px;
}

.offcanvas__cta span a:hover {
    color: var(--stem-theme-primary);
}

@media (max-width: 575px) {
    .breadcrumb__area {
        padding-top: 150px;
        padding-bottom: 100px;
    }
}

.breadcrumb__title {
    font-size: 70px;
    color: var(--stem-common-white);
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .breadcrumb__title {
        font-size: 68px;
    }
}

@media (max-width: 575px) {
    .breadcrumb__title {
        font-size: 40px;
    }
}

.breadcrumb__title-2 {
    font-size: 50px;
    line-height: 1.1;
    margin-top: 12px;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .breadcrumb__title-2 {
        font-size: 40px;
    }
}

@media (max-width: 575px) {
    .breadcrumb__title-2 {
        font-size: 26px;
    }
}

.breadcrumb__title-pre {
    display: inline-block;
    height: 24px;
    line-height: 26px;
    font-size: 14px;
    color: rgb(255, 255, 255);
    font-weight: 500;
    background: var(--stem-theme-2);
    border-radius: 4px;
    padding: 0px 7px;
    margin-bottom: 12px;
}

.breadcrumb__list span {
    font-size: 16px;
    color: var(--stem-common-white);
    font-weight: 500;
    padding-left: 3px;
    margin-left: 3px;
    text-transform: capitalize;
}

.breadcrumb__list span a:hover {
    color: #f4ad4d;
}

.breadcrumb__list-2 span {
    font-size: 14px;
    color: var(--stem-text-11);
    font-weight: 500;
    padding-left: 3px;
    margin-left: 3px;
    text-transform: capitalize;
}

.breadcrumb__list-2 span a:hover {
    color: var(--stem-theme-primary);
}

.breadcrumb__overlay {
    position: relative;
}

.breadcrumb__overlay::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0, 3, 32, 0.2);
}

.stem-custom-accordio .accordion-items {
    margin-bottom: 20px;
    border: 1px solid rgb(217 217 217);
    border-radius: 0.5rem;
}

.stem-custom-accordio .accordion-buttons {
    position: relative;
    width: 100%;
    text-align: right;
    font-size: 24px;
    font-weight: 700;
    padding: 40px 40px 20px;
    background-color: var(--stem-common-white);
    color: rgb(33, 33, 33);
    border-radius: 10px 10px 0px 0px;
}

@media (max-width: 575px) {
    .stem-custom-accordio .accordion-buttons {
        font-size: 17px;
        padding: 28px 20px;
    }
}

.stem-custom-accordio .accordion-buttons::after {
    position: absolute;
    content: "";
    font-family: "Font Awesome 5 Pro";
    background-image: none;
    top: auto;
    left: 40px;
    color: var(--stem-theme-primary);
    width: auto;
    height: auto;
    font-weight: 300;
    font-size: 20px;
}

@media (max-width: 575px) {
    .stem-custom-accordio .accordion-buttons::after {
        top: 33px;
        left: 18px;
    }
}

.stem-custom-accordio .accordion-buttons.collapsed {
    padding: 40px;
}

.stem-custom-accordio .accordion-buttons.collapsed::after {
    content: "";
    color: var(--stem-common-black);
}

.stem-custom-accordio .collapsed {
    border-radius: 10px;
}

.stem-custom-accordio .accordion-body {
    background-color: var(--stem-common-white);
    position: relative;
    z-index: 1;
    font-size: 16px;
    padding: ٤0px 40px 40px 80px;
    border-bottom: 4px solid var(--stem-theme-primary);
}

@media (max-width: 575px) {
    .stem-custom-accordio .accordion-body {
        padding: 20px 25px;
    }
}

.faq-accordio-border .accordion-items {
    background-color: var(--stem-common-white);
    border: 1px solid rgb(245, 245, 245);
    border-radius: 10px;
}

.stem-tab .nav-tabs {
    padding: 0px;
    margin: 0px;
    border: 0px;
}

.stem-tab .nav-tabs .nav-link {
    padding: 0px;
    margin: 0px;
    border: 0px;
}

.stem-section__title {
    font-size: 25px;
    color: var(--stem-common-black);
}

.stem-section__title span {
    color: var(--stem-theme-primary);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-section__title {
        font-size: 35px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-section__title br {
        display: none;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-section__title {
        font-size: 30px;
    }

    .stem-section__title br {
        display: none;
    }
}

@media (max-width: 575px) {
    .stem-section__title {
        font-size: 25px;
    }

    .stem-section__title br {
        display: none;
    }
}

.stem-section__title-wrapper p {
    font-size: 16px;
}

.error__title {
    font-size: 70px;
}

.congrats__title {
    font-size: 70px;
}

.stem-header__transparent {
    right: 0px;
    margin: auto;
    top: 0px;
    width: 100%;
    z-index: 88;
    background: transparent;
    position: absolute !important;
}

.stem-header__container {
    padding-right: 200px;
    padding-left: 200px;
}

@media only screen and (min-width: 1700px) and (max-width: 1800px) {
    .stem-header__container {
        padding-right: 100px;
        padding-left: 100px;
    }
}

@media only screen and (min-width: 1600px) and (max-width: 1700px),
only screen and (min-width: 1400px) and (max-width: 1599px) {
    .stem-header__container {
        padding-right: 130px;
        padding-left: 130px;
    }
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .stem-header__container {
        padding-right: 80px;
        padding-left: 80px;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .stem-header__container {
        padding-right: 0px;
        padding-left: 0px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-header__container {
        padding-right: 0px;
        padding-left: 0px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-header__main {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

.stem-header__top {
    padding: 4px 0px;
}

.stem-header__info ul li {
    list-style: none;
    display: inline-block;
    margin-left: 20px;
    color: var(--stem-common-white);
    opacity: 0.7;
    font-size: 12px;
}

.stem-header__info ul li:last-child {
    margin-left: 0px;
}

.stem-header__info ul li:hover {
    opacity: 1;
}

.stem-header__info ul li a i {
    margin-left: 5px;
}

.stem-header__info ul li a svg {
    width: 13px;
    height: 13px;
    margin-left: 5px;
}

.stem-header__info ul li a svg path {
    fill: var(--stem-text-4);
}

.stem-header__border {
    border-bottom: 1px solid rgba(3, 18, 32, 0.07);
}

.stem-header__search-input {
    position: relative;
}

.stem-header__search-input input {
    width: 100%;
    height: 40px;
    background-color: var(--stem-grey-1);
    border: 1px solid var(--stem-grey-1);
    padding: 0px 20px 0px 60px;
}

.stem-header__search-input input::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

.stem-header__search-btn {
    position: absolute;
    top: 46%;
    transform: translateY(-50%);
    left: 15px;
    font-size: 16px;
    color: var(--stem-common-black);
    padding-right: 17px;
    background-color: var(--stem-grey-1);
}

.stem-header__search-btn::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 57%;
    transform: translateY(-50%);
    height: 100%;
    width: 1px;
    background-color: rgba(3, 18, 32, 0.1);
}

.stem-header__search-2 {
    margin-right: 13px;
}

.stem-header__search-2 input {
    height: 44px;
    line-height: 44px;
    border-radius: 6px;
    background-color: var(--stem-grey-5);
}

.stem-header__search-2 input::-webkit-input-placeholder {
    color: var(--stem-text-10);
}

.stem-header__search-2 button::after {
    background-color: rgba(62, 132, 84, 0.14);
}

.stem-header__search-3 button svg path {
    stroke: var(--stem-theme-3);
}

.stem-header__hamburger {
    margin-top: 3px;
}

.stem-header__sticky.header__sticky {
    right: 0px;
    margin: auto;
    top: 0px;
    width: 100%;
    z-index: 99;
    animation: 300ms ease-in-out 0s 1 normal none running fadeInDown;
    box-shadow: rgba(25, 25, 25, 0.1) 0px 10px 15px;
    background: var(--stem-common-white);
    position: fixed !important;
}

.stem-header__account ul li {
    display: inline-block;
    margin-left: 10px;
}

.stem-header__account ul li a {
    color: var(--stem-common-white);
    font-size: 12px;
    opacity: 0.7;
}

.stem-header__account ul li a:hover {
    opacity: 1;
}

.stem-header__account ul li a i {
    margin-left: 5px;
}

.stem-header__category {
    position: relative;
    margin-left: 20px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .stem-header__category {
        margin-left: 10px;
    }
}

.stem-header__category svg {
    width: 16px;
}

.stem-header__category svg .cat-dot {
    fill: var(--stem-common-black);
}

.stem-header__category::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 60%;
    transform: translateY(-50%);
    width: 1px;
    height: 40px;
}

.stem-header__category ul li {
    position: relative;
    list-style: none;
}

.stem-header__category ul li .cat-submenu {
    position: absolute;
    top: calc(100% + 30px);
    right: 0px;
    width: 200px;
    padding: 17px 0px 15px;
    background: var(--stem-common-white);
    box-shadow: rgba(8, 0, 42, 0.08) 0px 10px 20px 0px;
    border-radius: 4px;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-out 0s;
}

.stem-header__category ul li .cat-submenu li {
    display: block;
    margin-left: 0px;
}

.stem-header__category ul li .cat-submenu li>a {
    width: 100%;
    display: block;
    padding: 3px 30px;
    text-transform: capitalize;
    color: var(--stem-text-body);
    font-weight: 500;
    position: relative;
}

.stem-header__category ul li .cat-submenu li>a::after {
    left: 30px;
    transform: translateY(-50%) rotate(90deg);
}

.stem-header__category ul li .cat-submenu li:hover>a {
    color: var(--stem-theme-primary);
}

.stem-header__category ul li:hover .cat-submenu {
    visibility: visible;
    opacity: 1;
    top: calc(100% + 10px);
}

.stem-header__search form {
    position: relative;
}

.stem-header__search form input {
    height: 46px;
    border: 0px;
    background-color: var(--stem-grey-2);
    padding-right: 20px;
    padding-left: 40px;
    border-radius: 6px;
}

@media only screen and (min-width: 1600px) and (max-width: 1700px) {
    .stem-header__search form input {
        width: 200px;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 1400px) and (max-width: 1599px) {
    .stem-header__search form input {
        width: 170px;
    }
}

.stem-header__search form input::-webkit-input-placeholder {
    color: rgb(131, 139, 149);
}

.stem-header__search form button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
}

.stem-header__search-2 form {
    padding-top: 17px;
    padding-bottom: 17px;
    position: relative;
}

.stem-header__search-2 form input {
    width: 350px;
}

.cat-menu {
    font-weight: 500;
}

.cat-menu i {
    margin-right: 5px;
    display: inline-block;
}

.logo.has-border {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    border-top-color: rgba(255, 255, 255, 0.1);
    border-right-color: rgba(255, 255, 255, 0.1);
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .logo.has-border {
        border-left: 0px;
    }
}

.logo img {
    width: 150px;
}

.cat-dot-icon {
    margin-left: 10px;
}

.header-sticky {
    position: fixed;
    top: 0px;
    right: 0px;
    left: 0px;
    background-color: var(--stem-common-white);
    animation: 300ms ease-in-out 0s 1 normal none running fadeInDown;
    box-shadow: rgba(0, 0, 0, 0.09) 0px 16px 32px 0px;
    z-index: 91;
}

.stem-header__transparent .main-menu ul li {
    position: relative;
    list-style: none;
    display: inline-block;
    margin-left: 35px;
    text-align: right;
}

.stem-header__transparent .main-menu ul li a {
    display: inline-block;
    font-size: 14px;
    color: var(--stem-common-white);
    padding: 27px 0px;
    font-weight: 500;
}

.stem-header__transparent .main-menu ul li.has-dropdown>a {
    position: relative;
}

.stem-header__transparent .main-menu ul li.has-dropdown>a::after {
    content: "";
    transform: translateY(1px);
    font-size: 14px;
    color: var(--stem-common-white);
    font-family: var(--stem-ff-fontawesome);
    font-weight: 400;
    margin-right: 5px;
    display: inline-block;
    transition: all 0.3s ease-out 0s;
}

.stem-header__transparent .main-menu ul li .submenu {
    position: absolute;
    top: 120%;
    right: 0px;
    width: 200px;
    background: var(--stem-common-white);
    z-index: 99;
    transition: all 0.3s ease-out 0s;
    visibility: hidden;
    opacity: 0;
    box-shadow: rgba(11, 6, 70, 0.08) 0px 30px 70px 0px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 3px solid var(--stem-theme-primary);
}

.stem-header__transparent .main-menu ul li .submenu li {
    display: block;
    width: 100%;
    margin: 0px;
}

.stem-header__transparent .main-menu ul li .submenu li.has-dropdown>a::after {
    position: absolute;
    top: 50%;
    left: 25px;
    transform: translateY(-50%) rotate(90deg);
}

.stem-header__transparent .main-menu ul li .submenu li a {
    padding: 5px 25px;
    font-size: 13px;
    position: relative;
    z-index: 1;
    color: var(--stem-common-black);
    width: 100%;
}

.stem-header__transparent .main-menu ul li .submenu li .submenu {
    right: 120%;
    top: 0px;
    visibility: hidden;
    opacity: 0;
}

.stem-header__transparent .main-menu ul li .submenu li:hover>a {
    color: var(--stem-theme-primary);
}

.stem-header__transparent .main-menu ul li .submenu li:hover>a::after {
    color: var(--stem-theme-primary);
}

.stem-header__transparent .main-menu ul li .submenu li:hover>a::before {
    right: 0px;
    left: auto;
    width: 100%;
}

.stem-header__transparent .main-menu ul li .submenu li:hover>.submenu {
    right: 100%;
    visibility: visible;
    opacity: 1;
}

.stem-header__transparent .main-menu ul li:hover>a {
    color: var(--stem-theme-primary);
}

.stem-header__transparent .main-menu ul li:hover>a::after {
    color: var(--stem-theme-primary);
    transform: rotate(180deg);
}

.stem-header__transparent .main-menu ul li:hover>.submenu {
    top: 100%;
    visibility: visible;
    opacity: 1;
}

.stem-header__transparent .hamburger-btn span {
    background-color: var(--stem-common-white);
}

.stem-header__transparent .header-sticky {
    background-color: rgb(58, 83, 164);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .main-menu {
        padding-right: 30px;
    }
}

.main-menu ul li {
    position: relative;
    list-style: none;
    display: inline-block;
    margin-left: 25px;
    text-align: right;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .main-menu ul li {
        margin-left: 30px;
    }
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .main-menu ul li {
        margin-left: 25px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .main-menu ul li {
        margin-left: 20px;
    }
}

.main-menu ul li:last-child {
    margin-left: 0px;
}

.main-menu ul li a {
    display: inline-block;
    font-size: 14px;
    color: #242424;
    padding: 27px 0px;
    font-weight: 500;
}

.main-menu ul li.has-dropdown>a {
    position: relative;
}

.main-menu ul li.has-dropdown>a::after {
    content: "";
    transform: translateY(1px);
    font-size: 14px;
    color: var(--stem-common-black);
    font-family: var(--stem-ff-fontawesome);
    font-weight: 400;
    margin-right: 5px;
    display: inline-block;
    transition: all 0.3s ease-out 0s;
}

.main-menu ul li .submenu {
    position: absolute;
    top: 120%;
    right: 0px;
    width: 200px;
    background: var(--stem-common-white);
    z-index: 99;
    transition: all 0.3s ease-out 0s;
    visibility: hidden;
    opacity: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 3px solid var(--stem-theme-primary);
    box-shadow: rgba(11, 6, 70, 0.08) 0px 30px 70px 0px;
}

.main-menu ul li .submenu li {
    display: block;
    width: 100%;
    margin: 0px;
}

.main-menu ul li .submenu li.has-dropdown>a::after {
    position: absolute;
    top: 50%;
    left: 25px;
    transform: translateY(-50%) rotate(90deg);
}

.main-menu ul li .submenu li a {
    padding: 5px 25px;
    font-size: 13px;
    position: relative;
    z-index: 1;
    color: var(--stem-common-black);
    width: 100%;
}

.main-menu ul li .submenu li .submenu {
    right: 120%;
    top: 0px;
    visibility: hidden;
    opacity: 0;
}

.main-menu ul li .submenu li:hover>a {
    color: var(--stem-theme-primary);
}

.main-menu ul li .submenu li:hover>a::after {
    color: var(--stem-theme-primary);
}

.main-menu ul li .submenu li:hover>a::before {
    right: 0px;
    left: auto;
    width: 100%;
}

.main-menu ul li .submenu li:hover>.submenu {
    right: 100%;
    visibility: visible;
    opacity: 1;
}

.main-menu ul li:hover>a {
    color: var(--stem-theme-primary);
}

.main-menu ul li:hover>a::after {
    color: var(--stem-theme-primary);
    transform: rotate(180deg);
}

.main-menu ul li:hover>.submenu {
    top: 100%;
    visibility: visible;
    opacity: 1;
}

.main-menu-2 ul li {
    position: relative;
    list-style: none;
    display: inline-block;
    margin-left: 35px;
    text-align: right;
}

.main-menu-2 ul li a {
    display: inline-block;
    font-size: 14px;
    color: var(--stem-common-white);
    padding: 15px 0px;
    font-weight: 500;
}

.main-menu-2 ul li.has-dropdown>a {
    position: relative;
}

.main-menu-2 ul li.has-dropdown>a::after {
    content: "";
    transform: translateY(1px);
    font-size: 14px;
    color: var(--stem-common-white);
    font-family: var(--stem-ff-fontawesome);
    font-weight: 400;
    margin-right: 5px;
    display: inline-block;
    transition: all 0.3s ease-out 0s;
}

.main-menu-2 ul li .submenu {
    position: absolute;
    top: 120%;
    right: 0px;
    width: 200px;
    background: var(--stem-common-white);
    z-index: 99;
    transition: all 0.3s ease-out 0s;
    visibility: hidden;
    opacity: 0;
    border-top: 3px solid var(--stem-theme-primary);
    box-shadow: rgba(11, 6, 70, 0.08) 0px 30px 70px 0px;
}

.main-menu-2 ul li .submenu li {
    display: block;
    width: 100%;
    margin: 0px;
}

.main-menu-2 ul li .submenu li.has-dropdown>a::after {
    position: absolute;
    top: 50%;
    left: 25px;
    transform: translateY(-50%) rotate(90deg);
}

.main-menu-2 ul li .submenu li a {
    padding: 5px 25px;
    font-size: 13px;
    position: relative;
    z-index: 1;
    color: var(--stem-common-black);
    width: 100%;
}

.main-menu-2 ul li .submenu li .submenu {
    right: 120%;
    top: 0px;
    visibility: hidden;
    opacity: 0;
}

.main-menu-2 ul li .submenu li:hover>a {
    color: var(--stem-theme-secondary);
}

.main-menu-2 ul li .submenu li:hover>a::after {
    color: var(--stem-theme-secondary);
}

.main-menu-2 ul li .submenu li:hover>a::before {
    right: 0px;
    left: auto;
    width: 100%;
}

.main-menu-2 ul li .submenu li:hover>.submenu {
    right: 100%;
    visibility: visible;
    opacity: 1;
}

.main-menu-2 ul li:hover>a {
    color: var(--stem-theme-secondary);
}

.main-menu-2 ul li:hover>a::after {
    color: var(--stem-theme-secondary);
    transform: rotate(180deg);
}

.main-menu-2 ul li:hover>.submenu {
    top: 100%;
    visibility: visible;
    opacity: 1;
}

@media only screen and (min-width: 992px) and (max-width: 99999px) {
    .stem-header__area.header-sticky .stem-header__main {
        display: none;
    }
}

.header-acttion-btns .stem-hader-btn {
    margin-left: 40px;
}

.header-acttion-btns .avata {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #4c6373a8;
    display: inline-block;
    text-align: center;
    line-height: 32px;
    color: #4C6373;
    transition: all 0.3s ease-out 0s;
}

.header-acttion-btns .avata:hover {
    border-color: 1px solid #4c6373c9;
}

.mean-container a.meanmenu-reveal {
    display: none;
}

.mean-container .mean-nav {
    background: none;
    margin-top: 0px;
}

.mean-container .mean-bar {
    padding: 0px;
    min-height: auto;
    background: none;
}

.mean-container .mean-nav>ul {
    padding: 0px;
    margin: 0px;
    width: 100%;
    list-style-type: none;
    display: block !important;
}

.mean-container a.meanmenu-reveal {
    display: none !important;
}

.mean-container .mean-nav ul li a {
    width: 100%;
    padding: 10px 0px;
    color: var(--stem-common-black);
    border-top: 1px solid rgb(235, 235, 235);
    font-size: 14px;
    line-height: 1.5;
    font-weight: 700;
}

.mean-container .mean-nav ul li a:hover {
    color: var(--stem-theme-primary);
}

.mean-container .mean-nav ul li a.mean-expand {
    margin-top: 5px;
    height: 30px;
    width: 30px;
    color: var(--stem-common-black);
    line-height: 30px;
    top: 0px;
    font-weight: 400;
    padding: 0px !important;
    border: 1px solid rgb(235, 235, 235) !important;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
    background: var(--stem-theme-primary);
    color: var(--stem-common-white);
    border-color: var(--stem-theme-primary);
}

.mean-container .mean-nav ul li>a>i {
    display: none;
}

.mean-container .mean-nav ul li>a.mean-expand i {
    display: inline-block;
}

.mean-container .mean-nav>ul>li:first-child>a {
    border-top: 0px;
}

.mean-container .mean-nav ul li a.mean-expand.mean-clicked {
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
}

.mean-container .mean-nav ul li a.mean-expand.mean-clicked i {
    transform: rotate(-45deg);
    color: var(--stem-common-white);
}

.stem-slider__section {
    margin-bottom: -70px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-slider__section {
        margin-bottom: -15px;
    }
}

.stem-slider__height {
    min-height: 950px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-slider__height {
        min-height: 750px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-slider__height {
        min-height: 650px;
    }
}

@media (max-width: 575px) {
    .stem-slider__height {
        min-height: 450px;
    }
}

.stem-slider__height-2 {
    min-height: 820px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-slider__height-2 {
        min-height: 750px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-slider__height-2 {
        min-height: 650px;
    }
}

@media (max-width: 575px) {
    .stem-slider__height-2 {
        min-height: 450px;
    }
}

.stem-slider__item {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.stem-slider__overlay {
    position: relative;
    z-index: 1;
}

.stem-slider__overlay::after {
    position: absolute;
    content: "";
    top: 0px;
    right: 0px;
    left: auto;
    width: 100%;
    height: 100%;
    transform: translate(0%, 0%);
    background-color: rgb(0, 6, 20);
    opacity: 0.8;
    z-index: -1;
}

.stem-slider__subtitle {
    color: var(--stem-common-white);
    font-size: 20px;
    margin-bottom: 10px;
    display: inline-block;
}

.stem-slider__title {
    font-size: 90px;
    color: var(--stem-common-white);
    font-weight: var(--stem-fw-bold);
    line-height: 1.1;
    margin-bottom: 20px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-slider__title {
        font-size: 60px;
    }

    .stem-slider__title br {
        display: none;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-slider__title {
        font-size: 60px;
    }
}

@media (max-width: 575px) {
    .stem-slider__title {
        font-size: 45px;
    }
}

.stem-slider__title-pre {
    font-size: 18px;
    font-weight: 500;
    color: var(--stem-common-white);
    display: inline-block;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.stem-slider__content p {
    font-size: 18px;
    line-height: 28px;
    color: var(--stem-common-white);
    margin-bottom: 45px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .stem-slider__arrows {
        display: none;
    }
}

.stem-slider__arrows button {
    position: absolute;
    top: 50%;
    right: 30px;
    z-index: 1;
    font-size: 50px;
    font-weight: 300;
    color: var(--stem-common-white);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-slider__arrows button {
        right: 10px;
    }
}

.stem-slider__arrows button.slick-next {
    right: auto;
    left: 30px;
    z-index: 11;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-slider__arrows button.slick-next {
        left: 10px;
    }
}

.stem-slider__dot {
    position: absolute;
    bottom: 0px;
    right: 50%;
    transform: translateX(50%);
    z-index: 9;
    text-align: center;
}

.stem-slider__dot .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: var(--stem-common-white);
    margin: 0px 8px;
    transform: scale(1);
}

.slider-play-btn {
    font-size: 14px;
    color: var(--stem-common-dark-3);
    text-transform: capitalize;
    font-weight: 700;
}

@media (max-width: 575px) {
    .slider-play-btn {
        display: block;
    }
}

.slider-play-btn .slider-play-btn-icon {
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    background-color: var(--stem-common-white);
    color: var(--stem-common-dark-3);
    border-radius: 50%;
}

.slider-play-btn .slider-play-btn-text {
    margin-right: 20px;
}

.slider-play-btn:hover {
    color: var(--stem-common-white);
}

.stem-hero__shapes-1 {
    position: absolute;
    top: 90px;
    right: 40%;
    animation: 6s ease 0s infinite alternate none running stem-float-1;
}

.stem-hero__shapes-2 {
    position: absolute;
    top: 206px;
    left: 1%;
    animation: 8s ease 0s infinite alternate none running stem-float-2;
}

.stem-hero__shapes-3 {
    position: absolute;
    bottom: 100px;
    right: 5%;
    animation: 5s ease 0s infinite alternate none running stem-float-1;
}

.stem-hero__shapes-4 {
    position: absolute;
    top: 60px;
    left: 300px;
    transform: rotate(180deg);
    filter: invert(0.4);
    /* z-index: 1; */
}

.stem-hero__shapes-5 {
    position: absolute;
    bottom: 350px;
    left: -5px;
    /* animation: 1s ease-in-out 1s infinite alternate forwards running tpswing; */
}

.stem-hero__shapes-6 {
    position: absolute;
    top: 45px;
    right: 13%;
    animation: 7s ease 0s infinite alternate none running stem-float-2;
}

.stem-hero__img {
    margin-right: -80px;
    top: 0px;
    margin-top: -250px;
}

.stem-hero__section {
    margin-bottom: -100px;
}

.stem-hero__subtitle {
    font-size: 20px;
    display: inline-block;
}

.stem-hero__title {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.6;
    /* color: #23343f; */
}

@media (max-width: 575px) {
    .stem-hero__title {
        font-size: 48px;
    }
}

.stem-hero__content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-hero__content {
        padding-top: 0px;
    }
}

.stem-hero__content p {
    font-size: 18px;
    line-height: 36px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-hero__img img {
        width: 100%;
    }
}

.stem-about__img-large {
    position: relative;
    z-index: 1;
    margin-left: 30px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about__img-large {
        margin-left: 0px;
    }
}

.stem-about__img-sm {
    position: relative;
    z-index: 1;
    margin-top: 220px;
    margin-left: 40px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about__img-sm {
        margin-left: 0px;
        margin-top: 0px;
    }
}

.stem-about__shapes-1 {
    position: absolute;
    top: -50px;
    right: 0px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-about__shapes-1>img {
        width: 100%;
    }
}

.stem-about__shapes-2 {
    position: absolute;
    top: 30%;
    text-align: center;
    right: 0px;
    left: 0px;
    transform: translateX(-110px);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about__shapes-2 {
        transform: translateX(0px);
    }
}

.stem-about__shapes-2 img {
    display: inline-block;
}

.stem-about__feature-list ul li {
    list-style: none;
    font-size: 15px;
    font-weight: 700;
    padding-right: 35px;
    position: relative;
    margin-bottom: 20px;
}

.stem-about__feature-list ul li i {
    background-image: -webkit-linear-gradient(-120deg, rgb(43, 112, 250) 0%, rgb(132, 188, 250) 100%);
    box-shadow: rgba(16, 73, 189, 0.3) 0px 6px 10px 0px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    color: var(--stem-common-white);
    position: absolute;
    right: 0px;
}

.stem-about__feature-list ul li:hover i {
    box-shadow: rgba(16, 73, 189, 0.3) 0px 6px 10px 0px;
}

.stem-about-2__img-large {
    position: relative;
    z-index: 1;
    margin-left: 30px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__img-large {
        margin-left: 0px;
    }
}

.stem-about-2__img-sm {
    position: relative;
    z-index: 1;
    margin-left: 40px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__img-sm {
        margin-left: 0px;
        margin-top: 0px;
    }
}

.stem-about-2__shapes-1 {
    position: absolute;
    left: 0px;
    top: 80%;
    z-index: -1;
    animation: 4s ease 0s infinite alternate none running stem-float-3;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-about-2__shapes-1 img {
        width: 100%;
    }
}

.stem-about-2__shapes-2 {
    position: absolute;
    right: 30px;
    bottom: 150px;
    z-index: -1;
    animation: 6s ease 0s infinite alternate none running stem-float-2;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__shapes-2 {
        transform: translateX(0px);
    }
}

.stem-about-2__shapes-2 img {
    display: inline-block;
}

.stem-about-2__shapes-3 {
    position: absolute;
    right: 100px;
    top: 50%;
    z-index: -1;
    animation: 6s ease 0s infinite alternate none running stem-float-2;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__shapes-3 {
        display: none;
    }
}

.stem-about-2__shapes-3 img {
    display: inline-block;
}

.stem-about-2__shapes-4 {
    position: absolute;
    right: 50%;
    top: 150px;
    z-index: -1;
    animation: 6s ease 0s infinite alternate none running stem-float-2;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__shapes-4 {
        transform: translateX(0px);
    }
}

.stem-about-2__shapes-4 img {
    display: inline-block;
}

.stem-about-2__shapes-7 {
    position: absolute;
    right: 70%;
    top: 260px;
    z-index: 1;
    animation: 6s ease 0s infinite alternate none running stem-float-2;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-about-2__shapes-7 {
        right: 0px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__shapes-7 {
        transform: translateX(0px);
        right: 7%;
    }
}

.stem-about-2__shapes-7 img {
    display: inline-block;
}

.stem-about-2__shapes-8 {
    position: absolute;
    left: 0px;
    top: 260px;
    z-index: 1;
    animation: 1s ease-in-out 1s infinite alternate forwards running tpswing;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__shapes-8 {
        transform: translateX(0px);
    }
}

.stem-about-2__shapes-8 img {
    display: inline-block;
}

.stem-about-2__feature-list {
    display: inline-block;
}

.stem-about-2__feature-list ul li {
    list-style: none;
    font-size: 16px;
    font-weight: 500;
    padding-right: 35px;
    position: relative;
    margin-bottom: 30px;
    width: 50%;
    float: right;
    color: rgb(0, 15, 47);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__feature-list ul li {
        width: 100%;
    }
}

.stem-about-2__feature-list ul li i {
    display: inline-block;
    color: var(--stem-theme-primary);
    position: absolute;
    right: 0px;
    top: 2px;
    transition: all 0.3s ease-out 0s;
    font-size: 20px;
}

.stem-about-2__feature-list ul li:hover i {
    transform: rotateY(180deg);
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-2__right {
        margin-right: 0px;
    }
}

.stem-about-3__img-large {
    position: relative;
    z-index: 1;
    margin-left: 30px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-3__img-large {
        margin-left: 0px;
    }
}

.stem-about-3__img-sm {
    position: relative;
    z-index: 1;
    margin-left: 40px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-3__img-sm {
        margin-left: 0px;
        margin-top: 0px;
    }
}

.stem-about-3__shapes-1 {
    position: absolute;
    right: -40px;
    bottom: 110px;
    z-index: -1;
    animation: 4s ease 0s infinite alternate none running stem-float-3;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-about-3__shapes-1 img {
        width: 100%;
    }
}

.stem-about-3__feature-list {
    display: inline-block;
}

.stem-about-3__feature-list ul li {
    list-style: none;
    font-size: 16px;
    font-weight: 400;
    padding-right: 70px;
    position: relative;
    margin-bottom: 50px;
    width: 50%;
    float: right;
    color: rgb(1, 16, 37);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-3__feature-list ul li {
        width: 100%;
    }
}

.stem-about-3__feature-list ul li i {
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    border-radius: 50%;
    display: inline-block;
    color: var(--stem-theme-primary);
    background-color: rgba(40, 120, 235, 0.1);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
    transition: all 0.3s ease-out 0s;
    font-size: 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-3__right {
        margin-right: 0px;
    }
}

.stem-about-3__whitebox {
    background-color: var(--stem-common-white);
    position: absolute;
    bottom: 30px;
    left: 30px;
    padding: 30px 30px 30px 50px;
    border-radius: 10px;
    box-shadow: rgba(1, 16, 37, 0.06) 0px 10px 20px 0px;
}

.stem-about-3__whitebox span {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    display: inline-block;
    background-color: rgb(242, 247, 254);
    font-size: 21px;
    color: var(--stem-theme-primary);
    margin-bottom: 30px;
    border-radius: 6px;
}

.stem-about-3__whitebox h4 {
    font-size: 18px;
}

.stem-about-3__img-wrapper {
    margin-left: 50px;
    margin-right: -80px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-about-3__img-wrapper {
        margin-left: 0px;
    }
}

.stem-team__overlay {
    position: relative;
}

.stem-team__overlay::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0px;
    top: 0px;
    background-image: -webkit-linear-gradient(-90deg, rgba(0, 5, 14, 0.8) 0%, rgba(0, 5, 14, 0.54) 32%, rgba(0, 5, 14, 0) 100%);
    transition: all 0.3s ease-out 0s;
    pointer-events: none;
}

.stem-team__member:hover .stem-team__info {
    opacity: 0;
    transform: translateY(100%);
}

.stem-team__member:hover .stem-team__social {
    opacity: 1;
    transform: translateY(0px);
}

.stem-team__member:hover .stem-team__img img {
    transform: scale(1.05, 1.05);
}

.stem-team__member:hover .stem-team__overlay::after {
    opacity: 0;
}

.stem-team__img img {
    transition: all 0.3s ease-out 0s;
}

.stem-team__info {
    width: 100%;
    position: absolute;
    bottom: 10px;
    z-index: 1;
    color: var(--stem-common-white);
    transition: all 0.3s ease-out 0s;
}

.stem-team__name {
    font-size: 18px;
    color: var(--stem-common-white);
    line-height: 1;
    margin-bottom: 0px;
}

.stem-team__social {
    position: absolute;
    bottom: 0px;
    transform: translateY(100%);
    width: 100%;
    text-align: center;
    background-color: var(--stem-theme-primary);
    z-index: 2;
    padding: 15px 0px;
    opacity: 0;
    transition: all 0.3s ease-out 0s;
}

.stem-team__social span {
    margin: 0px 5px;
}

.stem-team__social span a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    line-height: 36px;
    color: var(--stem-common-white);
    border: 2px solid rgba(255, 255, 255, 0.3);
}

.stem-team__social span a:hover {
    background-color: var(--stem-common-white);
    color: var(--stem-theme-primary);
}

.stem-team-2__overlay::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0px;
    top: 0px;
    background-image: -webkit-linear-gradient(-90deg, rgb(0, 5, 14) 0%, rgba(0, 5, 14, 0.68) 32%, rgba(0, 5, 14, 0) 100%);
    transition: all 0.3s ease-out 0s;
    opacity: 0;
    border-radius: 6px;
}

.stem-team-2__member:hover .stem-team-2__social {
    opacity: 1;
    transform: translateY(0px);
}

.stem-team-2__member:hover .stem-team-2__overlay::after {
    opacity: 1;
}

.stem-team-2__img img {
    transition: all 0.3s ease-out 0s;
    border-radius: 6px;
}

.stem-team-2__info {
    padding-top: 20px;
}

.stem-team-2__name {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 0px;
}

.stem-team-2__name a:hover {
    color: var(--stem-theme-primary);
}

.stem-team-2__social {
    position: absolute;
    bottom: 20px;
    transform: translateY(100%);
    width: 100%;
    right: 25px;
    z-index: 2;
    opacity: 0;
    transition: all 0.3s ease-out 0s;
}

.stem-team-2__social span {
    margin-left: 10px;
}

.stem-team-2__social span a {
    width: 40px;
    height: 40px;
    border-radius: 4px;
    line-height: 36px;
    display: inline-block;
    text-align: center;
    color: var(--stem-common-white);
    border: 2px solid rgba(255, 255, 255, 0.1);
}

.stem-team-2__social span a:hover {
    background-color: var(--stem-common-white);
    color: var(--stem-theme-primary);
}

.stem-team-2__ratting {
    color: rgb(250, 164, 35);
}

.stem-team-2__pro {
    color: var(--stem-text-2);
    display: inline-block;
    margin-bottom: 5px;
}

.teacher__item {
    border-radius: 6px;
    padding: 30px;
}

.teacher__item:hover {
    background: var(--stem-common-white);
    box-shadow: rgba(1, 11, 60, 0.1) 0px 30px 40px 0px;
}

.teacher__item:hover .teacher__thumb img {
    transform: scale(1.1);
}

.teacher__content {
    padding-top: 25px;
}

.teacher__content span {
    font-size: 16px;
}

.teacher__title {
    display: inline-block;
    font-size: 20px;
    margin-bottom: 10px;
}

.teacher__social ul li {
    display: inline-block;
    margin: 0px 5px;
}

.teacher__social ul li a {
    display: inline-block;
    width: 36px;
    height: 36px;
    line-height: 36px;
    font-size: 13px;
    text-align: center;
    border: 2px solid red;
    border-radius: 4px;
}

.teacher__social ul li a:hover {
    background: var(--stem-theme-primary);
    color: var(--stem-common-white);
    border-color: red;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .teacher__social-2 {
        margin-bottom: 30px;
    }
}

@media (max-width: 575px) {
    .teacher__social-2 {
        margin-bottom: 30px;
    }
}

.teacher__social-2 h4 {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 0px;
}

.teacher__social-2 ul li {
    display: inline-block;
}

.teacher__social-2 ul li a {
    font-size: 14px;
    color: rgb(137, 138, 147);
    margin: 2px;
}

.teacher__social-2 ul li a:hover {
    color: var(--stem-theme-primary);
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .teacher__rating {
        margin-bottom: 30px;
    }
}

@media (max-width: 575px) {
    .teacher__rating {
        margin-bottom: 30px;
    }
}

.teacher__rating span {
    font-size: 16px;
}

.teacher__rating span i {
    padding-left: 5px;
}

.teacher__rating h5 {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 0px;
}

.teacher__rating ul li {
    display: inline-block;
}

.teacher__rating ul li a {
    font-size: 14px;
    color: var(--stem-theme-secondary);
}

.teacher__rating-inner p {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 0px;
    padding-right: 3px;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .teacher__info {
        margin-bottom: 30px;
    }
}

@media (max-width: 575px) {
    .teacher__info {
        margin-bottom: 30px;
    }
}

.teacher__info h4 {
    font-size: 40px;
    margin-bottom: 0px;
}

.teacher__info span {
    font-size: 16px;
}

.teacher__follow-btn {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    text-align: center;
    padding: 0px 25px;
    border: 2px solid rgb(238, 240, 246);
    border-radius: 4px;
    font-weight: 500;
    text-transform: capitalize;
    background: var(--stem-common-white);
}

.teacher__follow-btn:hover {
    background-color: var(--stem-theme-primary);
    color: var(--stem-common-white);
    border-color: transparent;
}

.teacher__top {
    padding-bottom: 20px;
    border-bottom: 1px solid rgb(232, 234, 240);
}

.teacher__bio {
    padding-bottom: 50px;
    padding-top: 35px;
    border-bottom: 1px solid rgb(232, 234, 240);
}

.teacher__bio h3 {
    font-size: 20px;
    margin-bottom: 15px;
}

.teacher__bio p {
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 0px;
}

.teacher__courses .section__title {
    font-size: 30px;
}

.teacher__details-thumb img {
    border-radius: 6px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .teacher__details-thumb {
        margin-bottom: 50px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .teacher__details-thumb {
        margin-bottom: 50px;
    }
}

@media (max-width: 575px) {
    .teacher__details-thumb {
        margin-bottom: 50px;
        padding-left: 0px;
    }
}

.teacher__details-shape img {
    position: absolute;
    z-index: -1;
    width: auto;
}

.teacher__details-shape img.teacher-details-shape-1 {
    left: 0px;
    bottom: 70px;
}

.teacher__details-shape img.teacher-details-shape-2 {
    right: -27px;
    top: 55px;
}

.services__item {
    padding: 45px 45px 40px;
    position: relative;
    z-index: 1;
}

@media (max-width: 575px) {
    .services__item {
        padding-right: 35px;
        padding-left: 35px;
    }
}

.services__icon {
    margin-bottom: 20px;
}

.services__icon i {
    font-size: 60px;
    color: var(--stem-theme-primary);
}

.services__counter {
    counter-reset: count 0;
}

.services__counter-2 {
    counter-reset: count2 0;
}

.services__title {
    font-size: 26px;
    color: var(--stem-common-black);
    text-transform: uppercase;
    margin-bottom: 15px;
}

.services__title a:hover {
    color: var(--stem-theme-primary);
}

.services__no span {
    display: inline-block;
    font-size: 14px;
    color: var(--stem-text-1);
    position: relative;
    padding-left: 20px;
    text-transform: uppercase;
}

.services__no span::after {
    position: absolute;
    counter-increment: count 1;
    content: "0" counter(count);
    left: 0px;
    top: 48%;
    transform: translateY(-50%);
    color: var(--stem-text-1);
}

.services__no-text {
    position: relative;
}

.services__no-text::before {
    position: absolute;
    counter-increment: count2 1;
    content: "0" counter(count2);
    left: -45px;
    top: 25px;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    -webkit-text-stroke: 1px var(--stem-border-1);
    font-size: 170px;
    z-index: -1;
    font-weight: 700;
    color: var(--stem-common-white) !important;
}

.services__content {
    position: relative;
    border-top: 0px;
    padding: 30px 0px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .services__content {
        padding-right: 15px;
        padding-left: 15px;
    }
}

.services__box-item {
    padding: 40px 30px;
}

.services__box-title {
    font-size: 26px;
    color: var(--stem-common-black);
    text-transform: uppercase;
    margin-bottom: 15px;
}

.services__box-title a:hover {
    color: var(--stem-theme-primary);
}

.services__box-icon {
    margin-bottom: 20px;
}

.services__box-icon i {
    font-size: 60px;
    color: var(--stem-theme-primary);
}

.services__box-content p {
    font-size: 16px;
    color: var(--stem-text-1);
}

.services__grid-tag {
    position: absolute;
    top: 0px;
    left: 20px;
}

.services__grid-tag span {
    color: var(--stem-common-white);
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
    padding: 2px 18px 0px;
    background-color: var(--stem-theme-primary);
    text-transform: uppercase;
}

.services__grid-tag span:hover {
    color: var(--stem-common-white);
    background-color: var(--stem-common-black);
}

.services__grid-title {
    font-size: 26px;
    color: var(--stem-common-black);
    text-transform: uppercase;
    margin-bottom: 15px;
}

.services__grid-title a:hover {
    color: var(--stem-theme-primary);
}

.services__grid-content {
    padding: 30px 30px 40px;
    border-top: none;
}

.services__grid-content p {
    font-size: 16px;
    color: var(--stem-text-1);
}

.services__square-item:hover .services__thumb-3 img {
    transform: scale(1.1);
}

.services__square-title {
    font-size: 24px;
    color: var(--stem-common-black);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .services__square-title {
        font-size: 20px;
    }
}

.services__square-title a:hover {
    color: var(--stem-theme-primary);
}

.services__square-icon {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    width: 120px;
    height: 120px;
    text-align: center;
    line-height: 135px;
    background-color: var(--stem-common-white);
    border-radius: 50%;
    z-index: 1;
}

.services__square-icon i {
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 50px;
}

.services__square-thumb {
    z-index: 1;
}

.services__square-thumb::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: var(--stem-common-black);
    opacity: 0.5;
}

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

.services__details-thumb {
    margin-bottom: 50px;
}

.services__details-title {
    font-size: 40px;
    text-transform: uppercase;
    margin-bottom: 23px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .services__details-title {
        font-size: 35px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .services__details-title {
        font-size: 30px;
    }
}

.services__details-content p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 15px;
}

.services__details-question h4 {
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.services__details-question ul li {
    list-style: none;
    line-height: 1;
}

.services__details-question ul li p {
    font-size: 16px;
    line-height: 1.6;
}

.services__details-question ul li p span {
    color: var(--stem-common-black);
    font-weight: 700;
}

.services__details-process h4 {
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 22px;
}

.services__details-contact {
    padding: 50px 60px 60px;
    border: 1px solid rgb(241, 241, 241);
    box-shadow: rgba(0, 0, 0, 0.04) 0px 16px 32px 0px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .services__details-contact {
        padding-right: 15px;
        padding-left: 15px;
    }
}

.services__details-contact h4 {
    font-size: 40px;
    text-transform: uppercase;
    margin-bottom: 30px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .services__details-contact h4 {
        font-size: 30px;
    }
}

.services__details-contact .contact__input input,
.services__details-contact .contact__input textarea {
    background-color: var(--stem-grey-4);
    border-color: var(--stem-grey-4);
}

.services__details-contact .contact__input input:focus,
.services__details-contact .contact__input textarea:focus {
    border-color: var(--stem-theme-primary);
}

.services__details-contact .contact__input input::-webkit-input-placeholder,
.services__details-contact .contact__input textarea::-webkit-input-placeholder {
    color: var(--stem-text-12);
}

.services__details-contact .contact__input i {
    color: var(--stem-common-black);
}

.services__widget {
    padding: 33px 40px 30px;
    border: 1px solid rgb(243, 243, 243);
}

.services__widget-title {
    font-size: 20px;
    text-transform: uppercase;
    padding-left: 70px;
    position: relative;
    margin-bottom: 17px;
}

.services__widget-title::after {
    position: absolute;
    content: "";
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    width: 70px;
    height: 1px;
    background-color: var(--stem-theme-primary);
}

.services__widget ul li {
    list-style: none;
    margin-bottom: 2px;
}

.services__widget ul li:last-child {
    margin-bottom: 0px;
}

.services__widget ul li a {
    font-size: 16px;
    color: var(--stem-text-1);
    padding-right: 30px;
    position: relative;
}

.services__widget ul li a::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 1px;
    background-color: var(--stem-common-black);
}

.services__widget ul li:hover>a {
    color: var(--stem-theme-primary);
    padding-right: 40px;
}

.services__widget ul li:hover>a::after {
    background-color: var(--stem-theme-primary);
    width: 22px;
}

.services-widget-banner {
    position: relative;
    background-color: var(--stem-grey-4);
    z-index: 1;
    padding: 50px 25px 35px;
}

.services-widget-banner .services-banner-shape-1 {
    position: absolute;
    bottom: 0px;
    right: 0px;
    width: 100%;
    z-index: -1;
}

.services-widget-banner .services-banner-content {
    text-align: center;
}

.services-widget-banner .services-banner-content span {
    font-size: 14px;
    display: inline-block;
    margin-bottom: 5px;
}

.services-widget-banner .services-banner-content h5 {
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.services-widget-banner .services-banner-content p {
    font-size: 30px;
    color: var(--stem-theme-primary);
    font-weight: 700;
    position: relative;
    display: inline-block;
}

.services-widget-banner .services-banner-content p::after {
    position: absolute;
    content: "";
    right: 0px;
    bottom: -3px;
    width: 100%;
    height: 2px;
    background-color: var(--stem-theme-primary);
}

.portfolio__item {
    min-height: 416px;
    position: relative;
    z-index: 1;
}

.portfolio__item::after {
    position: absolute;
    content: "";
    top: 0px;
    right: 0px;
    left: auto;
    width: 100%;
    height: 100%;
    transform: translate(0%, 0%);
    background-color: var(--stem-common-black);
    opacity: 0;
}

.portfolio__item:hover::after {
    opacity: 0.9;
}

.portfolio__item:hover .portfolio__content {
    bottom: 45px;
    opacity: 1;
    visibility: visible;
}

@media (max-width: 575px) {
    .portfolio__item:hover .portfolio__content {
        bottom: 20px;
    }
}

.portfolio__item:hover .portfolio__view {
    top: 50px;
    opacity: 1;
    visibility: visible;
}

@media (max-width: 575px) {
    .portfolio__item:hover .portfolio__view {
        top: 20px;
    }
}

.portfolio__title {
    font-size: 24px;
    color: var(--stem-common-white);
    text-transform: uppercase;
    margin-bottom: 0px;
}

.portfolio__title a:hover {
    color: var(--stem-theme-primary);
}

.portfolio__content {
    position: absolute;
    bottom: 0px;
    right: 50px;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
}

@media (max-width: 575px) {
    .portfolio__content {
        right: 20px;
    }
}

.portfolio__tag {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: var(--stem-common-white);
    text-transform: uppercase;
    margin-bottom: 5px;
}

.portfolio__tag-3 {
    position: absolute;
    bottom: 0px;
    right: 40px;
}

.portfolio__tag-3 a {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--stem-common-black);
    background-color: var(--stem-theme-primary);
    padding: 0px 7px;
}

.portfolio__view {
    position: absolute;
    top: 0px;
    right: 50px;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
}

.portfolio__view .portfolio-view-btn {
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
    font-size: 16px;
}

.portfolio__view .portfolio-view-btn:hover {
    color: var(--stem-theme-primary);
    background-color: var(--stem-common-white);
}

@media (max-width: 575px) {
    .portfolio__view {
        right: 20px;
    }
}

.portfolio__thumb {
    min-height: 416px;
}

.portfolio__thumb-bg {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.portfolio__box-item.portfolio-item-active .portfolio__box-btn {
    transform: perspective(400px) rotateX(0deg);
    visibility: visible;
    opacity: 1;
}

.portfolio__box-item:hover .portfolio__box-btn {
    transform: perspective(400px) rotateX(0deg);
    visibility: visible;
    opacity: 1;
}

.portfolio__box-title {
    font-size: 24px;
    color: var(--stem-common-black);
    text-transform: uppercase;
    margin-bottom: 0px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .portfolio__box-title {
        font-size: 18px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .portfolio__box-title {
        font-size: 20px;
    }
}

@media (max-width: 575px) {
    .portfolio__box-title {
        font-size: 20px;
    }
}

.portfolio__box-title a:hover {
    color: var(--stem-theme-primary);
}

.portfolio__box-content {
    border: 1px solid var(--stem-border-1);
    padding: 32px 40px;
}

@media (max-width: 575px) {
    .portfolio__box-content {
        padding-right: 20px;
        padding-left: 20px;
    }
}

.portfolio__box-tag {
    position: absolute;
    bottom: 0px;
    right: 40px;
}

.portfolio__box-tag a {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--stem-common-black);
    background-color: var(--stem-theme-primary);
    padding: 0px 7px;
}

.portfolio__box-btn {
    transform: perspective(400px) rotateX(-60deg);
    transform-origin: center top;
    visibility: hidden;
    opacity: 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .portfolio__details-wrapper {
        padding-left: 0px;
    }
}

.portfolio__details-text h3 {
    font-size: 30px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.portfolio__details-text p {
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 30px;
    padding-left: 10px;
}

.portfolio__details-text-highlight {
    color: rgb(51, 51, 51);
}

.portfolio__details-msg {
    font-size: 20px;
    text-transform: uppercase;
    line-height: 1.5;
    margin-bottom: 55px;
}

.portfolio__details-goal-item h4 {
    font-size: 20px;
    text-transform: uppercase;
    border-bottom: 1px solid var(--stem-border-1);
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.portfolio__details-goal-item h4 span {
    color: var(--stem-theme-primary);
}

.portfolio__details-goal-item p {
    font-size: 16px;
    padding-left: 20px;
}

.portfolio__details-post-item {
    padding: 10px;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .portfolio__details-post-item {
        margin-bottom: 20px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .portfolio__details-post-item-right .portfolio__details-post-thumb {
        margin-left: 20px;
        margin-right: 0px;
    }
}

.portfolio__details-post-thumb img {
    width: 80px;
    height: 80px;
}

.portfolio__details-post-content span {
    font-size: 14px;
    display: inline-block;
    font-weight: 700;
    color: var(--stem-theme-primary);
    text-transform: uppercase;
    margin-bottom: 5px;
}

.portfolio__details-post-content h4 {
    font-size: 24px;
    text-transform: uppercase;
    margin-bottom: 0px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .portfolio__details-post-content h4 {
        font-size: 20px;
    }
}

.portfolio__details-post-content h4 a:hover {
    color: var(--stem-theme-primary);
}

.portfolio__details-info {
    padding: 0px 40px 30px;
}

.portfolio__details-info ul li {
    list-style: none;
    border-bottom: 1px solid rgb(242, 242, 242);
    margin-bottom: 13px;
    padding-bottom: 10px;
}

.portfolio__details-info ul li:last-child {
    margin-bottom: 0px;
    padding-bottom: 0px;
    border-bottom: none;
}

.portfolio__details-info ul li p {
    font-size: 14px;
    color: var(--stem-text-1);
    margin-bottom: 0px;
}

.portfolio__details-info ul li p span {
    color: var(--stem-common-black);
    font-weight: 700;
}

.portfolio__contact-title {
    font-size: 18px;
    text-transform: uppercase;
    margin-bottom: 25px;
}

.portfolio__contact .contact__input input,
.portfolio__contact .contact__input textarea {
    border-color: rgb(242, 242, 242);
    height: 60px;
    line-height: 60px;
    padding-right: 50px;
    padding-left: 15px;
}

.portfolio__contact .contact__input input:focus,
.portfolio__contact .contact__input textarea:focus {
    border-color: var(--stem-theme-primary);
}

.portfolio__contact .contact__input textarea {
    height: 140px;
    line-height: 1.3;
}

.portfolio__contact .contact__input .nice-select {
    height: 60px;
    line-height: 60px;
    border: 1px solid rgb(242, 242, 242);
    background-color: transparent;
    padding-right: 50px;
}

.portfolio__contact .contact__input i {
    top: 23px;
    right: 23px;
    left: auto;
    color: var(--stem-common-black);
}

.portfolio__widget {
    box-shadow: rgba(0, 0, 0, 0.04) 0px 16px 32px 0px;
    border: 1px solid rgb(242, 242, 242);
}

.portfolio__widget-title {
    font-size: 18px;
    text-transform: uppercase;
    margin-bottom: 20px;
    padding: 35px 40px 0px;
}

.stem-courses__item {
    background-color: var(--stem-common-white);
    transition: all 0.3s ease-out 0s;
    border-radius: 10px;
}

.stem-courses__item.has-radius {
    border-radius: 4px;
}

.stem-courses__item:hover {
    box-shadow: rgba(4, 5, 60, 0.1) 0px 30px 50px 0px;
}

.stem-courses__item:hover .stem-courses__content {
    box-shadow: none;
}

.stem-courses__item:hover .stem-courses__thumb img {
    /* transform: scale(1.05, 1.05) rotate(-2deg); */
}

.stem-courses__thumb img {
    transition: all 0.3s ease-out 0s;
    border-radius: 10px 10px 0px 0px;
    height: 250px;
    object-fit: cover;
}

.stem-courses__cat {
    position: absolute;
    top: 20px;
    right: 20px;
    border-radius: 4px;
}

.stem-courses__cat a {
    padding: 0px 15px;
    color: var(--stem-common-white);
    display: inline-block;
}

.stem-courses__cat.cat-color-1 {
    background-color: #73d17e;
}

.stem-courses__cat.cat-color-2 {
    background-color: rgb(190, 79, 253);
}

.stem-courses__cat.cat-color-3 {
    background-color: #ee9c2d;
}

.stem-courses__cat.cat-color-4 {
    background-color: #14c5ce;
}

.stem-courses__cat.cat-color-5 {
    background-color: rgb(48, 168, 32);
}

.stem-courses__cat.cat-color-6 {
    background-color: rgb(58, 83, 164);
}

.stem-courses__content {
    padding-top: 30px;
    box-shadow: rgba(34, 22, 56, 0.1) 0px 1px 2px 0px;
    padding-bottom: 10px;
    border-radius: 10px;
}

.stem-courses__title {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    margin-bottom: 0;
    -webkit-line-clamp: 2;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 10px;
}

.stem-courses__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-courses__meta {
    margin-bottom: 10px;
    padding-left: 30px;
    padding-right: 30px;
}

.stem-courses__meta span {
    margin-left: 20px;
    display: inline-flex;
    align-items: center;
}

.stem-courses__meta span.stem-ratting i {
    color: var(--stem-theme-secondary);
}

.stem-courses__meta span i {
    margin-left: 5px;
}

.stem-courses__avata {
    margin-bottom: 20px;
    position: relative;
    display: flex;
    align-items: center;
}

.stem-courses__avata img {
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
    border-radius: 50%;
    margin-left: 10px;
}

.stem-courses__avata a:hover {
    color: var(--stem-theme-primary);
}

.stem-courses__price {
    padding: 15px 30px;
    border-top: 1px solid var(--stem-border-2);
}

.stem-courses__time {
    color: rgb(51, 63, 89);
    font-weight: 400;
}

.stem-courses__time span i {
    margin-left: 10px;
}

.stem-courses__value {
    font-size: 18px;
    font-weight: 700;
    color: rgb(2, 12, 42);
}

.stem-courses__buttons .nav-link {
    background-color: var(--stem-common-white);
    border-radius: 0px;
    padding: 5px 20px;
    color: inherit;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-courses__buttons .nav-link {
        margin-bottom: 30px;
    }
}

.stem-courses__buttons .nav-link.active {
    background-color: var(--stem-theme-primary);
    color: var(--stem-common-white);
}

.stem-courses__buttons ul li:not(:last-child) {
    margin-left: 10px;
}

.stem-courses-2__item {
    border-radius: 6px;
    overflow: hidden;
}

.stem-courses-2__item:hover .stem-courses-2__thumb img {
    transform: scale(1.05, 1.05) rotate(-2deg);
}

.stem-courses-2__thumb img {
    transition: all 0.3s ease-out 0s;
    height: 180px;
    object-fit: cover;
}

.stem-courses-2__cat a {
    padding: 0px 20px;
    border-radius: 4px;
    color: var(--stem-common-white);
    display: inline-block;
    background-color: var(--stem-theme-primary);
}

.stem-courses-2__cat.cat-color-1 a {
    background-color: rgb(233 244 255);
    color: rgb(10 78 144);
}

.stem-courses-2__cat.cat-color-2 a {
    background-color: rgba(50, 112, 252, 0.08);
    color: var(--stem-theme-primary);
}

.stem-courses-2__cat.cat-color-3 a {
    background-color: rgba(48, 168, 32, 0.08);
    color: rgb(48, 168, 32);
}

.stem-courses-2__content {
    padding-top: 15px;
    box-shadow: rgba(34, 22, 56, 0.1) 0px 1px 2px 0px;
    border-radius: 0 0 10px 10px;
    padding: 1.5rem;
}

.stem-courses-2__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 25px;
    padding-left: 25px;
    padding-right: 25px;
}

.stem-courses-2__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-courses-2__price {
    font-size: 18px;
    font-weight: 700;
}

.stem-courses-2__meta {
    margin-bottom: 15px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-courses-2__sub {
        margin-bottom: 10px;
    }
}

.stem-courses-2__sub i {
    margin-left: 8px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-courses-2__review {
        display: none;
    }
}

.stem-courses-2__bottom {
    padding: 15px 25px;
    border-top: 1px solid var(--stem-border-2);
}

.stem-courses-2__review span i {
    color: var(--stem-theme-secondary);
}

.course__tab-inner {
    padding: 15px 20px;
    border-radius: 4px;
}

.course__tab-btn .nav-tabs {
    border: none;
}

.course__tab-btn .nav-tabs .nav-item .nav-link {
    border-radius: 4px;
    border: none;
    width: 30px;
    height: 30px;
    background: transparent;
    padding: 0px;
    margin-left: 6px;
}

.course__tab-btn .nav-tabs .nav-item .nav-link svg {
    width: 14px;
    height: 14px !important;
}

.course__tab-btn .nav-tabs .nav-item .nav-link svg.grid .st0 {
    fill: none;
    stroke: var(--stem-common-black);
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.course__tab-btn .nav-tabs .nav-item .nav-link.active {
    background: var(--stem-theme-primary);
}

.course__tab-btn .nav-tabs .nav-item .nav-link.active svg.grid .st0 {
    fill: none;
    stroke: var(--stem-common-white);
}

.course__tab-btn .nav-tabs .nav-item .nav-link.active svg .st0 {
    fill: var(--stem-common-white);
}

.course__tab-2 .nav-tabs {
    border: none;
    border-radius: 4px;
    overflow: hidden;
}

.course__tab-2 .nav-tabs .nav-item {
    width: 25%;
}

.course__tab-2 .nav-tabs .nav-item:not(:last-child) .nav-link {
    border-left: 1px solid var(--stem-common-white);
}

.course__tab-2 .nav-tabs .nav-item .nav-link {
    background: rgb(228, 228, 228);
    font-size: 16px;
    font-weight: 600;
    color: var(--stem-common-color);
    width: 100%;
    height: 54px;
    line-height: 54px;
    padding: 0px;
    text-align: center;
    border-radius: 0px;
}

.course__tab-2 .nav-tabs .nav-item .nav-link i {
    padding-left: 5px;
}

.course__tab-2 .nav-tabs .nav-item .nav-link.active {
    background: var(--stem-theme-primary);
    color: var(--stem-common-white);
}

@media (max-width: 575px) {
    .course__tab-2 .nav-tabs .nav-item .nav-link span {
        display: none;
    }
}

.stem-courses-4__item {
    background-color: var(--stem-common-white);
    box-shadow: rgba(1, 11, 60, 0.06) 0px 30px 40px 0px;
}

.stem-courses-4__thumb {
    height: 100%;
}

.stem-courses-4__thumb img {
    transition: all 0.3s ease-out 0s;
    height: 100%;
    object-fit: cover;
}

.stem-courses-4__cat a {
    padding: 2px 20px;
    color: var(--stem-common-white);
    display: inline-block;
    background-color: var(--stem-theme-primary);
}

.stem-courses-4__cat.cat-color-1 a {
    background-color: rgba(177, 40, 255, 0.08);
    color: rgb(177, 40, 255);
}

.stem-courses-4__cat.cat-color-2 a {
    background-color: rgba(50, 112, 252, 0.08);
    color: var(--stem-theme-primary);
}

.stem-courses-4__cat.cat-color-3 a {
    background-color: rgba(48, 168, 32, 0.08);
    color: rgb(48, 168, 32);
}

.stem-courses-4__content {
    padding: 30px 80px 60px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-courses-4__content {
        padding: 40px 35px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-courses-4__content {
        padding: 40px 35px;
    }
}

@media (max-width: 575px) {
    .stem-courses-4__content {
        padding: 20px 15px;
    }
}

.stem-courses-4__title {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 25px;
}

@media (max-width: 575px) {
    .stem-courses-4__title {
        font-size: 30px;
    }
}

.stem-courses-4__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-courses-4__price {
    font-size: 18px;
    font-weight: 700;
    padding: 20px 80px;
    border-top: 1px solid var(--stem-border-2);
}

@media (max-width: 575px) {
    .stem-courses-4__price {
        padding-right: 20px;
        padding-left: 20px;
    }
}

.stem-courses-4__meta {
    margin-bottom: 15px;
}

.stem-courses-4__meta i {
    margin-left: 5px;
}

.stem-courses-4__meta span {
    margin-left: 20px;
    display: inline-flex;
    align-items: center;
}

@media (max-width: 575px) {
    .stem-courses-4__meta span {
        margin-left: 15px;
    }
}

.stem-courses-4__meta span.stem-ratting i {
    color: var(--stem-theme-secondary);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-courses-4__sub {
        margin-bottom: 10px;
    }
}

.stem-courses-4__sub i {
    margin-left: 8px;
}

.stem-courses-4__bottom {
    padding: 20px 25px;
    border-top: 1px solid var(--stem-border-2);
}

.stem-courses-4__avata img {
    margin-left: 10px;
    border-radius: 50%;
}

.stem-courses-4__review span i {
    color: var(--stem-theme-secondary);
}

.course__description-list h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 15px;
}

.course__description-list ul li {
    font-size: 16px;
    color: var(--stem-common-black);
    list-style: none;
}

.course__description-list ul li:not(:last-child) {
    margin-bottom: 5px;
}

.course__description-list ul li i {
    display: inline-block;
    width: 18px;
    height: 18px;
    text-align: center;
    line-height: 18px;
    font-size: 15px;
    font-weight: 500;
    border-radius: 50%;
    margin-left: 10px;
}

.course__tag-2 {
    border-top: 1px solid rgb(228, 230, 239);
    padding-top: 25px;
}

.course__tag-2 i {
    margin-left: 10px;
}

.course__tag-2 span {
    font-size: 16px;
    color: var(--stem-text-3);
    margin-left: 7px;
}

.course__tag-2 a {
    font-size: 16px;
    font-weight: 500;
    margin-right: 5px;
}

.course__tag-2 a:hover {
    color: var(--stem-theme-primary);
}

.course__curriculum .accordion-item {
    padding: 0px;
}

.course__curriculum .accordion-item .accordion-button {
    outline: none;
    border-radius: 4px 4px 0px 0px;
    background: var(--stem-grey-3);
    font-size: 20px;
    font-weight: 700;
    color: var(--stem-common-black);
    padding-top: 18px;
    padding-right: 30px;
    padding-left: 30px;
}

.course__curriculum .accordion-item .accordion-button.collapsed {
    border-radius: 4px;
}

.course__curriculum .accordion-item .accordion-button:focus {
    box-shadow: none;
}

.course__curriculum .accordion-item .accordion-body {
    padding: 0px;
}

.course__curriculum-content {
    padding: 13px 30px;
    border-bottom: 1px solid rgb(237, 238, 242);
    transition: all 0.3s ease-out 0s;
}

.course__curriculum-info svg {
    width: 16px;
    height: 16px;
    margin-left: 7px;
    color: var(--stem-grey-3);
}

.course__curriculum-info svg .st0 {
    fill: none;
    stroke: rgb(109, 110, 117);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.course__curriculum-info h3 {
    display: inline-block;
    font-size: 16px;
    color: rgb(83, 84, 91);
    font-weight: 400;
    margin-bottom: 0px;
}

.course__curriculum-meta span.time {
    font-size: 16px;
    color: rgb(83, 84, 91);
}

.course__curriculum-meta span.question {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    color: rgb(255, 255, 255);
    padding: 0px 11px;
    border-radius: 4px;
    background: var(--stem-theme-primary);
    margin-right: 20px;
}

.course__review-rating-info {
    padding: 51px 0px;
    border-left: 3px solid rgb(255, 255, 255);
    border-radius: 0px 4px 4px 0px;
}

.course__review-rating-info h5 {
    font-size: 100px;
    line-height: 70px;
    font-weight: 500;
    margin-bottom: 8px;
}

.course__review-rating-info ul li a {
    color: var(--stem-theme-secondary);
}

.course__review-rating-info ul li {
    display: inline-block;
}

.course__review-details {
    padding: 35px 35px 10px 65px;
    border-radius: 4px 0px 0px 4px;
}

.course__review-progress {
    width: calc((100% - 60px) - 60px);
    height: 4px;
    overflow: hidden;
    background: rgb(216, 218, 227);
    border-radius: 2px;
}

.course__review-text span {
    font-size: 16px;
    color: rgb(83, 84, 91);
}

.course__review-progress .single-progress {
    background: rgb(43, 78, 255);
    height: 100%;
}

.course__review-text span {
    font-size: 16px;
    color: rgb(83, 84, 91);
}

.course__review-percent h5 {
    font-size: 16px;
    font-weight: 400;
    color: rgb(83, 84, 91);
    margin-bottom: 0px;
}

.course__review-item {
    margin-bottom: 5px;
}

.course__comment li {
    list-style: none;
}

.course__comment-box {
    background: rgb(243, 244, 248);
    border-radius: 4px;
    padding: 25px 30px 25px 40px;
    margin-bottom: 10px;
}

.course__comment-info h4 {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0px;
}

.course__comment-rating ul li {
    display: inline-block;
}

.course__comment-rating ul li a {
    font-size: 12px;
    color: var(--stem-theme-secondary);
}

.course__rating-inner i {
    color: var(--stem-theme-secondary);
}

.course__comment-info {
    margin-bottom: 15px;
}

.course__comment-thumb img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

.page__title-pre {
    background-color: var(--stem-theme-primary);
    color: var(--stem-common-white);
    padding: 5px 10px;
    margin-bottom: 10px;
    display: inline-block;
    border-radius: 0.25rem;
}

.course__form h3 {
    font-size: 26px;
    margin-bottom: 40px;
}

.course__form-input input,
.course__form-input textarea {
    width: 100%;
    height: 56px;
    line-height: 54px;
    border: 2px solid var(--stem-grey-2);
    outline: none;
    background: var(--stem-grey-1);
    padding: 0px 22px;
    font-size: 15px;
    border-radius: 4px;
    margin-bottom: 20px;
}

.course__form-input input:focus,
.course__form-input textarea:focus {
    border-color: var(--stem-theme-primary);
    background: var(--stem-common-white);
}

.course__form-input input::placeholder,
.course__form-input textarea::placeholder {
    color: grey;
}

.course__form-input textarea {
    height: 150px;
    resize: none;
    padding: 20px;
    line-height: 1.1;
}

.course__form-rating {
    margin-bottom: 10px;
}

.course__form-rating span {
    color: var(--stem-common-black);
}

.course__form-rating ul {
    display: inline-block;
}

.course__form-rating ul li {
    display: inline-block;
}

.course__form-rating ul li a {
    font-size: 14px;
    color: var(--stem-theme-secondary);
}

.course__form-rating ul li a.no-rating {
    color: rgb(184, 185, 191);
}

.course__form-btn button {
    text-transform: capitalize;
}

.course__member-item {
    padding: 25px 30px;
    background: var(--stem-grey-1);
    border-radius: 4px;
    margin-bottom: 10px;
}

.course__member-thumb {
    position: relative;
}

.course__member-thumb::after {
    position: absolute;
    content: "";
    left: 0px;
    top: -5px;
    width: 1px;
    height: 80px;
    background: rgb(221, 222, 228);
}

@media (max-width: 575px) {
    .course__member-thumb::after {
        display: none;
    }
}

.course__member-thumb img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    object-fit: cover;
}

.course__member-name h5 {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0px;
}

.course__member-name span {
    font-size: 15px;
    color: var(--stem-text-3);
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .course__member-info {
        padding-right: 0px;
    }
}

@media (max-width: 575px) {
    .course__member-info {
        margin-top: 25px;
        padding-right: 0px;
    }
}

.course__member-info h5 {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0px;
}

.course__member-info span {
    font-size: 15px;
    color: var(--stem-text-3);
}

.course__instructor h3 {
    font-size: 26px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .course__instructor-item {
        margin-left: 40px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .course__instructor-item {
        margin-top: 25px;
        margin-left: 0px;
    }
}

@media (max-width: 575px) {
    .course__instructor-item {
        margin-top: 25px;
        margin-left: 0px;
    }
}

.course__instructor-thumb img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

.course__instructor-content h3 {
    font-size: 16px;
    margin-bottom: 0px;
    line-height: 1;
}

.course__instructor-content p {
    font-size: 14px;
    margin-bottom: 0px;
}

.course__share h3 {
    font-size: 20px;
}

.course__share ul li {
    display: inline-block;
    margin-left: 10px;
}

.course__share ul li a {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 44px;
    text-align: center;
    font-size: 13px;
    color: var(--stem-common-black);
    background: var(--stem-common-white);
    border-radius: 4px;
}

.course__share ul li a.fb {
    color: rgb(40, 93, 161);
    background: rgba(40, 93, 161, 0.1);
}

.course__share ul li a.fb:hover {
    color: var(--stem-common-white);
    background: rgb(40, 93, 161);
}

.course__share ul li a.tw {
    color: rgb(3, 169, 244);
    background: rgba(3, 169, 244, 0.1);
}

.course__share ul li a.tw:hover {
    color: var(--stem-common-white);
    background: rgb(3, 169, 244);
}

.course__share ul li a.pin {
    color: rgb(216, 22, 63);
    background: rgba(216, 22, 63, 0.1);
}

.course__share ul li a.pin:hover {
    color: var(--stem-common-white);
    background: rgb(216, 22, 63);
}

.course__video-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
}

.course__video-thumb::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    /* background: rgba(0, 3, 32, 0.5); */
}

.course__video-play {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    z-index: 1;
}

.course__video-price h5 {
    font-size: 26px;
    display: inline-block;
    margin-bottom: 0px;
}

.course__video-price h5 span {
    font-size: 20px;
    font-weight: 600;
}

.course__video-price h5.old-price {
    text-decoration: line-through;
    color: var(--stem-grey-3);
    font-weight: 500;
    font-size: 16px;
    padding-right: 10px;
}

.course__video-discount span {
    display: inline-block;
    font-size: 14px;
    height: 24px;
    line-height: 24px;
    padding: 0px 12px;
    color: var(--stem-theme-primary);
    background: rgba(255, 0, 0, 0.08);
    font-weight: 600;
    border-radius: 4px;
}

.course__video-content ul li:not(:last-child) {
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgb(238, 240, 246);
}

.course__video-icon svg {
    width: 16px;
    height: 20px;
    margin-left: 12px;
}

.course__video-icon svg .st0 {
    fill: none;
    stroke: var(--stem-theme-primary);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 2.6667;
}

.course__video-info h5 {
    margin-bottom: 0px;
    font-weight: 400;
    color: var(--stem-text-3);
    font-size: 15px;
    line-height: 1;
}

.course__video-info h5 span {
    font-weight: 500;
    color: var(--stem-common-black);
    padding-left: 5px;
}

.course__payment h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}

.course__enroll-btn i {
    padding-right: 4px;
}

.course__sm-thumb img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
}

.course__sm-content h5 {
    font-size: 16px;
    margin-bottom: 0px;
    font-weight: 600;
    line-height: 1.5;
}

.course__sm-content h5 a:hover {
    color: var(--stem-theme-primary);
}

.course__sm-price span {
    font-size: 14px;
    color: var(--stem-text-3);
    font-weight: 600;
}

.course__sm-rating ul li {
    display: inline-block;
}

.course__sm-rating ul li a {
    font-size: 10px;
    color: var(--stem-theme-secondary);
    line-height: 1;
}

.course__instructor h3 {
    font-size: 26px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .course__instructor-item {
        margin-left: 40px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .course__instructor-item {
        margin-top: 25px;
        margin-left: 0px;
    }
}

@media (max-width: 575px) {
    .course__instructor-item {
        margin-top: 25px;
        margin-left: 0px;
    }
}

.course__instructor-thumb img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

.course__instructor-content h3 {
    font-size: 16px;
    margin-bottom: 0px;
    line-height: 1;
}

.course__instructor-content p {
    font-size: 14px;
    margin-bottom: 0px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .course__tab-wrapper {
        margin-bottom: 30px;
    }
}

.course__sidebar-widget-2 {
    padding: 30px;
    box-shadow: rgba(1, 11, 60, 0.1) 0px 30px 50px 0px;
    border-radius: 4px;
}

@media (max-width: 575px) {
    .course__sidebar-widget-2 {
        padding: 30px 15px;
    }
}

.course__sidebar-widget-2 ul li {
    list-style: none;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .course__sidebar {
        padding-right: 0px;
    }
}

.stem-event__item {
    box-shadow: rgba(4, 5, 60, 0.1) 0px 30px 50px 0px;
}

.stem-event__item:hover .stem-event__thumb img {
    transform: scale(1.05, 1.05) rotate(-2deg);
}

.stem-event__thumb img {
    transition: all 0.3s ease-out 0s;
}

.stem-event__content {
    padding: 25px 30px 40px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 1200px) and (max-width: 1399px) {
    .stem-event__content {
        padding: 25px 20px;
    }
}

.stem-event__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 25px;
}

.stem-event__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-event__meta span.event-date {
    margin-left: 8px;
}

.stem-event__meta span.event-date i {
    color: var(--stem-theme-primary);
    margin-left: 2px;
}

.stem-event__meta span.event-cat i {
    color: rgb(10, 204, 134);
    margin-left: 2px;
}

.stem-event-2__item {
    padding: 15px 40px;
    box-shadow: rgba(4, 5, 60, 0.1) 0px 30px 50px 0px;
    border-radius: 6px;
    background-color: var(--stem-common-white);
}

.stem-event-2__item:hover .stem-event-2__thumb img {
    transform: scale(1.05, 1.05) rotate(-2deg);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-2__item {
        padding: 30px 25px;
    }
}

.stem-event-2__item .stem-border-btn span {
    border-color: rgba(50, 112, 252, 0.08);
    color: rgb(2, 12, 42);
    padding: 4px 25px;
}

.stem-event-2__item .stem-border-btn:hover span {
    color: var(--stem-common-white);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-event-2__content {
        margin-bottom: 30px;
    }
}

.stem-event-2__title {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 15px;
}

.stem-event-2__title a:hover {
    color: var(--stem-theme-primary);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-event-2__title {
        font-size: 22px;
    }
}

.stem-event-2__info span {
    color: var(--stem-text-3);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-2__info {
        margin-bottom: 30px;
    }
}

.stem-event-2__date span {
    border-left: 1px solid rgba(0, 15, 47, 0.1);
    display: inline-block;
    padding-left: 30px;
    border-top-color: rgba(0, 15, 47, 0.1);
    border-right-color: rgba(0, 15, 47, 0.1);
    border-bottom-color: rgba(0, 15, 47, 0.1);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-2__date span {
        border: 0px;
    }
}

.stem-event-2__date span b {
    display: block;
    font-size: 40px;
    line-height: 1.2;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-2__date {
        margin-bottom: 30px;
    }
}

.stem-event-2__meta img {
    margin-left: 10px;
    margin-bottom: 5px;
}

.stem-event-2__time {
    border-radius: 8px;
    overflow: hidden;
    display: inline-block;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-2__time {
        margin-bottom: 20px;
    }
}

.stem-event-2__time span {
    background-color: rgba(50, 112, 252, 0.06);
    padding: 2px 15px;
    display: inline-block;
    border-radius: 8px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-event-2__time span {
        padding: 5px 15px;
        margin-left: 0px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-event-2__time span {
        padding: 5px 10px;
        margin-left: 0px;
    }
}

.stem-event-2__time.color-1 {
    background-color: rgba(50, 112, 252, 0.06);
    color: rgb(50, 112, 252);
}

.stem-event-2__time.color-2 {
    background-color: rgba(177, 40, 255, 0.06);
    color: rgb(177, 40, 255);
}

.stem-event-2__time.color-3 {
    background-color: rgba(48, 168, 32, 0.06);
    color: rgb(48, 168, 32);
}

.stem-event-2__time.color-4 {
    background-color: rgba(255, 138, 0, 0.06);
    color: rgb(255, 138, 0);
}

.stem-event-2__shapes-1 {
    position: absolute;
    top: 0px;
    right: 62%;
    animation: 6s ease 0s infinite alternate none running stem-float-1;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-event-2__shapes-1 {
        top: 50px;
    }
}

.stem-event-2__shapes-2 {
    position: absolute;
    top: 60%;
    right: 5%;
    animation: 8s ease 0s infinite alternate none running stem-float-2;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
(max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 1200px) and (max-width: 1399px) {
    .stem-event-2__shapes-2 {
        display: none;
    }
}

.stem-event-2__shapes-3 {
    position: absolute;
    top: 50%;
    left: 0px;
    animation: 1s ease-in-out 1s infinite alternate forwards running tpswing;
}

.stem-event-3__item {
    padding: 30px 40px;
    background-color: var(--stem-common-white);
    border: 2px solid rgba(1, 16, 37, 0.06);
    border-radius: 4px;
    transition: all 0.3s ease-out 0s;
}

.stem-event-3__item:hover {
    box-shadow: rgba(1, 16, 37, 0.14) 0px 20px 50px 0px;
    border-color: transparent;
}

.stem-event-3__item:hover .stem-event-3__thumb img {
    transform: scale(1.05, 1.05) rotate(-2deg);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-3__item {
        padding: 30px 25px;
    }
}

.stem-event-3__item .stem-border-btn span {
    border-color: rgba(50, 112, 252, 0.08);
    color: rgb(2, 12, 42);
}

.stem-event-3__item .stem-border-btn:hover span {
    color: var(--stem-common-white);
}

.stem-event-3__title {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
    padding-left: 40px;
    margin-bottom: 0px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-3__title {
        padding-left: 0px;
    }
}

.stem-event-3__title a:hover {
    color: var(--stem-theme-primary);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-event-3__title {
        font-size: 22px;
    }
}

.stem-event-3__info span {
    color: var(--stem-text-3);
    margin-left: 15px;
    margin-bottom: 10px;
    display: inline-block;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-event-3__info {
        margin-bottom: 30px;
    }
}

.events__sidebar-widget {
    position: relative;
    padding: 30px;
    box-shadow: rgba(1, 11, 60, 0.1) 0px 30px 50px 0px;
    border-radius: 4px;
}

.events__info-price h5 {
    font-size: 26px;
    display: inline-block;
    margin-bottom: 0px;
}

.events__info-price h5 span {
    font-size: 20px;
    font-weight: 600;
}

.events__info-price h5.old-price {
    text-decoration: line-through;
    color: var(--stem-text-3);
    font-weight: 500;
    font-size: 16px;
    padding-right: 10px;
}

.events__info-discount span {
    display: inline-block;
    font-size: 14px;
    height: 24px;
    line-height: 24px;
    padding: 0px 12px;
    color: red;
    background: rgba(255, 0, 0, 0.08);
    font-weight: 600;
    border-radius: 4px;
}

.events__info-content ul li:not(:last-child) {
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgb(238, 240, 246);
}

.events__info-icon svg {
    width: 16px;
    height: 20px;
    margin-left: 12px;
}

.events__info-icon svg .st0 {
    fill: none;
    stroke: var(--stem-theme-primary);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 2.6667;
}

.events__info-item h5 {
    margin-bottom: 0px;
    font-weight: 400;
    color: var(--stem-grey-3);
    font-size: 15px;
    line-height: 1.5;
}

.events__info-item h5 span {
    font-weight: 500;
    color: var(--stem-common-black);
    padding-left: 5px;
}

.events__sponsor-title {
    font-size: 20px;
    margin-bottom: 20px;
}

.events__sponsor-info h3 {
    font-size: 16px;
}

.events__sponsor-info>h4 {
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 10px;
}

.events__sponsor-info>h4 span {
    font-weight: 400;
    color: var(--stem-text-3);
}

.events__social h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 0px;
    margin-left: 10px;
}

.events__social ul li {
    display: inline-block;
    margin-right: 5px;
}

.events__social ul li a {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 44px;
    text-align: center;
    font-size: 13px;
    color: var(--stem-common-black);
    border-radius: 4px;
}

.events__social ul li a.fb {
    color: rgb(40, 93, 161);
    background: rgba(40, 93, 161, 0.1);
}

.events__social ul li a.fb:hover {
    color: var(--stem-common-white);
    background: rgb(40, 93, 161);
}

.events__social ul li a.tw {
    color: rgb(3, 169, 244);
    background: rgba(3, 169, 244, 0.1);
}

.events__social ul li a.tw:hover {
    color: var(--stem-common-white);
    background: rgb(3, 169, 244);
}

.events__social ul li a.pin {
    color: rgb(216, 22, 63);
    background: rgba(216, 22, 63, 0.1);
}

.events__social ul li a.pin:hover {
    color: var(--stem-common-white);
    background: rgb(216, 22, 63);
}

.events__allow h3 {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 15px;
}

.events__allow ul li {
    font-size: 16px;
    color: var(--stem-common-black);
    list-style: none;
}

.events__allow ul li:not(:last-child) {
    margin-bottom: 5px;
}

.events__allow ul li i {
    display: inline-block;
    width: 18px;
    height: 18px;
    text-align: center;
    line-height: 18px;
    font-size: 10px;
    font-weight: 500;
    color: var(--stem-theme-primary);
    background: rgba(83, 146, 251, 0.1);
    border-radius: 50%;
    margin-left: 10px;
}

.events__tag {
    border-top: 1px solid rgb(228, 230, 239);
    padding-top: 25px;
}

.events__tag span {
    font-size: 16px;
    color: var(--stem-text-3);
    margin-left: 7px;
}

.events__tag a {
    font-size: 16px;
    color: var(--stem-theme-primary);
    font-weight: 600;
}

.events__tag a:hover {
    color: var(--stem-theme-secondary);
}

.events__info-discount span {
    display: inline-block;
    font-size: 14px;
    height: 24px;
    line-height: 24px;
    padding: 0px 12px;
    color: rgb(255, 70, 144);
    background: rgba(255, 70, 144, 0.08);
    font-weight: 600;
    border-radius: 4px;
}

.course__teacher-thumb-3 img {
    width: 44px;
    height: 44px;
    margin-bottom: 30px;
    border-radius: 50%;
    border: 2px solid rgb(255, 255, 255);
    box-shadow: rgba(1, 11, 60, 0.1) 0px 10px 14px 0px;
}

.course__instructor-thumb img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

.stem-event__shape .event-1 {
    position: absolute;
    left: 100px;
    animation: 6s ease 0s infinite alternate none running stem-float-1;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-event__shape .event-1 {
        display: none;
    }
}

.stem-event__shape .event-2 {
    position: absolute;
    top: 50%;
    right: 100px;
    animation: 6s ease 0s infinite alternate none running stem-float-3;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-event__shape .event-2 {
        top: 0px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-event__shape .event-2 {
        display: none;
    }
}

.stem-counter-2__item.has-border {
    position: relative;
}

.stem-counter-2__item.has-border::after {
    content: "";
    width: 2px;
    height: 54px;
    position: absolute;
    left: 0px;
    top: 50%;
    display: inline-block;
    background-color: var(--stem-common-white);
    opacity: 0.1;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .events__sidebar {
        padding-right: 0px;
    }
}

.stem-cta__bg {
    position: absolute;
    bottom: 0px;
    height: 50%;
    width: 100%;
    display: inline-block;
    border-radius: 4px;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1;
}

.stem-cta__box {
    padding: 40px 60px;
    border-radius: 4px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-cta__box {
        padding: 40px 30px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-cta__box {
        padding: 40px 20px;
    }
}

.stem-cta__title {
    font-size: 44px;
    font-weight: 800;
}

.stem-cta__title span {
    font-weight: 300;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-cta__title {
        font-size: 35px;
        margin-bottom: 30px;
    }

    .stem-cta__title br {
        display: none;
    }
}

.stem-cta__form input {
    width: 100%;
    height: 72px;
    position: relative;
    padding-left: 200px;
    padding-right: 20px;
    border: 1px solid var(--stem-border-2);
    border-radius: 4px;
}

.stem-cta__form input::-webkit-input-placeholder {
    color: var(--stem-text-4);
}

.stem-cta__form input:focus {
    border-color: var(--stem-theme-primary);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-cta__form input {
        margin-bottom: 30px;
        padding-right: 5px;
        padding-left: 5px;
    }
}

.stem-cta__form button {
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    margin-left: 6px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-cta__form button {
        position: relative;
        transform: translateY(0px);
    }
}

.stem-cta__btn-wrappper .stem-white-btn {
    padding: inherit;
    box-shadow: rgba(8, 30, 68, 0.1) 0px 10px 20px 0px;
    border-radius: 10px;
}

.stem-cta__btn-wrappper .stem-white-btn .transition {
    display: none;
}

.stem-box__shadow {
    box-shadow: rgba(4, 5, 60, 0.1) 0px 30px 50px 0px;
}

.stem-form__main {
    padding: 40px 50px;
    box-shadow: rgba(0, 15, 47, 0.1) 0px 30px 40px 0px;
    border-radius: 10px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-form__main {
        margin-left: 30px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-form__main {
        margin-left: 0px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px) {
    .stem-form__main {
        padding: 40px 20px;
    }
}

.stem-form__field {
    margin-bottom: 20px;
}

.stem-form__field input {
    width: 100%;
    height: 48px;
    padding-right: 20px;
    padding-left: 20px;
    border: 0px;
    background-color: rgb(245, 245, 245);
    border-radius: 6px;
}

.stem-form__field input::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

.stem-form__field label {
    font-weight: 700;
    margin-bottom: 5px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .stem-form__text {
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-form__text {
        padding-right: 0px;
        padding-left: 0px;
    }
}

.stem-cta-2__section {
    background-size: cover;
    background-repeat: no-repeat;
}

.stem-cta-2__field input {
    width: 100%;
    height: 60px;
    padding-right: 20px;
    padding-left: 150px;
    border: 0px;
    background-color: rgb(245, 245, 245);
    border-radius: 6px;
    font-size: 16px;
}

.stem-cta-2__btn {
    position: absolute;
    top: 0px;
    left: 0px;
    display: inline-block;
    height: 100%;
    line-height: 60px;
    padding: 0px 30px;
    text-align: center;
    font-size: 15px;
    color: var(--stem-common-white);
    background-color: rgb(0, 15, 47);
    border-radius: 6px 0px 0px 6px;
    text-transform: uppercase;
}

.stem-cta-2__btn:hover {
    background-color: var(--stem-theme-secondary);
}

@media (max-width: 575px) {
    .stem-cta-2__btn {
        margin-top: 20px;
        position: relative;
        border-radius: 6px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-cta-2__img img {
        width: 100%;
    }
}

.stem-contact__form-6 input {
    width: 100%;
    height: 60px;
    margin-bottom: 30px;
    padding: 0px 20px;
    border: 2px solid rgb(228, 228, 228);
    transition: all 0.3s ease-out 0s;
}

.stem-contact__form-6 input::-webkit-input-placeholder {
    color: var(--stem-text-7);
}

.stem-contact__form-6 input:focus {
    border-color: var(--stem-theme-primary);
}

.stem-contact__form-6 textarea {
    width: 100%;
    height: 230px;
    margin-bottom: 30px;
    padding: 20px;
    resize: none;
    border: 2px solid rgb(228, 228, 228);
    transition: all 0.3s ease-out 0s;
}

.stem-contact__form-6 textarea::-webkit-input-placeholder {
    color: var(--stem-text-7);
}

.stem-contact__form-6 textarea:focus {
    outline: 0px;
    border-color: var(--stem-theme-primary);
}

.contact__form-input input,
.contact__form-input textarea {
    width: 100%;
    height: 52px;
    padding-right: 20px;
    padding-left: 20px;
    border: 2px solid transparent;
    background-color: rgb(245, 245, 245);
    border-radius: 6px;
    margin-bottom: 20px;
}

.contact__form-input input:focus,
.contact__form-input textarea:focus {
    border-color: var(--stem-theme-primary);
    outline: 0px;
}

.contact__form-input textarea {
    height: 200px;
    padding: 20px;
    resize: none;
    transition: all 0.3s ease-out 0s;
}

.contact__form-input textarea::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

.contact__form-input .contact__form-agree label {
    margin-right: 5px;
}

.contact__info-inner {
    padding: 45px 40px 45px 70px;
    border-radius: 4px;
    box-shadow: rgba(1, 11, 60, 0.1) 0px 30px 50px 0px;
    position: relative;
    z-index: 1;
}

.contact__info-inner li {
    list-style: none;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact__info-inner {
        margin-top: 50px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .contact__info-inner {
        margin-top: 50px;
    }
}

@media (max-width: 575px) {
    .contact__info-inner {
        margin-top: 50px;
        padding-left: 35px;
    }
}

.contact__info-icon svg {
    fill: none;
    stroke: var(--stem-theme-primary);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.contact__info-icon svg.map {
    width: 16px;
    height: 20px;
}

.contact__info-icon svg.mail {
    width: 18px;
    height: 18px;
}

.contact__info-icon svg.call {
    width: 18px;
    height: 18px;
}

.contact__info-text h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 6px;
}

.contact__info-text p {
    margin-bottom: 0px;
}

.contact__info-text p a:hover {
    color: var(--stem-theme-primary);
}

.contact__social h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 13px;
}

.contact__social ul li {
    display: inline-block;
    margin-left: 10px;
}

.contact__social ul li a {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 44px;
    text-align: center;
    font-size: 13px;
    color: rgb(14, 17, 51);
    background: rgb(243, 244, 248);
    border-radius: 4px;
}

.contact__social ul li a.fb {
    color: rgb(40, 93, 161);
    background: rgba(40, 93, 161, 0.1);
}

.contact__social ul li a.fb:hover {
    color: rgb(255, 255, 255);
    background: rgb(40, 93, 161);
}

.contact__social ul li a.tw {
    color: rgb(3, 169, 244);
    background: rgba(3, 169, 244, 0.1);
}

.contact__social ul li a.tw:hover {
    color: rgb(255, 255, 255);
    background: rgb(3, 169, 244);
}

.contact__social ul li a.pin {
    color: rgb(216, 22, 63);
    background: rgba(216, 22, 63, 0.1);
}

.contact__social ul li a.pin:hover {
    color: rgb(255, 255, 255);
    background: rgb(216, 22, 63);
}

.stem-contact-map iframe {
    width: 100%;
    height: 100%;
    display: block;
}

.stem-map-height {
    height: 700px;
}

@media (max-width: 575px) {
    .stem-map-height {
        height: 450px;
    }
}

.stem-form-shape-1 {
    position: absolute;
    right: 120px;
    bottom: 128px;
    animation: 5s ease 0s infinite alternate none running stem-float-3;
}

.stem-form-shape-2 {
    position: absolute;
    left: 120px;
    top: -130px;
}

.stem-form-shape-3 {
    position: absolute;
    top: 50%;
    right: -150px;
    transform: translateY(-50%);
}

.stem-cta-2__shape img {
    position: absolute;
    right: 55%;
    animation: 7s ease 0s infinite alternate none running stem-float-2;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-cta-2__shape img {
        top: 50%;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-cta-2__shape img {
        display: none;
    }
}

.stem-cta-2__img {
    margin-left: -150px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 1400px) and (max-width: 1599px) {
    .stem-cta-2__img {
        margin-left: 0px;
    }
}

.stem-form__main-shape {
    position: absolute;
    bottom: 80px;
    right: -30px;
    z-index: -1;
}

.stem-counter__item {
    text-align: center;
    color: var(--stem-common-white);
}

.stem-counter__item.has-border {
    position: relative;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-counter__item.has-border::after {
        display: none !important;
    }
}

.stem-counter__item.has-border::after {
    position: absolute;
    left: -20px;
    top: -20px;
    content: "";
    width: 1px;
    height: 100px;
    background-color: rgba(255, 255, 255, 0.2);
    display: inline-block;
}

.stem-counter__item span b {
    font-size: 36px;
    display: block;
    line-height: 1;
    position: relative;
}

.stem-counter__item span b::after {
    content: "+";
}

.stem-counter-2__bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border-radius: 10px;
}

.stem-counter-2__icon {
    font-size: 40px;
    display: inline-block;
    margin-bottom: 30px;
}

.stem-counter-2__item {
    text-align: center;
    color: var(--stem-common-white);
}

.stem-counter-2__item span b {
    font-size: 36px;
    display: block;
    line-height: 1;
    position: relative;
}

.stem-counter-2__item span b::after {
    content: "+";
}

.stem-pulse-border {
    border-radius: 50%;
    z-index: 1;
}

.stem-pulse-border::before {
    position: absolute;
    content: "";
    right: 50%;
    top: 50%;
    transform: translate(50%, -50%);
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.4);
    animation: 2s linear 0s infinite normal none running borderanimate2;
    transition: all 0.3s ease-out 0s;
    z-index: -1;
}

.stem-pulse-border::before {
    animation-delay: 0.7s;
}

.stem-countdown__video {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 300px;
}

.stem-countdown__video a {
    background-color: var(--stem-common-white);
    width: 90px;
    height: 90px;
    line-height: 90px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    font-size: 20px;
    color: var(--stem-theme-primary);
    position: relative;
}

.stem-countdown__video a::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px solid var(--stem-common-white);
    right: 0px;
    top: 0px;
    transform: scale(1.3);
}

@media (max-width: 575px) {
    .stem-countdown__right {
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media (max-width: 575px) {
    .stem-coundown__countdown {
        background-color: var(--stem-common-white);
        padding: 30px 15px;
        display: inline-block;
    }
}

.stem-coundown__countdown .cdown {
    padding: 20px 25px;
    background-color: white;
    display: inline-block;
    text-align: center;
    margin-left: 5px;
    border-radius: 5px;
}

@media (max-width: 575px) {
    .stem-coundown__countdown .cdown {
        padding: 0px;
        margin-left: 10px;
    }
}

.stem-coundown__countdown .cdown p {
    margin-bottom: 0px;
}

.stem-coundown__countdown .time-count {
    font-size: 30px;
    font-weight: 700;
}

.count-down-shapes-1 {
    position: absolute;
    right: 50px;
    top: 40px;
    transform: scale(0.6);
}

.count-down-shapes-2 {
    position: absolute;
    left: 25%;
    transform: scale(0.6);
}

.count-down-shapes-3 {
    position: absolute;
    left: 0px;
    bottom: 20%;
}

.course__view {
    margin-right: 15px;
}

.stem-feature__item {
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background-color: rgba(255, 255, 255, 0);
    transition: all 0.3s ease-out 0s;
    position: relative;
    border-radius: 10px;
}

.stem-feature__item::before {
    content: "";
    position: absolute;
    top: 0px;
    height: 3px;
    width: 0px;
    left: 0px;
    display: inline-block;
    background-color: var(--stem-theme-primary);
    transition: all 0.3s ease-out 0s;
}

.stem-feature__item.before-color-1::before {
    background-color: rgb(255, 162, 143);
}

.stem-feature__item.before-color-2::before {
    background-color: rgb(137, 151, 249);
}

.stem-feature__item.before-color-3::before {
    background-color: rgb(248, 100, 112);
}

.stem-feature__item.before-color-4::before {
    background-color: rgb(95, 167, 156);
}

.stem-feature__item.before-color-5::before {
    background-color: rgb(115, 209, 126);
}

.stem-feature__item.before-color-6::before {
    background-color: rgb(180, 81, 249);
}

.stem-feature__item.before-color-7::before {
    background-color: rgb(17, 197, 206);
}

.stem-feature__item.before-color-8::before {
    background-color: rgb(238, 156, 45);
}

.stem-feature__item:hover {
    box-shadow: rgba(0, 15, 47, 0.1) 0px 16px 40px 0px, rgba(44, 121, 255, 0.004) 0px 3px 0px 0px inset;
    border-color: transparent;
}

.stem-feature__item:hover::before {
    width: 0;
    left: 5px;
    right: 5px;
}

.stem-feature__item:hover .stem-feature__icon {
    transform: translateY(-8px);
}

.stem-feature__icon {
    margin-bottom: 30px;
    transition: all 0.3s ease-out 0s;
}

.stem-feature__title {
    font-size: 18px;
}

.stem-feature__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-feature__item p {
    margin-bottom: 0px;
}

.stem-feature-2__section .row [class*="col-"]:first-child .stem-feature-2__item {
    border-radius: 0px 10px 10px 0px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-feature-2__section .row [class*="col-"]:first-child .stem-feature-2__item {
        border-radius: 10px 10px 0px 0px;
    }
}

.stem-feature-2__section .row [class*="col-"]:last-child .stem-feature-2__item {
    border-radius: 10px 0px 0px 10px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-feature-2__section .row [class*="col-"]:last-child .stem-feature-2__item {
        border-radius: 0px 0px 10px 10px;
    }
}

.stem-feature-2__item {
    padding: 35px 50px;
    transition: all 0.3s ease-out 0s;
    position: relative;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-feature-2__item {
        padding: 35px 25px;
    }
}

.stem-feature-2__item.stem-feature-2__color-1 {
    background-color: rgb(255 255 255);
    box-shadow: rgb(0 0 0 / 30%) 0px 40px 60px 0px;
    border-radius: 0 10px 10px 0;
    box-shadow: 0 10px 30px 0 #A4C0D238 !important;
}

.stem-feature-2__item.stem-feature-2__color-2 {
    background-color: rgb(255 255 255);
    box-shadow: rgb(0 0 0 / 30%) 0px 40px 60px 0px;
    box-shadow: 0 10px 30px 0 #A4C0D238 !important;
}

.stem-feature-2__item.stem-feature-2__color-3 {
    background-color: rgb(162, 0, 255);
    box-shadow: rgba(162, 0, 255, 0.3) 0px 40px 60px 0px;
}

.stem-feature-2__item.stem-feature-2__color-4 {
    background-color: rgb(255 255 255);
    box-shadow: rgb(0 0 0 / 37%) 0px 40px 60px 0px;
    border-radius: 10px 0 0 10px;
    box-shadow: 0 10px 30px 0 #A4C0D238 !important;
}

.stem-feature-2__item:hover .stem-feature-2__icon {
    transform: rotateY(180deg);
}

.stem-feature-2__icon {
    color: #05a5a5;
    margin-bottom: 50px;
    transition: all 0.3s ease-out 0s;
    font-size: 36px;
    display: inline-block;
}

.stem-feature-2__title {
    font-size: 18px;
    color: #23343f;
    margin-bottom: 10px;
}

.stem-feature-2__content p {
    margin-bottom: 20px;
    color: #23343f;
    font-size: 16px;
}

.stem-feature-2__content span a {
    color: var(--stem-common-white);
    width: 36px;
    height: 36px;
    text-align: center;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.2);
    display: inline-block;
    line-height: 32px;
}

.stem-feature-2__content span a:hover {
    background-color: var(--stem-common-white);
    border-color: transparent;
}

.stem-feature-2__content span a:hover i {
    animation: 0.5s ease 0s 1 normal forwards running tfLeftToRight;
    color: var(--stem-theme-primary);
}

.gx-70 {
    --bs-gutter-x: 70px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .gx-70 {
        --bs-gutter-x: 1.5rem;
    }
}

.stem-testimonial__slider {
    box-shadow: rgba(4, 5, 60, 0.1) 0px 30px 50px 0px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial__slider .slick-slide img {
        width: 100%;
    }
}

.stem-testimonial___thumb {
    flex: 0 0 auto;
    object-fit: cover;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial__bg {
        background-color: var(--stem-common-white);
    }
}

.stem-testimonial__review {
    padding: 30px 50px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-testimonial__review {
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial__review {
        padding: 30px;
    }
}

.stem-testimonial__review h3 {
    font-size: 20px;
    margin-bottom: 0px;
    line-height: 1;
}

.stem-testimonial__review p {
    font-size: 18px;
    margin-bottom: 30px;
    line-height: 1.7;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial__review p br {
        display: none;
    }
}

.stem-testimonial__review span {
    color: rgb(126, 129, 136);
}

.stem-testimonial__quote {
    font-size: 50px;
    margin-bottom: 15px;
    display: inline-block;
}

.stem-testimonial__quote i {
    color: var(--stem-theme-primary);
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-testimonial__quote {
        margin-bottom: 30px;
    }
}

.stem-testimonial__dots {
    position: absolute;
    bottom: 0px;
    right: 0px;
    left: 0px;
    text-align: center;
    transform: translateY(100%);
}

.stem-testimonial__dots li {
    list-style: none;
    display: inline-block;
    margin-left: 20px;
}

.stem-testimonial__dots li button {
    font-size: 0px;
    position: relative;
}

.stem-testimonial__dots li button::before {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    width: 10px;
    height: 10px;
    line-height: 10px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: var(--stem-theme-primary);
    opacity: 0.5;
}

.stem-testimonial__dots li.slick-active button::before {
    opacity: 1;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial__arrows {
        display: none;
    }
}

.stem-testimonial__arrows .slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -45px;
    font-size: 40px;
}

.stem-testimonial__arrows .slick-arrow:hover {
    color: var(--stem-theme-primary);
}

.stem-testimonial__arrows .slick-arrow.slick-next {
    right: auto;
    left: -45px;
}

.stem-testimonial-2__slider .slick-track {
    padding-top: 20px;
}

.stem-testimonial-2__slider.slick-list {
    margin: 0px -15px;
}

.stem-testimonial-2__slider .slick-slide {
    margin-left: 10px;
    margin-right: 10px;
}

.stem-testimonial-2__avata {
    text-align: center;
    display: inline-block;
}

.stem-testimonial-2__avata img {
    border-radius: 50%;
    margin-bottom: 30px;
    display: inline-block;
}

.stem-testimonial-2__ratting {
    display: block;
    margin-bottom: 5px;
}

.stem-testimonial-2__ratting i {
    color: rgb(250, 164, 35);
}

.stem-testimonial-2__box {
    padding: 30px 40px;
    border-radius: 10px;
    background-color: rgb(255, 255, 255);
    box-shadow: rgba(67, 68, 71, 0.1) 0px 15px 30px 0px;
    text-align: center;
    margin-bottom: 60px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial-2__box {
        padding: 30px 10px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .stem-testimonial-2__review {
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-testimonial-2__review {
        padding-right: 0px;
        padding-left: 0px;
        padding-top: 30px;
    }
}

.stem-testimonial-2__review h3 {
    font-size: 20px;
    margin-bottom: 0px;
    line-height: 1;
}

.stem-testimonial-2__review p {
    font-size: 16px;
    margin-bottom: 30px;
}

.stem-testimonial-2__dots {
    text-align: center;
    margin-top: 25px;
}

.stem-testimonial-2__dots li {
    list-style: none;
    display: inline-block;
    margin-left: 20px;
}

.stem-testimonial-2__dots li button {
    font-size: 0px;
    position: relative;
}

.stem-testimonial-2__dots li button::before {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    width: 10px;
    height: 10px;
    line-height: 10px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    background-color: rgb(203, 209, 220);
}

.stem-testimonial-2__dots li.slick-active button::before {
    background-color: #3F5767;
}

.stem-brand__box h3 {
    font-size: 20px;
    margin-bottom: 6px;
}

.stem-brand__box p {
    color: var(--stem-text-2);
}

.stem-brand__box span {
    color: var(--stem-theme-secondary);
    margin-bottom: 2px;
    display: inline-block;
}

.stem-brand__item {
    height: 130px;
    align-items: center;
    display: flex !important;
}

.stem-brand__item img {
    max-width: 100%;
    filter: grayscale(1);
    opacity: 0.7;
}

.stem-brand__box {
    box-shadow: rgba(1, 16, 37, 0.1) 0px 30px 40px 0px;
    padding-right: 60px;
    padding-left: 60px;
    position: relative;
    z-index: 1;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-brand__box {
        padding-right: 30px;
        padding-left: 30px;
    }
}

.stem-blog__item {
    margin-bottom: 20px;
    background-color: var(--stem-common-white);
    transition: all 0.3s ease-out 0s;
}

.stem-blog__item:hover {
    box-shadow: rgba(3, 27, 40, 0.1) 0px 30px 50px 0px;
}

.stem-blog__item:hover .stem-blog__content {
    border-color: transparent;
}

@media (max-width: 575px) {
    .stem-blog__item {
        border-radius: 10px;
    }
}

.stem-blog__content {
    padding: 28.5px 25px;
    border-width: 2px 0px 2px 2px;
    border-top-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-image: initial;
    border-top-color: rgb(229, 231, 232);
    border-bottom-color: rgb(229, 231, 232);
    border-left-color: rgb(229, 231, 232);
    border-right-style: initial;
    border-right-color: initial;
    transition: all 0.3s ease-out 0s;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-blog__content {
        padding-top: 30px;
        padding-bottom: 30px;
        border: 0px;
        box-shadow: rgba(3, 27, 40, 0.1) 0px 30px 50px 0px;
        border-radius: 10px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .stem-blog__thub img {
        width: 100%;
        border-radius: 10px;
    }
}

.stem-blog__title {
    margin-bottom: 25px;
}

.stem-blog__title a:hover {
    color: var(--stem-theme-primary);
}

.stem-blog__meta {
    margin-bottom: 10px;
}

.stem-blog__meta span {
    margin-left: 10px;
}

.stem-blog__meta span i {
    margin-left: 5px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .postbox__wrapper {
        padding-left: 0px;
        margin-bottom: 60px;
    }
}

.postbox__thumb .play-btn {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    z-index: 1;
}

.postbox__audio {
    height: 455px;
    width: 100%;
}

.postbox__audio iframe {
    width: 100%;
    height: 100%;
    border: none;
}

.postbox__item-single:hover {
    box-shadow: none;
}

.postbox__content {
    padding: 40px 0px;
}

@media (max-width: 575px) {
    .postbox__content {
        padding-right: 20px;
        padding-left: 20px;
    }
}

.postbox__content-single {
    padding-right: 0px;
    padding-left: 0px;
    border: none;
}

.postbox__title {
    font-size: 38px;
    margin-bottom: 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .postbox__title {
        font-size: 28px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .postbox__title {
        font-size: 33px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .postbox__title {
        font-size: 30px;
    }
}

@media (max-width: 575px) {
    .postbox__title {
        font-size: 25px;
    }
}

.postbox__title a:hover {
    color: var(--stem-theme-primary);
}

.postbox__meta {
    margin-bottom: 5px;
}

.postbox__meta span {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    margin-left: 30px;
}

.postbox__meta span:last-child {
    margin-left: 0px;
}

.postbox__meta span i {
    color: var(--stem-theme-primary);
    margin-left: 3px;
}

.postbox__text img {
    max-width: 100%;
}

.postbox__text p {
    margin-bottom: 28px;
    font-size: 1rem;
}

.postbox__text-single p {
    margin-bottom: 15px;
}

.postbox__slider button {
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    font-size: 30px;
    color: var(--stem-common-white);
}

.postbox__slider button.postbox-slider-button-next {
    right: auto;
    left: 50px;
}

@media (max-width: 575px) {
    .postbox__slider button.postbox-slider-button-next {
        left: 10px;
    }
}

@media (max-width: 575px) {
    .postbox__slider button {
        right: 10px;
    }
}

.postbox__comment ul li {
    margin-bottom: 10px;
    list-style: none;
}

.postbox__comment ul li.children {
    margin-right: 100px;
}

@media (max-width: 575px) {
    .postbox__comment ul li.children {
        margin-right: 15px;
    }
}

.postbox__comment-form {
    margin-bottom: 20px;
    padding: 40px 30px;
    box-shadow: rgba(0, 0, 0, 0.09) 0px 10px 30px 0px;
    background: var(--stem-common-white);
}

.postbox__comment-form-title {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 40px;
}

.postbox__comment-input {
    position: relative;
    margin-bottom: 20px;
}

.postbox__comment-input span {
    font-weight: 600;
    color: var(--stem-common-black);
    margin-bottom: 12px;
    display: block;
}

.postbox__comment-input input,
.postbox__comment-input textarea {
    height: 55px;
    padding: 0px 20px;
    width: 100%;
    font-size: 14px;
    color: var(--stem-common-black);
    outline: none;
    border: 1px solid transparent;
    border-radius: 7px;
    background: rgb(247, 247, 247);
}

.postbox__comment-input textarea {
    height: 175px;
    resize: none;
    padding-top: 20px;
    padding-bottom: 20px;
}

.postbox__comment-input textarea::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

.postbox__comment-title {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 20px;
}

.postbox__comment-box {
    padding: 25px 30px 30px 40px;
    border-radius: 4px;
}

.postbox__comment-avater img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

.postbox__comment-name {
    margin-bottom: 5px;
}

.postbox__comment-name h5 {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0px;
}

.postbox__comment-name span {
    font-size: 14px;
    color: var(--stem-text-1);
}

@media (max-width: 575px) {
    .postbox__comment-text {
        margin-right: 0px;
        margin-top: 15px;
    }
}

.postbox__comment-text p {
    font-size: 16px;
    color: var(--stem-text-11);
    margin-bottom: 15px;
}

.postbox__comment-reply {
    margin-top: 10px;
}

.postbox__comment-reply a {
    display: inline-block;
    color: var(--stem-theme-primary);
    background: rgba(61, 108, 231, 0.1);
    height: 22px;
    line-height: 22px;
    padding: 0px 10px;
    font-weight: 500;
    font-size: 14px;
    border-radius: 4px;
}

.postbox__comment-reply a:hover {
    color: var(--stem-common-white);
    background: var(--stem-theme-primary);
}

.postbox__comment-agree {
    padding-right: 5px;
}

.postbox__comment-agree input {
    margin: 0px;
    appearance: none;
    display: block;
    width: 14px;
    height: 14px;
    background: var(--stem-common-white);
    border: 1px solid rgb(185, 186, 193);
    outline: none;
    border-radius: 4px;
    flex: 0 0 auto;
    transform: translateY(-1px);
}

.postbox__comment-agree input:checked {
    position: relative;
    background-color: var(--stem-theme-primary);
    border-color: transparent;
}

.postbox__comment-agree input:checked::after {
    box-sizing: border-box;
    content: "";
    position: absolute;
    font-family: var(--stem-ff-fontawesome);
    font-size: 10px;
    color: var(--stem-common-white);
    top: 46%;
    right: 50%;
    transform: translate(50%, -50%);
}

.postbox__comment-agree input:hover {
    cursor: pointer;
}

.postbox__comment-agree label {
    padding-right: 8px;
    color: var(--stem-text-1);
    line-height: 1;
}

.postbox__comment-agree label a {
    color: var(--stem-common-black);
    font-weight: 600;
    padding-right: 4px;
}

.postbox__comment-agree label a:hover {
    color: var(--stem-theme-primary);
}

.postbox__comment-agree label:hover {
    cursor: pointer;
}

.postbox__tag span {
    font-size: 16px;
    margin-bottom: 17px;
    color: var(--stem-common-black);
    margin-left: 10px;
}

.rc__post ul li:not(:last-child) {
    margin-bottom: 15px;
}

.rc__post-thumb img {
    width: 80px;
    height: 80px;
    object-fit: cover;
}

.rc__post-title {
    margin-bottom: 6px;
    font-size: 17px;
}

.rc__post-title a:hover {
    color: var(--stem-theme-primary);
}

.rc__meta span {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
}

.sidebar__widget {
    padding: 30px;
    background: var(--stem-grey-2);
}

.sidebar__widget-title {
    position: relative;
    display: inline-block;
    font-size: 20px;
    margin-bottom: 30px;
    font-weight: 600;
    text-transform: capitalize;
}

.sidebar__widget ul li {
    list-style: none;
    padding-right: 19px;
    margin-bottom: 25px;
    line-height: 1;
}

.sidebar__widget ul li:last-child {
    margin-bottom: 0px;
}

.sidebar__widget ul li a {
    font-size: 16px;
    color: var(--stem-common-black);
    position: relative;
}

.sidebar__widget ul li a::after {
    position: absolute;
    content: "";
    right: -19px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--stem-common-black);
    font-family: var(--stem-ff-fontawesome);
    font-size: 16px;
    transition: all 0.3s ease-out 0s;
}

.sidebar__widget ul li a:hover {
    color: var(--stem-theme-primary);
}

.sidebar__widget ul li a:hover::after {
    color: var(--stem-theme-primary);
    right: -14px;
}

.sidebar__widget ul li span {
    float: left;
}

.sidebar__widget ul li ul {
    padding-right: 25px;
    padding-top: 20px;
}

.sidebar__search {
    position: relative;
}

.sidebar__search input {
    width: 100%;
    height: 60px;
    line-height: 60px;
    background-color: var(--stem-common-white);
    padding: 3px 25px 0px 80px;
    text-transform: capitalize;
    border: 1px solid var(--stem-grey-1);
    outline: none;
}

.sidebar__search input:focus {
    border-color: var(--stem-theme-primary);
}

.sidebar__search button {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    padding: 0px 24px;
    color: rgb(255, 255, 255);
    line-height: 60px;
    background: var(--stem-theme-primary);
}

.sidebar__banner::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.sidebar__banner-content {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    z-index: 1;
    background: var(--stem-common-white);
}

.sidebar__banner-content h4 {
    padding: 15px 20px;
    font-size: 24px;
    color: var(--stem-common-black);
    text-transform: uppercase;
    margin-bottom: 0px;
}

.tagcloud a {
    background: var(--stem-common-white);
    color: var(--stem-common-black);
    display: inline-block;
    font-size: 13px;
    line-height: 1;
    padding: 8px 21px;
    margin-bottom: 8px;
    margin-left: 5px;
    text-transform: uppercase;
    border: 0px;
}

.tagcloud a:hover {
    background: var(--stem-common-black);
    color: var(--stem-common-white);
}

blockquote {
    background: var(--stem-grey-1);
    padding: 35px 50px;
    margin-bottom: 35px;
}

@media (max-width: 575px) {
    blockquote {
        padding-right: 15px;
        padding-left: 15px;
    }
}

blockquote p {
    line-height: 1.5;
    font-size: 20px;
    color: rgb(87, 86, 94);
    font-weight: 400;
}

blockquote cite {
    font-size: 18px;
    display: block;
    margin-top: 10px;
    color: rgb(7, 3, 55);
    font-style: inherit;
    font-weight: 600;
    position: relative;
}

blockquote cite::before {
    content: "";
    font-size: 28px;
    color: var(--stem-theme-primary);
    padding-bottom: 0px;
    display: inline-block;
    background: var(--stem-theme-primary);
    height: 2px;
    width: 40px;
    font-weight: 400;
    text-align: center;
    top: -4px;
    margin-left: 10px;
    position: relative;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .sidebar__wrapper {
        padding-right: 0px;
    }
}

.table-content .table> :not(:first-child) {
    border-top: 0px;
}

.table-content table {
    background: rgb(255, 255, 255);
    border-color: rgb(234, 237, 255);
    border-radius: 0px;
    border-style: solid;
    border-width: 1px 1px 0px 0px;
    text-align: center;
    width: 100%;
    margin-bottom: 0px;
}

.table-content .table> :not(:last-child)> :last-child>* {
    border-bottom-color: rgb(234, 237, 255);
}

.table-content .product-quantity {
    float: none;
}

.table-content table td.product-name {
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
}

.table-content table td.product-name a:hover {
    color: var(--stem-theme-1);
}

.table-content table td {
    border-top: medium none;
    padding: 20px 10px;
    vertical-align: middle;
    font-size: 16px;
}

.table-content table th,
.table-content table td {
    border-bottom: 1px solid rgb(234, 237, 255);
    border-left: 1px solid rgb(234, 237, 255);
}

.table-content table td.product-subtotal {
    font-size: 16px;
}

.table-content table td .cart-plus-minus {
    float: none;
    margin: 0px auto;
}

.coupon-all {
    margin-top: 50px;
}

.coupon {
    float: right;
}

@media (max-width: 767px) {
    .coupon {
        float: none;
    }
}

#coupon_code {
    height: 58px;
    border: 2px solid rgb(234, 237, 255);
    padding: 0px 15px;
    margin-left: 10px;
}

@media (max-width: 767px) {
    #coupon_code {
        margin-bottom: 15px;
    }
}

.coupon2 {
    float: left;
}

@media (max-width: 767px) {
    .coupon2 {
        float: none;
        margin-top: 15px;
    }
}

.cart-page-total {
    padding-top: 50px;
}

.cart-page-total>h2 {
    font-size: 25px;
    margin-bottom: 20px;
    text-transform: capitalize;
}

.cart-page-total>ul {
    border: 1px solid rgb(234, 237, 255);
}

.cart-page-total>ul>li {
    list-style: none;
    font-size: 15px;
    color: rgb(111, 113, 114);
    padding: 10px 30px;
    border-bottom: 1px solid rgb(234, 237, 255);
    font-weight: 400;
}

.cart-page-total ul>li>span {
    float: left;
}

.cart-page-total li:last-child {
    border-bottom: 0px;
}

td.product-thumbnail img {
    width: 125px;
}

.coupon-accordion h3 {
    background-color: rgb(247, 247, 247);
    border-top: 3px solid var(--stem-theme-primary);
    font-size: 16px;
    font-weight: 500;
    margin: 0px 0px 25px;
    padding: 1em 3.5em 1em 2em;
    position: relative;
    width: auto;
}

.coupon-accordion h3 span {
    font-weight: 400;
    transition: all 0.3s ease-out 0s;
    cursor: pointer;
}

.coupon-accordion h3 span:hover {
    color: var(--stem-theme-primary);
}

.coupon-accordion h3::before {
    content: "";
    right: 15px;
    top: 13px;
    position: absolute;
    color: var(--stem-theme-1);
    font-family: "Font Awesome 5 Pro";
    font-weight: 700;
}

.coupon-accordion>span {
    color: rgb(111, 113, 114);
    cursor: pointer;
    transition: all 0.3s ease 0s;
    font-weight: 500;
}

.coupon-accordion>span:hover,
p.lost-password a:hover {
    color: var(--stem-common-black);
}

.coupon-content {
    border: 1px solid rgb(234, 237, 255);
    display: none;
    margin-bottom: 20px;
    padding: 30px;
}

.coupon-info p.coupon-text {
    margin-bottom: 15px;
}

.coupon-info p {
    margin-bottom: 0px;
}

.coupon-info p.form-row-first label,
.coupon-info p.form-row-last label {
    display: block;
    color: rgb(111, 113, 114);
}

.coupon-info p.form-row-first label span.required,
.coupon-info p.form-row-last label span.required {
    color: var(--stem-theme-1);
    font-weight: 700;
}

.coupon-info p.form-row-first input,
.coupon-info p.form-row-last input {
    border: 1px solid rgb(234, 237, 255);
    height: 45px;
    margin: 0px 0px 14px;
    max-width: 100%;
    padding: 0px 10px 0px 0px;
    width: 100%;
    outline: none;
    box-shadow: none;
}

.coupon-info p.form-row-first input:focus,
.coupon-info p.form-row-last input:focus {
    border-color: var(--stem-common-black);
}

.coupon-info p.form-row input[type="submit"]:hover,
p.checkout-coupon input[type="submit"]:hover {
    background: none 100% 0px repeat scroll rgb(62, 151, 108);
}

.coupon-info p.form-row input[type="checkbox"] {
    position: relative;
}

.form-row>label {
    margin-top: 15px;
    margin-right: 15px;
    color: rgb(111, 113, 114);
}

.buttons-cart input,
.coupon input[type="submit"],
.buttons-cart a,
.coupon-info p.form-row input[type="submit"] {
    background: none 100% 0px repeat scroll rgb(37, 37, 37);
    border: medium none;
    color: rgb(255, 255, 255);
    display: inline-block;
    float: right;
    font-size: 12px;
    font-weight: 700;
    height: 40px;
    line-height: 40px;
    margin-left: 15px;
    padding: 0px 15px;
    text-transform: uppercase;
    transition: all 0.3s ease 0s;
}

p.lost-password {
    margin-top: 15px;
}

p.lost-password a {
    color: rgb(111, 111, 111);
}

p.checkout-coupon input[type="text"] {
    height: 45px;
    padding: 0px 15px;
    width: 100%;
    border: 1px solid rgb(234, 237, 255);
    margin-bottom: 15px;
    outline: none;
    box-shadow: none;
}

p.checkout-coupon input[type="text"]:focus {
    border-color: var(--stem-common-black);
}

.coupon-checkout-content {
    display: none;
}

.checkbox-form h3 {
    border-bottom: 1px solid rgb(234, 237, 255);
    font-size: 26px;
    margin: 0px 0px 20px;
    padding-bottom: 10px;
    width: 100%;
    font-weight: 500;
}

.country-select {
    margin-bottom: 30px;
    position: relative;
}

.country-select select {
    width: 100%;
    background-color: transparent;
    border: 1px solid rgb(234, 237, 255);
    padding: 0px 10px;
    height: 50px;
}

.country-select label,
.checkout-form-list label {
    color: rgb(111, 113, 114);
    display: block;
    margin: 0px 0px 5px;
}

.country-select label span.required,
.checkout-form-list label span.required {
    color: var(--stem-theme-1);
}

.country-select .nice-select {
    border: 1px solid rgb(234, 237, 255);
    height: 45px;
    padding-right: 10px;
    width: 100%;
    color: rgb(111, 113, 114);
    margin-bottom: 20px;
    border-radius: 0px;
}

.country-select .nice-select::after {
    left: 10px;
}

.country-select .nice-select .list {
    width: 100%;
}

.checkout-form-list {
    margin-bottom: 30px;
}

.checkout-form-list label {
    color: rgb(111, 113, 114);
}

.checkout-form-list input[type="text"],
.checkout-form-list input[type="password"],
.checkout-form-list input[type="email"] {
    background: rgb(255, 255, 255);
    border: 1px solid rgb(234, 237, 255);
    border-radius: 0px;
    height: 45px;
    padding: 0px 10px 0px 0px;
    width: 100%;
    outline: none;
    box-shadow: none;
}

.checkout-form-list input[type="text"]:focus,
.checkout-form-list input[type="password"]:focus,
.checkout-form-list input[type="email"]:focus {
    border-color: var(--stem-common-black);
}

.checkout-form-list input[type="text"]::placeholder,
.checkout-form-list input[type="password"]::placeholder,
.checkout-form-list input[type="email"]::placeholder {
    color: rgb(111, 113, 114);
    opacity: 1;
}

.checkout-form-list input[type="checkbox"] {
    display: inline-block;
    margin-left: 10px;
    position: relative;
    top: 1px;
}

.create-acc label {
    color: rgb(111, 113, 114);
    display: inline-block;
}

.create-account {
    display: none;
}

.ship-different-title h3 label {
    display: inline-block;
    margin-left: 20px;
    color: var(--stem-common-black);
    font-weight: 700;
}

.order-notes textarea {
    border: 1px solid rgb(234, 237, 255);
    height: 120px;
    padding: 15px;
    width: 100%;
    outline: 0px;
    resize: none;
}

.order-notes textarea:focus {
    border-color: var(--stem-common-black);
}

.order-notes textarea::placeholder {
    color: rgb(111, 113, 114);
    opacity: 1;
}

#ship-box-info {
    display: none;
}

.panel-group .panel {
    border-radius: 0px;
}

.panel-default>.panel-heading {
    border-radius: 0px;
}

.your-order {
    padding: 30px 40px 45px;
    border: 3px solid rgb(247, 247, 247);
}

@media (max-width: 767px) {
    .your-order {
        padding: 15px;
    }
}

.your-order h3 {
    border-bottom: 1px solid rgb(234, 237, 255);
    font-size: 30px;
    margin: 0px 0px 20px;
    padding-bottom: 10px;
    width: 100%;
    font-weight: 700;
}

.your-order-table table {
    background: none;
    border: 0px;
    width: 100%;
}

.your-order-table table th,
.your-order-table table td {
    border-bottom: 1px solid rgb(234, 237, 255);
    border-left: medium none;
    color: rgb(111, 113, 114);
    font-size: 14px;
    padding: 15px 0px;
    text-align: right;
}

@media (max-width: 767px) {

    .your-order-table table th,
    .your-order-table table td {
        padding-left: 10px;
    }
}

.your-order-table table th {
    border-top: medium none;
    color: rgb(111, 113, 114);
    font-weight: normal;
    text-align: right;
    vertical-align: middle;
    white-space: nowrap;
    width: 250px;
}

.panel-body>p {
    color: rgb(34, 34, 34);
}

.your-order-table table .shipping ul li {
    list-style: none;
}

.your-order-table table .shipping ul li input {
    position: relative;
    top: 2px;
}

.your-order-table table .shipping ul li label {
    color: rgb(111, 113, 114);
}

.your-order-table table .shipping th {
    vertical-align: top;
}

.your-order-table table .order-total th {
    border-bottom: 0px;
    font-size: 14px;
}

.your-order-table table .order-total td {
    border-bottom: medium none;
}

.your-order-table table tr.cart_item:hover {
    background: rgb(249, 249, 249);
}

.your-order-table table tr.order-total td span {
    color: var(--stem-common-black);
    font-size: 18px;
    font-weight: 500;
}

.payment-method {
    margin-top: 40px;
}

.payment-method .accordion-item:last-of-type {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.payment-method .accordion-item {
    background-color: rgb(255, 255, 255);
    border-width: 0px 0px 1px;
    border-top-style: initial;
    border-right-style: initial;
    border-left-style: initial;
    border-top-color: initial;
    border-right-color: initial;
    border-left-color: initial;
    border-image: initial;
    border-bottom-style: solid;
    border-bottom-color: rgb(231, 231, 231);
}

.payment-method .accordion-button {
    font-size: 16px;
    font-weight: 500;
    color: var(--stem-common-black);
    padding: 23px 0px;
    border: none;
}

.payment-method .accordion-button:focus {
    box-shadow: none;
}

.payment-method .accordion-button::after {
    position: absolute;
    content: "";
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    font-family: var(--stem-ff-fontawesome);
    font-size: 16px;
    font-weight: 400;
    margin-right: 0px;
    background-image: none;
    color: var(--stem-theme-1);
}

.payment-method .accordion-button:not(.collapsed) {
    color: var(--stem-common-black);
    background-color: var(--stem-common-white);
    box-shadow: none;
}

.payment-method .accordion-button:not(.collapsed)::after {
    content: "";
}

.payment-method .accordion-body {
    padding: 8px 0px 40px;
}

.payment-method .accordion-collapse {
    border: none;
}

.panel-title>a {
    display: block;
}

.order-button-payment input {
    background: none 100% 0px repeat scroll rgb(35, 35, 35);
    border: medium none;
    color: rgb(255, 255, 255);
    font-size: 15px;
    font-weight: 600;
    height: 40px;
    margin: 0px;
    padding: 0px;
    text-transform: uppercase;
    transition: all 0.3s ease 0s;
    width: 100%;
}

.order-button-payment input:hover {
    background: none 100% 0px repeat scroll rgb(62, 151, 108);
}

.payment-method .btn-link {
    background: no-repeat;
    border: medium none;
    border-radius: 0px;
    color: rgb(68, 68, 68);
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1;
    margin-bottom: 0px;
    padding: 3px 10px;
    text-align: center;
    text-transform: uppercase;
    transition: all 0.3s ease 0s;
    vertical-align: middle;
    white-space: nowrap;
    text-decoration: none;
}

.payment-method .card {
    background-color: rgb(255, 255, 255);
    border: 1px solid rgb(234, 237, 255);
    border-radius: 0px;
    margin-bottom: 10px;
}

.payment-method .accordion .card:first-of-type {
    border: 1px solid rgb(234, 237, 255);
}

.card-header:first-child {
    border-radius: 0px;
}

.payment-method .card-header {
    background-color: rgb(255, 255, 255);
    border-bottom: 1px solid rgb(234, 237, 255);
}

.order-button-payment button {
    width: 100%;
}

.cart-area .table-content table {
    background: rgb(255, 255, 255);
    border-color: rgb(234, 237, 255);
    border-radius: 0px;
    border-style: solid;
    border-width: 1px 1px 0px 0px;
    text-align: center;
    width: 100%;
    margin-bottom: 0px;
}

.cart-area .table> :not(:first-child) {
    border: 0px;
}

.cart-area .table-content .product-quantity {
    float: none;
}

.cart-area .table-content table td.product-name {
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
}

.cart-area .table> :not(:last-child)> :last-child>* {
    border-bottom-color: rgb(234, 237, 255);
}

.cart-area .table-content table td.product-name a:hover {
    color: var(--stem-common-black);
}

.cart-area .table-content table td {
    border-top: medium none;
    padding: 20px 10px;
    vertical-align: middle;
    font-size: 16px;
}

.cart-area .table-content table th,
.cart-area .table-content table td {
    border-bottom: 1px solid rgb(234, 237, 255);
    border-left: 1px solid rgb(234, 237, 255);
}

.cart-area .table td,
.cart-area .table th {
    border-top: 1px solid rgb(234, 237, 255);
}

.cart-area .table-content table td.product-subtotal {
    font-size: 16px;
}

.cart-area .table-content table td .cart-plus-minus {
    float: none;
    margin: 0px auto;
}

.cart-area .coupon-all {
    margin-top: 50px;
}

.cart-area .coupon {
    float: right;
}

@media (max-width: 767px) {
    .cart-area .coupon {
        float: none;
    }
}

.cart-area #coupon_code {
    height: 50px;
    border: 2px solid rgb(234, 237, 255);
    padding: 0px 15px;
    margin-left: 10px;
    outline: none;
    box-shadow: none;
}

.cart-area #coupon_code:focus {
    border-color: var(--stem-common-black);
}

@media (max-width: 767px) {
    .cart-area #coupon_code {
        margin-bottom: 15px;
    }
}

.cart-area .coupon2 {
    float: left;
}

@media (max-width: 767px) {
    .cart-area .coupon2 {
        float: none;
        margin-top: 15px;
    }
}

.cart-area .cart-page-total {
    padding-top: 50px;
}

.cart-area .cart-page-total>h2 {
    font-size: 25px;
    margin-bottom: 20px;
    text-transform: capitalize;
}

.cart-area .cart-page-total>ul {
    border: 1px solid rgb(234, 237, 255);
}

.cart-area .cart-page-total>ul>li {
    list-style: none;
    font-size: 15px;
    color: rgb(111, 113, 114);
    padding: 10px 30px;
    border-bottom: 1px solid rgb(234, 237, 255);
    font-weight: 400;
}

.cart-area .cart-page-total ul>li>span {
    float: left;
}

.cart-area .cart-page-total li:last-child {
    border-bottom: 0px;
}

.cart-area td.product-thumbnail img {
    width: 125px;
}

.cart-area .product-quantity-form {
    margin: auto;
    width: 122px;
    height: 58px;
    border: 2px solid rgb(218, 218, 218);
    text-align: center;
    position: relative;
    transition: all 0.3s ease-out 0s;
}

.cart-area .product-quantity-form:hover {
    border-color: var(--stem-common-black);
}

.cart-area .cart-plus,
.cart-area .cart-minus {
    position: absolute;
    top: 50%;
    right: 0px;
    transform: translateY(-50%);
    width: 45px;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    font-size: 14px;
    background: transparent;
    border: none;
    outline: none;
}

.cart-area .cart-plus:hover,
.cart-area .cart-minus:hover {
    cursor: pointer;
    color: var(--stem-common-black);
    background: transparent;
}

.cart-area .cart-plus {
    right: auto;
    left: 0px;
}

.cart-area .cart-input {
    height: 58px;
    width: 32px;
    text-align: center;
    font-size: 14px;
    border: none;
    display: inline-block;
    vertical-align: middle;
    margin: 0px -3px;
    padding-bottom: 4px;
    background: transparent;
}

.cart-area .cart-input:focus {
    outline: none;
}

.sign__wrapper {
    padding: 50px 70px 45px;
    margin: 0px 30px;
    border-radius: 10px;
    box-shadow: rgba(2, 2, 26, 0.14) 0px 40px 80px 0px;
    z-index: 11;
}

@media (max-width: 575px) {
    .sign__wrapper {
        margin: 0px;
        padding: 30px 20px 25px;
    }
}

.sign__shape img {
    position: absolute;
    z-index: -1;
}

.sign__shape img.man-1 {
    right: 50%;
    top: 50%;
    z-index: -1;
    transform: translateX(50%) translateY(-50%);
}

.sign__shape img.man-2 {
    left: 24%;
    top: 65%;
}

.sign__shape img.circle {
    left: 32%;
    top: 38%;
    animation: 5s linear 0s infinite alternate none running signCircle;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .sign__shape img.circle {
        left: 25%;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sign__shape img.circle {
        left: 22%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sign__shape img.circle {
        left: 11%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sign__shape img.circle {
        left: 4%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__shape img.circle {
        left: 2%;
    }
}

@media (max-width: 575px) {
    .sign__shape img.circle {
        display: none;
    }
}

.sign__shape img.dot {
    left: 34%;
    top: 43%;
    animation: 5s linear 0s infinite alternate none running signDot;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .sign__shape img.dot {
        left: 29%;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sign__shape img.dot {
        left: 26%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sign__shape img.dot {
        left: 18%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sign__shape img.dot {
        left: 5%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__shape img.dot {
        left: 3%;
    }
}

@media (max-width: 575px) {
    .sign__shape img.dot {
        display: none;
    }
}

.sign__shape img.bg {
    right: 33%;
    top: 26%;
    opacity: 0.06;
    max-width: 100%;
    animation: 5s linear 0s infinite alternate none running signBg;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sign__shape img.bg {
        right: 10%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__shape img.bg {
        right: 0%;
    }
}

@media (max-width: 575px) {
    .sign__shape img.bg {
        display: none;
    }
}

.sign__shape img.zigzag {
    right: 32%;
    top: 43%;
    animation: 5s linear 0s infinite alternate none running signZigzag;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .sign__shape img.zigzag {
        right: 24%;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sign__shape img.zigzag {
        right: 23%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sign__shape img.zigzag {
        right: 11%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sign__shape img.zigzag {
        right: 3%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__shape img.zigzag {
        right: 2%;
    }
}

@media (max-width: 575px) {
    .sign__shape img.zigzag {
        display: none;
    }
}

.sign__shape img.flower {
    bottom: 13%;
    left: 30%;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
    .sign__shape img.flower {
        left: 24%;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .sign__shape img.flower {
        left: 24%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .sign__shape img.flower {
        left: 12%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sign__shape img.flower {
        left: 3%;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__shape img.flower {
        left: 1%;
    }
}

@media (max-width: 575px) {
    .sign__shape img.flower {
        left: 1%;
        bottom: 3%;
    }
}

.sign__header {
    padding: 0px 35px;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .sign__header {
        padding: 0px 10px;
    }
}

@media (max-width: 575px) {
    .sign__header {
        padding: 0px;
    }
}

.sign__header p {
    margin-bottom: 0px;
    position: relative;
    padding: 0px 40px;
    display: inline-block;
}

.sign__header p span {
    position: absolute;
    top: 40%;
    right: 0px;
    transform: translateY(-50%);
}

.sign__header p span:last-child {
    right: auto;
    left: 0px;
}

.sign__header p a:hover {
    color: var(--stem-theme-primary);
}

.sign__social {
    display: block;
    height: 50px;
    border-radius: 6px;
    position: relative;
    line-height: 52px;
    padding-right: 23px;
    z-index: 1;
    overflow: hidden;
    font-size: 16px;
}

.sign__social::after {
    position: absolute;
    content: "";
    right: -55%;
    top: 45%;
    transform: translateY(-50%);
    height: 220px;
    width: 220px;
    background: rgb(51, 96, 189);
    border-radius: 50%;
    z-index: -1;
}

@media (max-width: 575px) {
    .sign__social::after {
        right: -62%;
    }
}

.sign__social i {
    color: var(--stem-common-white);
    font-size: 16px;
    margin-left: 50px;
}

@media (max-width: 575px) {
    .sign__social i {
        margin-left: 35px;
    }
}

.sign__social:hover {
    color: var(--stem-common-white);
}

.sign__social:hover::after {
    width: 100%;
    height: 150%;
    right: 0px;
    border-radius: 6px;
}

.sign__social.g-plus::after {
    background: rgb(233, 62, 48);
}

.sign__form h5 {
    font-size: 16px;
    font-weight: 500;
    color: var(--stem-common-black);
    margin-bottom: 11px;
}

.sign__input {
    position: relative;
}

.sign__input input {
    width: 100%;
    height: 48px;
    line-height: 52px;
    padding: 0px 50px;
    font-size: 14px;
    border: 1px solid rgb(204, 204, 204);
    color: var(--stem-common-black);
    border-radius: 6px;
    font-weight: 300;
}

.sign__input input:focus {
    outline: none;
    background: var(--stem-common-white);
    border-color: var(--stem-theme-primary);
    box-shadow: rgba(8, 0, 42, 0.2) 0px 1px 4px 0px;
}

.sign__input i {
    position: absolute;
    top: 51%;
    transform: translateY(-50%);
    right: 25px;
    font-size: 14px;
}

.sign__agree input {
    margin: 0px;
    appearance: none;
    display: block;
    width: 26px;
    height: 19px;
    background: transparent;
    border: 1px solid rgb(204, 204, 204);
    outline: none;
    border-radius: 4px;
}

.sign__agree input:checked {
    position: relative;
    background-color: var(--stem-theme-primary);
    border-color: transparent;
}

.sign__agree input:checked::after {
    box-sizing: border-box;
    content: "";
    position: absolute;
    font-family: var(--stem-ff-fontawesome);
    font-size: 10px;
    color: var(--stem-common-white);
    top: 46%;
    right: 50%;
    transform: translate(50%, -50%);
}

.sign__agree input:hover {
    cursor: pointer;
}

.sign__agree label {
    padding-right: 10px;
    margin-top: -4px;
    font-size: 0.75rem;
    font-weight: 300;
}

.sign__agree label:hover {
    cursor: pointer;
}

.sign__agree label a {
    color: var(--stem-common-black);
    font-weight: 500;
}

.sign__agree label a:hover {
    color: var(--stem-theme-primary);
}

.sign__forgot a:hover {
    color: var(--stem-theme-primary);
}

.sign__new p {
    margin-bottom: 0px;
    font-weight: 500;
}

.sign__new p a {
    color: var(--stem-theme-primary);
}

@keyframes signDot {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(50px);
    }
}

@keyframes signZigzag {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(50px);
    }
}

@keyframes signCircle {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-360deg);
    }
}

.footer__widget-logo img {
    width: 150px;
}

.footer__widget p {
    color: var(--stem-text-1);
    font-size: 16px;
    margin-bottom: 20px;
}

.footer__widget-space {
    padding-top: 40px;
    padding-bottom: 40px;
}

.footer__widget-title {
    font-size: 20px;
    padding-top: 15px;
    margin-bottom: 35px;
    font-weight: 500;
    position: relative;
}

.footer__widget ul {
    overflow: hidden;
}

.footer__widget ul li {
    list-style: none;
    margin-bottom: 24px;
    line-height: 1;
}

.footer__widget ul li:last-child {
    margin-bottom: 0px;
}

.footer__widget ul li a {
    font-size: 14px;
    color: var(--stem-text-body);
    position: relative;
}

.footer__widget ul li a:hover {
    color: var(--stem-theme-primary);
}

.footer__blog-meta {
    margin-bottom: 3px;
}

.footer__blog-meta span {
    color: var(--stem-text-1);
}

.footer__blog-meta span i {
    color: var(--stem-theme-primary);
    margin-left: 3px;
}

.footer__blog-meta span:hover {
    color: var(--stem-common-black);
}

.footer__blog-title {
    font-size: 15px;
    text-transform: uppercase;
    color: var(--stem-common-black);
    margin-bottom: 0px;
    line-height: 1.4;
}

.footer__blog-title a:hover {
    color: var(--stem-theme-primary);
}

.footer__info-item {
    margin-bottom: 20px;
}

.footer__info-icon i {
    font-size: 20px;
    color: var(--stem-theme-primary);
}

.footer__info-text h4 {
    color: var(--stem-common-black);
    font-size: 18px;
    margin-bottom: 0px;
}

.footer__info-text a {
    color: var(--stem-text-1);
}

.footer__contact p {
    color: var(--stem-text-1);
    font-size: 16px;
    margin-bottom: 20px;
}

.footer__contact iframe {
    width: 100%;
    height: 110px;
    filter: grayscale(100%);
}

.footer__subscribe p {
    color: var(--stem-text-1);
    font-size: 16px;
    margin-bottom: 20px;
}

.footer__subscribe-box {
    position: relative;
}

.footer__subscribe-input.has-border-radius {
    border-radius: 4px;
    overflow: hidden;
}

.footer__subscribe-input input {
    width: 100%;
    height: 50px;
    padding: 0px 23px 0px 160px;
    border: 1px solid transparent;
    background-color: var(--stem-common-white);
    font-size: 16px;
    color: var(--stem-common-black);
}

.footer__subscribe-input input:focus {
    border-color: var(--stem-theme-primary);
}

.footer__subscribe-input input::-webkit-input-placeholder {
    color: var(--stem-text-3);
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .footer__subscribe-input input {
        padding-left: 23px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .footer__subscribe-input input {
        padding-left: 160px;
    }
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px) {
    .footer__subscribe-input input {
        padding-left: 23px;
    }
}

.footer__copyright p {
    font-size: 16px;
}

.footer__copyright p a {
    color: var(--stem-theme-primary);
    opacity: 0.7;
}

.footer__copyright p a:hover {
    opacity: 0.9;
}

.footer__social span {
    display: inline-block;
}

.footer__social span:not(:last-child) {
    margin-left: 10px;
}

.footer__social span a {
    display: inline-block;
    font-size: 15px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    line-height: 32px;
    text-align: center;
    background: rgb(13, 136, 240);
    color: var(--stem-common-white);
    border: 1px solid transparent;
}

.footer__social span a:hover {
    background-color: var(--stem-common-white);
    color: rgb(13, 136, 240);
    border: 1px solid var(--stem-theme-primary);
}

.footer__social span a.tw {
    background: rgb(3, 169, 244);
}

.footer__social span a.tw:hover {
    background-color: var(--stem-common-white);
    color: rgb(3, 169, 244);
    border-color: rgb(3, 169, 244);
}

.footer__social span a.yt {
    background: rgb(210, 23, 63);
    border-color: rgb(210, 23, 63);
}

.footer__social span a.yt:hover {
    background-color: var(--stem-common-white);
    color: rgb(210, 23, 63);
}

.footer__top {
    position: relative;
    padding-top: 100px;
    padding-bottom: 40px;
    z-index: 1;
}

.footer__bottom {
    border-top: 1px solid rgba(0, 15, 47, 0.06);
    border-right-color: rgba(0, 15, 47, 0.06);
    border-bottom-color: rgba(0, 15, 47, 0.06);
    border-left-color: rgba(0, 15, 47, 0.06);
    padding-top: 25px;
    padding-bottom: 25px;
}

.footer__bottom p {
    margin-bottom: 0px;
}

.footer-sub-btn {
    position: absolute;
    top: 0px;
    left: 0px;
    display: inline-block;
    height: 100%;
    line-height: 50px;
    padding: 0px 30px;
    text-align: center;
    font-size: 15px;
    color: var(--stem-common-white);
    background-color: var(--stem-theme-primary);
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .footer-sub-btn {
        position: relative;
        margin-top: 15px;
        width: 100%;
    }
}

.footer-sub-btn:hover {
    color: var(--stem-common-white);
    background-color: var(--stem-common-black);
}

.footer-col-1 {
    padding-left: 35px;
}

@media (max-width: 575px),
only screen and (min-width: 576px) and (max-width: 767px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .footer-col-1 {
        padding-left: 0px;
    }
}

.footer-col-2 {
    padding-right: 30px;
    padding-left: 30px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .footer-col-2 {
        padding-left: 0px;
        padding-right: 0px;
    }
}

.footer-col-3 {
    padding-right: 60px;
    padding-left: 60px;
}

@media only screen and (min-width: 576px) and (max-width: 767px),
(max-width: 575px),
only screen and (min-width: 768px) and (max-width: 991px),
only screen and (min-width: 992px) and (max-width: 1199px) {
    .footer-col-3 {
        padding-left: 0px;
        padding-right: 0px;
    }
}

.stem-feature__icon img {
    width: 5rem;
    color: #14c5ce;
}

.stem-feature__item p {
    margin: 0rem 1rem;
}

.stem-preloader img,
.stem-preloader svg path {
    stroke: #ffffff;
    fill: #05a5a5;
}


.stem-blog__thub img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.stem-blog__thub {
    width: 45%;
}

.stem-blog__content {
    width: 65%;
}


.page__title-pre.cat-color-3 {
    background: #ee9c2d;
}


.breadcrumb__overlay-2::after {
    position: absolute;
    content: "";
    right: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: rgb(2 75 201);
    z-index: -1;
}


.offcanvas-md {
    width: 800px;
}

.signup-wrapper {
    padding: 1.5rem 4rem;
    height: 100vh;
    overflow: scroll;
}



/* office365 login button */

.wpo365-mssignin-wrapper {
    box-sizing: border-box;
    text-align: center;
}

.wpo365-mssignin-spacearound {
    display: inline-block;
}

.wpo365-mssignin-wrapper form {
    display: none;
}

.wpo365-mssignin-button {
    border: 1px solid #8c8c8c;
    background: #ffffff;
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    cursor: pointer;
    max-height: 41px;
    min-height: 41px;
    height: 41px;
}

.wpo365-mssignin-logo {
    padding-left: 6px;
    padding-right: 12px;
    -webkit-flex-shrink: 1;
    -moz-flex-shrink: 1;
    flex-shrink: 1;
    box-sizing: content-box;
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.wpo365-mssignin-label {
    padding-left: 12px;
    padding-right: 6px;
    font-weight: 600;
    color: #5e5e5e;
    font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: 15px;
    -webkit-flex-shrink: 1;
    -moz-flex-shrink: 1;
    flex-shrink: 1;
    height: 21px;
    line-height: 21px;
}

.wpo365-mssignin-logo svg {
    width: 1.2rem;
    height: auto;
}

.wpo365-mssignin-button:hover {
    border: 1px solid #717171;

}

.terms-policy p {
    color: gray;
    font-size: 0.80rem;
}

.terms-policy a {
    font-weight: 500;
}

.terms-policy a:hover {
    color: #05a5a5;
}

.sign__input-wrapper h5 {
    font-weight: 300;
    margin-bottom: 8px;
    font-size: 1rem;
    font-weight: 300;
    color: #5b5a5a;
}

.nice-select-wrapper .nice-select {
    width: 100%;
}


.nice-select-wrapper .nice-select.open .list {
    width: 100%;
}

.e-btn.previous {
    background: #f5f5f5;
    color: #323f59;
}

.e-btn.previous:hover {
    background: #dadada;
}


.signup-hero .stem-hero__shapes-4 img {
    width: 100%;
    filter: invert(1);
}


.flex {
    display: flex;
}

.congrats-image {
    width: 100%;
    height: 185px;
    object-fit: contain;
}


/* wizard styles */


.wizard {
    overflow: hidden;
}

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

.wizard .wizard-header .steps {}

.wizard .wizard-header .steps .wizard-step {
    background: #2c79ff1a;
    color: #2c79ff;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* opacity: 0.2; */
    border-radius: 0.25rem;
    transition: all 0.8s;
}

.wizard .wizard-header .steps .wizard-step.active {
    opacity: 1;
    color: white;
    background: #2c79ff;
}

.wizard .wizard-body {
    position: relative;
    transition: all 0.3s cubic-bezier(0.68, -0.3, 0.37, 0.6);
}

.wizard .wizard-body .step {
    transition: all 0.3s ease-in-out;
    position: absolute;
    width: 100%;
    top: 0;
    right: -100%;
    opacity: 0;
}

.wizard .wizard-body .step.initial {
    position: relative;
}

.wizard .wizard-body .step.off {
    opacity: 0 !important;
    right: 100% !important;
}

.wizard .wizard-body .step.active {
    right: 0;
    margin-left: 0;
    margin-top: 0;
    opacity: 1;
    transition: all 0.4s linear;
    transition-delay: 0.1s;
}

.wizard .wizard-footer {
    /* margin-top: 30px; */
}



.select2-container {
    width: 100% !important;
    padding: 0;
}

/* select2 updates */

.select2-container--bootstrap-5.select2-container--focus .select2-selection,
.select2-container--bootstrap-5.select2-container--open .select2-selection {
    outline: none;
    background: var(--stem-common-white);
    border-color: var(--stem-theme-primary);
    box-shadow: rgb(8 0 42 / 20%) 0px 1px 4px 0px;
}


.select2-container--bootstrap-5 .select2-dropdown {
    z-index: 1056;
    overflow: hidden;
    color: #212529;
    background-color: #fff;
    border-radius: 0.25rem;
    border-color: var(--stem-theme-primary);
}


.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
    padding: 0;
    font-weight: 400;
    line-height: 2.2;
    color: #212529;
}

.select2-container--bootstrap-5 .select2-selection--single {
    height: 48px;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option {
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    font-weight: 300;
    font-size: 0.9rem;
}


.select2-container--bootstrap-5 .select2-dropdown .select2-search .select2-search__field:focus {
    outline: none;
    background: var(--stem-common-white);
    border-color: var(--stem-theme-primary);
    box-shadow: rgb(8 0 42 / 10%) 0px 1px 4px 0px;
}



/* map */
.interaction-map svg {
    width: 100%;
}


tspan {
    font-family: 'Alexandria', sans-serif;
    font-weight: 400;
}

#chartdiv {
    width: 100%;
    height: 500px;
}


span.apexcharts-legend-text {
    padding-right: 5px !important;
}


.chart-card.mb-30 {
    padding: 2rem 0;
    background: white;
}

.icon-website {
    background: #3a53a41a;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #323f59;
}

hr.custom-hr {
    color: #b4b4b4;
}

.slide__img {
    width: 100% !important;
    height: 400px !important;
    /* object-fit: cover; */
    background: white;
}

.hero__slider {
    width: 100%;
    position: relative;
    z-index: 2;
}

.hero__slider .slick-list {
    border-radius: 10px;
    box-shadow: 0 20px 50px 0 rgba(0, 0, 0, .15) !important;
}


.hero-row {
    /* padding: 1.8rem 1rem;
        background: #FED04E; */
    border-radius: 10px;
    margin: 0rem 0rem;
}

.hero__section {
    background: #FED04E;
}

.stem-feature-2__section {
    margin-top: -85px;
    position: relative;
    z-index: 5;
}

.stem-btn-xl {
    padding: 1rem 3rem;
    background: white;
    border-radius: 36px;
    box-shadow: rgb(164 192 210 / 22%) 0px 10px 30px 0px !important;

}

.stem-btn-xl:hover {
    background: rgb(244, 243, 243);
    box-shadow: rgb(164 192 210 / 40%) 0px 10px 30px 0px !important;

}

.hero__section:before {
    content: '';
    background: #f0f6f9;
    position: absolute;
    width: 34%;
    height: 100%;
    left: 0;
    top: 0;
}

@media (min-width: 992px) {

    .slider,
    .slide {
        height: 400px;
    }
}

.slide {
    position: relative;
    transition: 1s;
}

.slide .slide__img {
    width: 100%;
    height: auto;
    overflow: hidden;
}

@media (min-width: 992px) {
    .slide .slide__img {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }
}

.slide .slide__img img {
    max-width: 100%;
    height: 400px;
    opacity: 1 !important;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    transition: all 1s ease;
}

.slide .slide__content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slide .slide__content.slide__content__left {
    left: 15%;
    transform: translate(-15%, -50%);
}

.slide .slide__content.slide__content__right {
    right: 15%;
    left: auto;
    transform: translate(5%, -50%);
}

.slide .slide__content--headings {
    color: #FFF;
}

.slide .slide__content--headings h2 {
    font-size: 4.5rem;
    margin: 10px 0;
}

.animated {
    transition: all 0.5s ease;
}

.slide .slide__content--headings .top-title {
    font-family: "Playball", cursive;
    font-size: 2.5rem;
}

.slide .slide__content--headings .title {
    font-size: 3.5rem;
}

.slide .slide__content--headings .button-custom {
    text-decoration: none;
    color: #333;
    padding: 1.2rem 2.5rem;
    font-size: 1.5rem;
}

[data-animation-in] {
    /* opacity: 0; */
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    transition: opacity 0.5s ease 0.3s;
    transition: 1s;
}

.slick-dotted .slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: 25px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    border: 0;
    display: block;
    outline: none;
    line-height: 0px;
    font-size: 0px;
    color: transparent;
    padding: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.simple-dots .slick-dots li {
    width: 20px;
    height: 20px;
}

.simple-dots .slick-dots li button {
    border-radius: 50%;
    background-color: white;
    opacity: 0.25;
    width: 20px;
    height: 20px;
}

.simple-dots .slick-dots li button:hover,
.simple-dots .slick-dots li button:focus {
    opacity: 1;
}

.simple-dots .slick-dots li.slick-active button {
    color: white;
    opacity: 0.75;
}

.stick-dots .slick-dots li {
    height: 3px;
    width: 50px;
}

.stick-dots .slick-dots li button {
    position: relative;
    background-color: white;
    opacity: 0.25;
    width: 50px;
    height: 3px;
    padding: 0;
}

.stick-dots .slick-dots li button:hover,
.stick-dots .slick-dots li button:focus {
    opacity: 1;
}

.stick-dots .slick-dots li.slick-active button {
    color: white;
    opacity: 0.75;
}

.stick-dots .slick-dots li.slick-active button:hover,
.stick-dots .slick-dots li.slick-active button:focus {
    opacity: 1;
}

/* /////////// IMAGE ZOOM /////////// */
@-webkit-keyframes zoomInImage {
    from {
        transform: scale3d(1, 1, 1);
        transition: 1s;
    }

    to {
        transform: scale3d(1.1, 1.1, 1.1);
        transition: 1s;
    }
}

@keyframes zoomInImage {
    from {
        transform: scale3d(1, 1, 1);
        transition: 1s;
    }

    to {
        transform: scale3d(1.1, 1.1, 1.1);
        transition: 1s;
    }
}

.zoomInImage {
    -webkit-animation-name: zoomInImage;
    animation-name: zoomInImage;
}

@-webkit-keyframes zoomOutImage {
    from {
        transform: scale3d(1.1, 1.1, 1.1);
        transition: 1s;
    }

    to {
        transform: scale3d(1, 1, 1);
        transition: 1s;
    }
}

@keyframes zoomOutImage {
    from {
        transform: scale3d(1.1, 1.1, 1.1);
        transition: 1s;
    }

    to {
        transform: scale3d(1, 1, 1);
        transition: 1s;
    }
}

.zoomOutImage {
    -webkit-animation-name: zoomOutImage;
    animation-name: zoomOutImage;
    transition: 1s;
}

.slick-nav {
    --active: #fff;
    --border:
        rgba(255, 255, 255, .12);
    width: 44px;
    height: 44px;
    position: absolute;
    cursor: pointer;
    top: calc(50% - 25px);
}

.slick-nav.prev-arrow {
    left: 3%;
    transform: scaleX(-1);
    z-index: 999;
}

.slick-nav.next-arrow {
    left: auto;
    right: 3%;
}

.slick-nav i {
    display: block;
    position: absolute;
    margin: -10px 0 0 -10px;
    width: 20px;
    height: 20px;
    left: 50%;
    top: 50%;
}

.slick-nav i:before,
.slick-nav i:after {
    content: "";
    width: 10px;
    height: 2px;
    border-radius: 1px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: var(--active);
    margin: -1px 0 0 -5px;
    display: block;
    transform-origin: 9px 50%;
}

.slick-nav i:before {
    transform: rotate(-40deg);
}

.slick-nav i:after {
    transform: rotate(40deg);
}

.slick-nav:before,
.slick-nav:after {
    content: "";
    display: block;
    position: absolute;
    left: 1px;
    right: 1px;
    top: 1px;
    bottom: 1px;
    border-radius: 50%;
    border: 2px solid var(--border);
}

.slick-nav svg {
    width: 44px;
    height: 44px;
    display: block;
    position: relative;
    z-index: 1;
    color: var(--active);
    stroke-width: 2px;
    stroke-dashoffset: 126;
    stroke-dasharray: 126 126 0;
    transform: rotate(0deg);
}

.slick-nav.animate svg {
    -webkit-animation: stroke 1s ease forwards 0.3s;
    animation: stroke 1s ease forwards 0.3s;
}

.slick-nav.animate i {
    -webkit-animation: arrow 1.6s ease forwards;
    animation: arrow 1.6s ease forwards;
}

.slick-nav.animate i:before {
    -webkit-animation: arrowUp 1.6s ease forwards;
    animation: arrowUp 1.6s ease forwards;
}

.slick-nav.animate i:after {
    -webkit-animation: arrowDown 1.6s ease forwards;
    animation: arrowDown 1.6s ease forwards;
}

@-webkit-keyframes stroke {
    52% {
        transform: rotate(-180deg);
        stroke-dashoffset: 0;
    }

    52.1% {
        transform: rotate(-360deg);
        stroke-dashoffset: 0;
    }

    100% {
        transform: rotate(-180deg);
        stroke-dashoffset: 126;
    }
}

@keyframes stroke {
    52% {
        transform: rotate(-180deg);
        stroke-dashoffset: 0;
    }

    52.1% {
        transform: rotate(-360deg);
        stroke-dashoffset: 0;
    }

    100% {
        transform: rotate(-180deg);
        stroke-dashoffset: 126;
    }
}

@-webkit-keyframes arrow {

    0%,
    100% {
        transform: translateX(0);
        opacity: 1;
    }

    23% {
        transform: translateX(17px);
        opacity: 1;
    }

    24%,
    80% {
        transform: translateX(-22px);
        opacity: 0;
    }

    81% {
        opacity: 1;
        transform: translateX(-22px);
    }
}

@keyframes arrow {

    0%,
    100% {
        transform: translateX(0);
        opacity: 1;
    }

    23% {
        transform: translateX(17px);
        opacity: 1;
    }

    24%,
    80% {
        transform: translateX(-22px);
        opacity: 0;
    }

    81% {
        opacity: 1;
        transform: translateX(-22px);
    }
}

@-webkit-keyframes arrowUp {

    0%,
    100% {
        transform: rotate(-40deg) scaleX(1);
    }

    20%,
    80% {
        transform: rotate(0deg) scaleX(0.1);
    }
}

@keyframes arrowUp {

    0%,
    100% {
        transform: rotate(-40deg) scaleX(1);
    }

    20%,
    80% {
        transform: rotate(0deg) scaleX(0.1);
    }
}

@-webkit-keyframes arrowDown {

    0%,
    100% {
        transform: rotate(40deg) scaleX(1);
    }

    20%,
    80% {
        transform: rotate(0deg) scaleX(0.1);
    }
}

@keyframes arrowDown {

    0%,
    100% {
        transform: rotate(40deg) scaleX(1);
    }

    20%,
    80% {
        transform: rotate(0deg) scaleX(0.1);
    }
}

.stem-event__meta {
    /* padding-left: 30px; */
    /* padding-right: 30px; */
}


.event-cat {
    color: #858585;
}

.stem-testimonial__arrows {
    z-index: 888;
    top: 50px;
    width: 100%;
    height: 20px;
}


.stem-testimonial-2__slider {
    /* padding: 0rem 2rem; */
}


.stem-courses__tab-content {
    z-index: 2;
}

.stem-courses__section .stem-event-2__shapes-1 {
    position: absolute;
    top: 0;
    left: 10%;
    right: auto;
    animation: 6s ease 0s infinite alternate none running stem-float-1;
}

.stem-courses__section .stem-event-2__shapes-1 img {
    width: 501px;
    position: relative;
    right: 19px !important;
}



.reveal {
    position: relative;
    transform: translateY(150px);
    opacity: 0;
    transition: 1s all ease;
}

.reveal.active {
    transform: translateY(0);
    opacity: 1;
}



.slide__item_two .slide__img {
    width: auto !important;
    position: relative;
    top: 0;
    transform: initial;
    background: transparent;
    height: auto !important;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    overflow: initial !important;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 3rem;
}

.slide__item_two .slide__img img {
    width: 35rem;
    height: 35rem;
    object-fit: cover;
    border-radius: 50%;
    z-index: 3;
}


.hero__section_2 {
    background: #05a5a5;
    position: relative;
    z-index: 2;
}


.slide__item_two .stem-hero__content h3 {
    color: white;
}


.slide__item_two .stem-hero__content p {
    color: white;
}


.slide__item_two.slide {
    /* width: 100% !important; */
    height: auto;
}


.hero__slider_two.slider {
    height: auto !important;
}



.particle-network-animation {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background-color: unset;
    z-index: 1;
}

.particle-network-animation::before {
    z-index: -2;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* background-image: url(https://images.unsplash.com/photo-1450849608880-6f787542c88a?ixlib=rb-0.3.5&q=80&fm=jpg&crop=entropy&s=786a67dca1d8791d181bfd90b16240d9); */
    background-position: center center;
    background-size: cover;
    opacity: 0.2;
    background-color: transparent;
}

.glow {
    z-index: -1;
    position: fixed;
    top: 50%;
    left: 50%;
    background-image: radial-gradient(circle closest-side, rgba(230, 4, 4, 0.275), transparent);
}

.glow-1 {
    width: 150vw;
    height: 150vh;
    margin-top: -75vh;
    margin-left: -75vw;
    animation: glow-1-move 25s linear infinite both;
}

@keyframes glow-1-move {
    from {
        transform: translate(-100%, 100%);
    }

    to {
        transform: translate(100%, -100%);
    }
}

.glow-2 {
    width: 100vw;
    height: 100vh;
    margin-top: -50vh;
    margin-left: -50vw;
    animation: glow-2-move 25s linear 8.3333333333s infinite both;
}

@keyframes glow-2-move {
    from {
        transform: translate(-100%, 0%);
    }

    to {
        transform: translate(100%, 100%);
    }
}

.glow-3 {
    width: 120vw;
    height: 120vh;
    margin-top: -60vh;
    margin-left: -60vw;
    animation: glow-3-move 25s linear 16.6666666667s infinite both;
}

@keyframes glow-3-move {
    from {
        transform: translate(100%, 100%);
    }

    to {
        transform: translate(0%, -100%);
    }
}


.hero__section_2 .container {
    z-index: 3;
    position: relative;
}


.image-slide {
    position: relative;
    width: 40rem;
    height: 40rem;
    display: flex;
    align-items: center;
    justify-content: center;
}


.image-slide:after {
    content: '';
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    background-image: url(../img/svg/portfolio_bg.svg);
    border-radius: 50%;
    background-size: contain;
    background-repeat: no-repeat;
    height: 100%;
    animation: wheel 120s linear infinite forwards;
    background-position: 50% 50%;
    z-index: 2;
}



@-webkit-keyframes wheel {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

@-moz-keyframes wheel {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

@-o-keyframes wheel {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes wheel {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}



/* robot svg */


.robot svg {
    position: absolute;
    top: 0%;
    left: 0%;
    display: block;
    margin: 0px auto 0px -250px;
    transform: scale(0.4) translate(0px, -110%);
    transform-origin: center center;
    height: 800px;
    width: 600px;
}


@-webkit-keyframes robot_bounce {

    0% {
        transform: translateY(80px)
    }

    100% {
        transform: translateY(30px)
    }
}

@keyframes robot_bounce {

    0% {
        transform: translateY(80px)
    }

    100% {
        transform: translateY(30px)
    }
}

@-webkit-keyframes shadow {

    0% {
        transform: scale(1.5, 1.2);
    }

    100% {
        transform: scale(1, 1);
    }
}

@keyframes shadow {

    0% {
        transform: scale(1.5, 1.2);
        opacity: 0.4
    }

    100% {
        transform: scale(1, 1);
        opacity: 0.2
    }
}

@-webkit-keyframes arms_bounce_left {

    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(-15deg)
    }
}

@keyframes arms_bounce_left {

    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(-15deg)
    }
}

@-webkit-keyframes arms_bounce_right {

    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(15deg)
    }
}

@keyframes arms_bounce_right {

    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(15deg)
    }
}

@-webkit-keyframes eyes_blink {

    0% {
        transform: scale(1, 1)
    }

    90% {
        transform: scale(1, 1)
    }

    95% {
        transform: scale(0.8, 0)
    }

    100% {
        transform: scale(1, 1)
    }
}

@keyframes eyes_blink {

    0% {
        transform: scale(1, 1)
    }

    90% {
        transform: scale(1, 1)
    }

    95% {
        transform: scale(0.8, 0)
    }

    100% {
        transform: scale(1, 1)
    }
}

#body {
    animation: robot_bounce 1.1s ease-in-out 0s infinite alternate
}

#head {
    animation: robot_bounce 1.1s ease-in-out 0.05s infinite alternate
}

#arms {
    animation: robot_bounce 1.1s ease-in-out 0.1s infinite alternate
}

#arms #left {
    transform-origin: center right;
    animation: arms_bounce_left 1.1s ease-in-out 0s infinite alternate
}

#arms #right {
    transform-origin: center left;
    animation: arms_bounce_right 1.1s ease-in-out 0s infinite alternate
}

#eyes ellipse {
    transform-origin: center center;
    animation: eyes_blink 2s ease-out 0s infinite alternate
}

#hover ellipse {
    transform-origin: center center;
    animation: shadow 1.1s ease-in-out 0s infinite alternate
}



.stem-courses__section .stem-event-2__shape-2:before {
    content: '';
    width: 3px;
    height: 3rem;
    background: #3d3d3d;
    position: absolute;
    top: 178px;
    left: 49.5%;
}

.stem-courses__section .stem-event-2__shape-2 {
    position: absolute;
    top: 30px;
    left: 550px;
    transform: rotate(180deg);
}


.hero__slider2 .slick-list {
    border-radius: 10px;
}

.hero__section_2 .stem-testimonial-2__dots li button::before {
    background-color: #ffc630 !important;
    width: 13px;
    height: 13px;
}

.hero__section_2 .stem-testimonial-2__dots li.slick-active button::before {
    background-color: white !important;
    border: 2px solid #ffc630;
}


/* multi step form css */

.msf-view {
    display: none;
}

.msf-navigation {
    text-align: center;
}

.msf-nav-button {
    display: none;
}

.msf-header {
    padding-top: 10px;
    margin-bottom: 40px;
    color: #777;
}

.msf-header .msf-step {
    font-size: 18px;
    /*display : inline-block;
vertical-align : middle;*/
}
.msf-header .msf-step:hover {
    cursor: pointer;
}

.msf-header .msf-step i.fa {
    height: 60px;
    width: 60px;
    line-height: 55px;
    text-align: center;
    border: 3px solid #777;
    border-radius: 100%;
    font-size: 30px;
    margin-left: 10px;
    margin-right: 10px;
}

.msf-header .msf-step.msf-step-complete {
    /*color: #ef4035;*/
    color: rgb(98 98 98);
}

.msf-header .msf-step.msf-step-complete i.fa {
    /*border-color : #ef4035;*/
    border-color: green;
}

.msf-header .msf-step.msf-step-incomplete {
    /*color: #ef4035;*/
    color:red;
}

.msf-header .msf-step.msf-step-incomplete i.fa {
    /*border-color : #ef4035;*/
    border-color: red;
}

.msf-header .msf-step.msf-step-active,
.msf-header .msf-step.msf-step-active.msf-step-complete,
.msf-header .msf-step.msf-step-active.msf-step-incomplete {
    color: rgb(250 176 53);
    /*color:#3c763d;*/
}

.msf-header .msf-step.msf-step-active i.fa,
.msf-header .msf-step.msf-step-active.msf-step-complete i.fa,
.msf-header .msf-step.msf-step-active.msf-step-incomplete i.fa  {
    border-color: blue;
    /*border-color : #3c763d;*/
}




.input-validation-error {
border-color: red;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(255, 0,0,0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(255, 0,0,0.6);
}

.input-validation-error:focus {
border-color: red;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(255, 0,0,0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(255, 0,0,0.6);
}

.msf-number {
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    border-radius: 0.5rem;
}


.msf-step .msf-number {
    background: rgb(240 240 240) !important;
    color: #777777;
}

.msf-step-active .msf-number {
    background: rgb(255 240 215) !important;
    color: rgb(250 176 53);
}

.msf-step-active.msf-step-complete .msf-number {
    background: rgb(255 240 215) !important;
    color: #fab035;
}



/* simplebar styles */
[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
  }
  
  .simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit;
  }
  
  .simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0;
  }
  
  .simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0 !important;
    bottom: 0 !important;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch;
  }
  
  .simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
    width: auto;
    max-width: 100%; /* Not required for horizontal scroll to trigger */
    max-height: 100%; /* Needed for vertical scroll to trigger */
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  
  .simplebar-content-wrapper::-webkit-scrollbar,
  .simplebar-hide-scrollbar::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }
  
  .simplebar-content:before,
  .simplebar-content:after {
    content: ' ';
    display: table;
  }
  
  .simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none;
  }
  
  .simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0;
  }
  
  .simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1;
  }
  
  .simplebar-track {
    z-index: 1;
    position: absolute;
    left: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden;
  }
  
  [data-simplebar].simplebar-dragging {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  
  [data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  
  [data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all;
  }
  
  .simplebar-scrollbar {
    position: absolute;
    left: 0;
    right: 0;
    min-height: 10px;
  }
  
  .simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: black;
    border-radius: 7px;
    left: 2px;
    right: 2px;
    opacity: 0;
    transition: opacity 0.2s 0.5s linear;
  }
  
  .simplebar-scrollbar.simplebar-visible:before {
    opacity: 0.5;
    transition-delay: 0s;
    transition-duration: 0s;
  }
  
  .simplebar-track.simplebar-vertical {
    top: 0;
    width: 11px;
  }
  
  .simplebar-scrollbar:before {
    top: 2px;
    bottom: 2px;
    left: 2px;
    right: 2px;
  }
  
  .simplebar-track.simplebar-horizontal {
    left: 0;
    height: 11px;
  }
  
  .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 0;
    bottom: 0;
    min-height: 0;
    min-width: 10px;
    width: auto;
  }
  
  /* Rtl support */
  [data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0 !important;
  }
  
  .simplebar-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll;
    -ms-overflow-style: scrollbar !important;
  }
  
  .simplebar-dummy-scrollbar-size > div {
    width: 200%;
    height: 200%;
    margin: 10px 0;
  }
  
  .simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }


  /* bootstrap select */
  


.signup-hero {
    height: 100vh;
}


.compitition-end-date {
    right: 16px;
    bottom: 15px !important;
    background: #e74a60;
}

.stem-white-btn-revert span {
    background-color: #e6a847;
    border-color: #e6a847;
    color: white;
}

.page__title-pre.cat-color-red {
    background: #e74a60;
}

.page__title-pre.cat-color-now {
    background: #2bc775;
}

.small-pagination.basic-pagination ul li a, .small-pagination.basic-pagination ul li span {
    width: 35px;
    height: 35px;
    font-size: 14px;
}

.small-pagination.basic-pagination ul li:not(:last-child) {
    margin-left: 4px;
}

.small-pagination.basic-pagination ul li{
    margin-bottom: 0;
}

.puplic-ads-video-autoplay .mfp-close {
    color: #f5f5f5;
    top: -43px !important;
    position: absolute !important;
    right: -15px;
}

.ads-contents {
    backdrop-filter: saturate(50%) blur(20px) opacity(80%);
    
    background: none !important;
    top:0 !important;

}

.ads-contents .mfp-content {
    width: auto;
}

body.mfp-open {
    overflow: hidden;
}


.stars {
    cursor: pointer;
    display: flex;
  }
  .stars:hover .star path {
    fill: #ffd055 !important;
  }
  .stars .star path {
    fill: #d8d8d8;
  }
  .stars .star:hover ~ .star path {
    fill: #d8d8d8 !important;
  }
  .stars[data-stars] .star path {
    fill: #f59e0c;
  }
  .stars[data-stars="1"] .star:nth-child(1) ~ .star path {
    fill: #d8d8d8;
  }
  .stars[data-stars="2"] .star:nth-child(2) ~ .star path {
    fill: #d8d8d8;
  }
  .stars[data-stars="3"] .star:nth-child(3) ~ .star path {
    fill: #d8d8d8;
  }
  .stars[data-stars="4"] .star:nth-child(4) ~ .star path {
    fill: #d8d8d8;
  }
  .stars[data-stars="5"] .star:nth-child(5) ~ .star path {
    fill: #d8d8d8;
  }

  svg.star.rating {
    width: 1.3rem;
    margin-left: 0.2rem;
}

.login-btn-home {
    border-radius: 10px;
    min-height: 44px !important;
}