html,
body {
    min-height: 100%;
}

html {
    font-size: 20px;
}

@media (max-width: 1400px) {
    html {
        font-size: 18px;
    }
}

@media (max-height: 700px) {
    html {
        font-size: 16px;
    }
}

body {
    background-repeat:no-repeat;
    background-attachment: fixed !important;
    background-color: var(--purple);
    background: radial-gradient(circle at bottom left, rgb(145 61 92) 0%, rgb(80 55 141) 90%);
    /* background-image: url(../image/Polygon.355c4c24ca095450fb8c.svg); */

    /* background: -webkit-radial-gradient(circle at center left, #913d5c, #4f378d 90%);
    background: -moz-radial-gradient(circle at center left, #913d5c, #4f378d 90%);
    background: radial-gradient(circle at center left, #913d5c, #4f378d 90%); */

    font-family: 'Poppins', sans-serif;
    height: 100%;
}

body.cadastro {
    /*height: 120vh;*/
}

h1 {
    font-size: 38px;
    font-weight: 600;
}

.home-icons i {
    -webkit-filter: drop-shadow(4px 4px 12px rgba(0, 0, 0, .25));
    filter: drop-shadow(4px 4px 12px rgba(0, 0, 0, .25));
    font-size: 110px;
}

.home-icon:hover {
    color: var(--orange-light-2);
}

.conteinerSocialBtn {
    margin-top: 0rem;
    margin-bottom: 0rem;
}

.socialBtn i {
    color: var(--gray-light);
    font-size: 25px;
}

.socialBtn i:hover {
    /* color: var(--purple) !important; */
    color: #F5BFEA !important;
}

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    -webkit-font-smoothing: antialiased;
}

main {
    flex: 1 0 auto;
}

/* css inputs login */
.customInput:not(.container-password > .customInput, .container-login > .customInput) {
    border: 2px solid var(--gray-light) !important;
    border-radius: 50px !important;
    padding: 0.8rem 1.5rem;
    width: 100%;
}

.customInput {
    background-color: transparent !important;
    border: 2px solid var(--gray-light) !important;
    border-radius: 50px !important;
    height: 62px;
    padding: 16px 36px;
    color: var(--gray-light) !important;
    width: 100%;
}
#btn-step:disabled, #btn-continue:disabled {
    background-color: #B8B8B8 !important;
    border-color: #fff;
}

.container-password,
.container-login,
.container-input {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* end css inputs login */

.customInput:focus {
    color: #fff !important;
}

.customInput::placeholder {
    font-weight: 400;
    color: rgba(249, 249, 249, 0.5) !important;
    position: absolute;
    /* top: 0.9rem; */
}

.customInput::-webkit-calendar-picker-indicator {
    filter: invert(1);
}

.customSelect {
    background-color: transparent !important;
    border: 2px solid var(--gray-light) !important;
    border-radius: 50px !important;
    height: 70px !important;
    padding: 1rem 1.5rem !important;
    color: rgba(249, 249, 249, 0.5) !important;
    background: #ffffff;
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
}

.customSelect.active {
    color: var(--gray-light) !important;
}

.customSelect:focus {
    outline: none
}

.customSelect::after {
    border: 2px solid var(--gray-light) !important;
}


.btnCustom {
    background-color: var(--secondary-color) !important;
    height: 70px;
    color: white !important;
    border-radius: 50px !important;
    width: 100%;
    font-size: 30px !important;
}

.btnCustom:hover {
    background-color: var(--secondary-color) !important;
    border-color: var(--secondary-color) !important;
}

.loginSocial {
    padding: 1rem .2rem;
}

.loginSocial a {
    color: var(--secondary-color);
    margin: .8rem;
    font-size: 31px;
}

.loginSocial a:hover {
    color: var(--purple) !important
}


.wow {
    visibility: hidden;
}

/* h1.title,
.footer-copyright a {
    font-family: 'Architects Daughter', cursive;
    text-transform: uppercase;
    font-weight: 900;
} */

/* start welcome animation */

body.welcome {
    /* overflow: hidden; */
    -webkit-font-smoothing: antialiased;
}

.welcome .splash {
    height: 0px;
    padding: 0px;
    border: 130em solid var(--purple);
    position: fixed;
    left: 50%;
    top: 100%;
    display: block;
    box-sizing: initial;
    overflow: hidden;

    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: puff 0.5s 1.8s cubic-bezier(0.55, 0.055, 0.675, 0.19) forwards, borderRadius 0.2s 2.3s linear forwards;
    z-index: 99999;


}

.welcome #welcome {
    /* background-image: url(../image/ezgif.com-gif-maker-logo.gif); */
    background-image: url(../image/logo.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    /* background-color: var(--orange); */
    width: 150px;
    height: 150px;
    position: absolute;
    left: 50%;
    top: 50%;
    overflow: hidden;
    opacity: 0;
    transform: translate(-50%, -50%) rotate(0);
    /* border-radius: 50%; */
    text-align: center;
    animation: init 0.5s 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19) forwards, moveDown 1s 0.8s cubic-bezier(0.6, -0.28, 0.735, 0.045) forwards, moveUp 1s 1.8s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards, materia 0.5s 2.7s cubic-bezier(0.86, 0, 0.07, 1) forwards, hide 2s 2.9s ease forwards;
    z-index: 99999;

    transform-origin: center center;


}

/* .welcome #welcome img {
    height: 156px;
} */

/* moveIn */
.welcome .App {
    opacity: 1;
    /* animation: moveIn 1.7s 3.3s ease forwards; */
    animation:moveIn 0.5s  ease forwards;
}

.account_type .App .container>div {
    height: 90vh !important;
}

/* responsive splash and registrer user */
@media (max-width: 576px), (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .App h1 {
        font-size: 20px !important;
    }

    .App h2 {
        font-size: 16px !important;
    }
    .App p {
        font-size: 14px;
    }

    .account_type .App .mainLogo img {
        height: 57px;
        width: 160px;
    }

    .account_type .App .home-icons a.home-icon i {
        font-size: 78px;
        height: 94px;
    }

    .account_type .App .home-icons span {
        font-size: 12px !important;
    }

    .account_type .App .socialBtn i {
        font-size: 14px;
    }

    .account_type .App .socialBtn {
        padding: 5px;
    }

    .account_type .App .splash_main>h2 {
        margin-top: 0.6rem !important;
        margin-bottom: 0.6rem !important;
    }

    small {
        font-size: 10px !important;
    }
}

@media (max-width: 576px) {
    .account_type,
    .account_type div,
    .login,
    .login div {
        overflow: hidden;
    }

    .imagecrop .img-container {
        width: clamp(280px, 80vw, 330px) !important;
        height: auto !important;
        margin: 0 auto;
    }

    .container:not(#main .container, .main-registration .container) {
        overflow: hidden;
    }
}

@media (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .account_type .container-type-icons > div {
        flex: 1 0 0% !important; /*col*/
        width: auto !important;
    }

    .customInput:not(.container-password > .customInput, .container-login > .customInput) {
        padding: 1rem 1.5rem !important;
    }

    .mainLogo .container-logo {
        text-align: center !important;
        width: 100% !important;
        flex: 0 0 auto !important;
    }

    .avatar-login {
        width: 120px;
        height: 120px;
    }

    .main-registration small.text-danger {
        font-size: 12px !important;
    }

    .imagecrop .modal-dialog {
        margin: 0.75rem auto;
    }

    .imagecrop .modal-dialog .modal-body, .imagecrop .modal-dialog  .modal-content {
        padding: 0 !important;
    }

    .imagecrop .img-container {
        width: 230px !important;
        height: auto !important;
        margin: 0 auto;
    }

    .imagecrop .modal-dialog {
        max-width: 300px;
    }
}

@media (max-height: 590px) {
    .account_type .App .socialBtn {
        padding: 0 5px;
    }

    .account_type .App .splash_main>h2 {
        margin-top: 0rem !important;
        margin-bottom: 0rem !important;
    }

    .account_type .App .home-icons a.home-icon i {
        height: 80px;
        font-size: 70px;
    }
}

@keyframes init {
    0% {
        transform: translate(-50%, -50%) rotate(45deg);
        width: 0px;
        height: 0px;

    }

    95% {
        transform: translate(-50%, -50%) rotate(0);
    }

    100% {
        width: 150px;
        height: 150px;
        margin-top: 0px;
        opacity: 1;
    }
}

@keyframes puff {
    0% {
        top: 100%;
        height: 0px;
        padding: 0px;
    }

    100% {
        top: 50%;
        height: 100%;
        padding: 0px 100%;
    }
}

@keyframes borderRadius {
    0% {
        border-radius: 50%;
    }

    99% {
        border-radius: 0px;
    }

    100% {
        border-radius: 0px;
        z-index: -1;
    }
}

@keyframes moveDown {
    0% {
        top: 50%;
    }

    50% {
        top: 40%;
    }

    100% {
        top: 100%;
    }
}

@keyframes moveUp {
    0% {
        /* background-color: var(--orange); */
        top: 100%;
    }

    50% {
        top: 40%;
    }

    100% {
        top: 50%;
        /* background-color: var(--orange); */
    }
}

@keyframes materia {
    0% {
        /* background-color: var(--orange); */
        opacity: 1;
    }

    /* 50% {
        background: var(--purple);
        top: 26px;
    } */

    100% {
        /* background: #311b92;
        width: 100%;
        height: 64px;
        border-radius: 0px;
         */
        top: -100%;
        opacity: 0;
    }
}

@keyframes moveIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes hide {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}


.stepsGroup {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 600;
}

.dot {
    width: 24px;
    border: solid 1px;
    height: 24px;
    /* border-radius: 10px; */
    color: #bbbbbb;
    background: #bbbbbb;
    content-visibility: hidden;
}

.dash {
    border: dashed 2px;
    width: 11.8rem;
    border-top: none;
    border-left: none;
    border-right: none;
    opacity: 0.4;
}

.dashComplete {
    opacity: 1;
    border-bottom: solid 1px var(--secondary-color) !important;
}

.dashNumber {
    width: 12.6rem;
}

.iconDrop {
    position: absolute;
    top: 1.1rem;
    right: 2rem;
    font-size: 1.3rem;
    color: #E8C8E1;
    pointer-events: none;
    z-index: 1;
}



.formContent {
    width: 97%;
}






.step {
    /* height: 15px;
    width: 15px;
    margin: 0 2px;
    background-color: #bbbbbb;
    border: none;
    border-radius: 50%;
    display: inline-block;
    opacity: 0.5 */
}

.step.active {
    opacity: 1;
    color: var(--secondary-color);
    background: var(--secondary-color);
}

.step.finish {
    background-color: #4CAF50
}

.all-steps {
    /* text-align: center;
    margin-top: 30px;
    margin-bottom: 30px */
}


.tab {
    display: none
}

#avatar {
    color: var(--gray-light);
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(232, 200, 225)" class="bi bi-person-circle" viewBox="0 0 16 16"><path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/><path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/></svg>');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

/* <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16">
  <path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
  <path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
</svg> */


select option {
    background: #FFF;
    color: var(--purple);
}


.select-btn,
.wrapper li {
    display: flex;
    align-items: center;
    cursor: pointer;
}

.select-btn i {
    transition: transform 0.3s linear;
}

.content {
    display: none;
    padding: 20px;
    margin-top: 15px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    position: absolute;
    z-index: 1;
    width: 100%;
}

.wrapper.active .content {
    display: block;
}

.content .search {
    position: relative;
    color: var(--purple)
}

.search i {
    top: 50%;
    left: 15px;
    color: #999;
    pointer-events: none;
    transform: translateY(-50%);
    position: absolute;
}

.search input {
    height: 50px;
    width: 100%;
    outline: none;
    border-radius: 2em;
    padding: 0 20px 0 43px;
    border: 1px solid #f2f2f2;
}

.search input:focus {
    padding-left: 42px;
    border: 2px solid var(--orange);
    color: var(--purple)
}

.search input::placeholder {
    color: #bfbfbf;
}

.content .options, .content .options2 {
    margin-top: 10px;
    max-height: 250px;
    overflow-y: auto;
    padding-right: 7px;
    padding-left: 0;
    margin: 0;
    margin-top: 10px;
}

.options::-webkit-scrollbar, .options2::-webkit-scrollbar{
    width: 7px;
}

.options::-webkit-scrollbar-track, .options2::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 25px;
}

.options::-webkit-scrollbar-thumb, .options2::-webkit-scrollbar-thumb {
    background: var(--orange);
    ;
    border-radius: 25px;
}

.options::-webkit-scrollbar-thumb:hover, .options2::-webkit-scrollbar-thumb:hover  {
    background: #b3b3b3;
}

.options li, .options2 li {
    margin-bottom: 20px;
    height: 50px;
    padding: 0 13px;
    color: var(--purple);
    border-bottom: 1px solid #f2f2f2;
}

.options li:hover,
.options2 li:hover,
.wrapper li.selected {
    border-radius: 5px;
    background: #f2f2f2;
}

a.home-icon {
    color: var(--orange);
    text-decoration: underline
}

a.home-icon:hover {
    color: var(--orange-light-2)
}

@media (max-width: 1400px) {
    .formContent h1 {
        font-size: 1.6rem;
    }

    .container-password>.customInput,
    .container-login>.customInput {
        height: 60px;
    }

    .btnCustom {
        height: 60px;
        font-size: 1.4rem !important;
    }
}

.main-login {
    height: 100vh;
}

#forgot_email {
    border: 2px solid var(--gray-light) !important;
    border-radius: 50px !important;
    padding: 0.8rem 1.5rem !important;
    width: 100%;
}

/* login responsive */
@media (max-width: 576px) {
    .main-login {
        height: 85vh !important
    }

    .main-login .container-password,
    .main-login .container-login {
        width: 250px;
        margin: 0 auto;
    }

    .iconEye {
        font-size: 16px !important;
        right: 1.2rem !important;
    }

    .customInput,
    .customSelect {
        height: 40px !important;
        font-size: 12px;
        padding: 10px !important;
    }

    .specialty span {
        font-size: 10px;
    }

    .btnCustom {
        height: 48px;
        font-size: 16px !important;
    }

    .main-login .btnCustom {
        width: 250px;
    }

    .formContent a,
    .formContent p,
    .formContent span {
        font-size: 10px;
    }

    .conteinerSocialBtn {
        margin: 0;
    }

    .conteinerSocialBtn .socialBtn i {
        font-size: 14px;
    }

    .conteinerSocialBtn .socialBtn {
        padding: 5px;
    }
}

@media (max-width: 1200px)  {
    .main-login {
        height: 84vh !important;
    }
}

@media (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .container-image-login {
        display: none !important;
    }

    .main-login {
        height: 90% !important;
        margin: 2rem 0;
    }

    #forgotPasswordModal {
        margin: 0.75rem auto !important;
    }

    .main-login div:not(.mainLogo) {
        justify-content: center !important;
    }
}

.main-registration>.mainLogo {
    margin-bottom: 7.8vh;
}

.avatar-login {
    width: 143px;
    height: 143px;
}

.iconCamera {
    color: rgb(232, 70, 28);
    font-size: 2rem;
    cursor: pointer
}

.main-registration .content {
    z-index: 2;
    bottom: 80px;
}

.main-registration .content .options, .main-registration .content .options2 {
    max-height: 180px;
}

.main-registration .iconDrop {
    top: 0.8rem;
}

.mb-10 {
    margin-bottom: 10rem;
}

@media (max-width: 576px) {
    .main-registration {
        width: 285px;
        margin: 0 auto;
        min-height: 100vh;
    }

    .main-registration>.mainLogo {
        margin-bottom: 2rem;
        margin-top: 1rem;
    }

    .main-registration .search {
        display: none !important;
    }

    .dot {
        height: 14px;
        width: 22px;
    }

    .dot:not(.stepsGroup-professor .dot) {
        width: 17px !important;
    }

    #all-steps-Number {
        margin-left: 0.2rem;
        margin-right: 0.2rem;
    }

    .avatar-login {
        width: 70px;
        height: 70px;
    }

    .main-registration .content {
        z-index: 2;
        bottom: 50px;
        padding: 10px;
    }

    .main-registration .content .options li, .main-registration .content .options2 li {
        height: 35px;
        padding: 0 3px;
        font-size: 12px;
    }

    .main-registration .iconDrop {
        right: 1rem;
        top: 0.4rem;
        font-size: 1rem;
        color: #e8c8e1;
        z-index: 1;
    }

    .iconCamera {
        font-size: 1.5rem;
    }

    #searchZipcode i.bi {
        font-size: 14px;
    }
}

.policyModal .modal-dialog,
.underageModal .modal-dialog {
    max-width: 82vw;
}

.basic-modal-title {
    font-family: Poppins;
    font-size: 30px;
    font-weight: 600;
    color: var(--secondary-color);
}

.policyModal .modal-footer,
.policyModal .modal-header,
.underageModal .modal-footer,
.underageModal .modal-header,
.registeredModal .modal-footer,
.registeredModal .modal-header {
    border: none;
}


.policyModal .modal-body, .underageModal .modal-body, .registeredModal .modal-body {
    font-size: 1rem;
    font-weight: 400;
    line-height: 30px;
    letter-spacing: 0em;
    text-align: left;
}

.policyModal thead,
.policyModal tbody,
.policyModal tfoot,
.policyModal tr,
.policyModal td,
.policyModal th {
    border: 1px solid #000;
    padding: 15px;
}
.policyModal th {
    text-align: center;

}
.policyModal tr td:nth-child(2) {
    text-align: justify;
}
.policyModal td span{
    margin-bottom: 15px !important;
    text-align: left;
}
.policyModal table {
    margin-bottom: 1rem;
}
.policyModal .table-responsive {
    display: none;
}
/* policy responsive */
.policyModal {
    overflow: hidden;
}

.policyModal .modal-body {
    height: 57vh;
}

.registeredModal .modal-dialog .modal-body {
    height: 16vh;
}

@media (max-width: 576px), (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .policyModal .basic-modal-title,
    .underageModal .basic-modal-title {
        font-size: 1rem;
    }

    .registeredModal .basic-modal-title {
        font-size: 1.2rem;
    }

    .policyModal, .underageModal, .registeredModal {
        padding-left: 0px !important;
    }

    .policyModal .modal-body,
    .underageModal .modal-body,
    .underageModal .modal-footer,
    .registeredModal .modal-body,
    .registeredModal .modal-footer {
        font-size: 0.7rem;
        line-height: 20px;
    }

    .policyModal .modal-dialog {
        max-width: 94vw;
        margin: 0;
    }

    .underageModal .modal-dialog, .registeredModal .modal-dialog {
        max-width: 100vw;
        margin: 0;
    }

    .policyModal label {
        font-size: 0.6rem;
    }

    .policyModal button {
        font-size: 0.8rem;
    }

    .policyModal thead,
    .policyModal tbody,
    .policyModal tfoot,
    .policyModal tr,
    .policyModal td,
    .policyModal th {
        padding: 10px;
    }

    .policyModal td span{
        margin-bottom: 10px !important;
    }
    .policyModal .table-responsive ol > li{
        margin-bottom: 10px;
    }

    .policyModal .table-responsive ol > li > ul{
        margin-top: 5px;
    }

    .policyModal .modal-dialog {
        margin: 0 auto !important;
    }
}

@media (max-width: 992px) {
    .policyModal .table {
        display: none;
    }

    .policyModal .table-responsive {
        display: block;
    }
}

@media (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .policyModal {
        overflow: auto;
    }

    .policyModal .modal-body, .underageModal .modal-body {
        padding: 0.6rem 1.2rem !important;
    }

    .policyModal .modal-header {
        padding-top: 1.2rem !important;
        padding-bottom: 0.8rem !important;
    }

    .policyModal .modal-footer {
        padding-top: 0.8rem !important;
        padding-bottom: 0.8rem !important;
    }

    .policyModal .modal-footer .row .form-check {
        margin-bottom: 0rem !important;
    }

    .policyModal .modal-body {
        height: 80vh;
    }

    .policyModal .modal-dialog {
        margin: 0 auto !important;
    }

    .registeredModal .modal-dialog {
        max-width: 70vw;
        margin: 0 auto;
    }

    .registeredModal .modal-dialog .modal-body {
        height: 22vh;
    }
}

/* toast */
body.swal2-toast-shown .swal2-container {
    width: 460px !important;
}

.btnCustom.trial {
    font-size: 1rem !important;
}

@media (max-width: 576px), (orientation: landscape) and (max-width: 998px) and (max-height: 600px) {
    .btnCustom.trial {
        font-size: 12px !important;
    }
}
