/* Font Face */
@font-face {
    font-family: 'Cera Pro';
    src: url('../fonts/CeraPro-Thin.eot');
    src: url('../fonts/CeraPro-Thin.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CeraPro-Thin.woff2') format('woff2'),
        url('../fonts/CeraPro-Thin.woff') format('woff'),
        url('../fonts/CeraPro-Thin.ttf') format('truetype'),
        url('../fonts/CeraPro-Thin.svg#CeraPro-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Cera Pro';
    src: url('../fonts/CeraPro-Light.eot');
    src: url('../fonts/CeraPro-Light.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CeraPro-Light.woff2') format('woff2'),
        url('../fonts/CeraPro-Light.woff') format('woff'),
        url('../fonts/CeraPro-Light.ttf') format('truetype'),
        url('../fonts/CeraPro-Light.svg#CeraPro-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Cera Pro';
    src: url('../fonts/CeraPro-Regular.eot');
    src: url('../fonts/CeraPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CeraPro-Regular.woff2') format('woff2'),
        url('../fonts/CeraPro-Regular.woff') format('woff'),
        url('../fonts/CeraPro-Regular.ttf') format('truetype'),
        url('../fonts/CeraPro-Regular.svg#CeraPro-Regular') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Cera Pro';
    src: url('../fonts/CeraPro-Bold.eot');
    src: url('../fonts/CeraPro-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CeraPro-Bold.woff2') format('woff2'),
        url('../fonts/CeraPro-Bold.woff') format('woff'),
        url('../fonts/CeraPro-Bold.ttf') format('truetype'),
        url('../fonts/CeraPro-Bold.svg#CeraPro-Bold') format('svg');
    font-weight: bold;
    font-style: 500;
    font-display: swap;
}
@font-face {
    font-family: 'against';
    src: url('../fonts/against-Regular.eot');
    src: url('../fonts/against-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/against-Regular.woff2') format('woff2'),
        url('../fonts/against-Regular.woff') format('woff'),
        url('../fonts/against-Regular.ttf') format('truetype'),
        url('../fonts/against-Regular.svg#against-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.btn-bd-primary {
    --bd-violet-bg: #712cf9;
    --bd-violet-rgb: 112.520718, 44.062154, 249.437846;
    --bs-btn-font-weight: 600;
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: var(--bd-violet-bg);
    --bs-btn-border-color: var(--bd-violet-bg);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #6528e0;
    --bs-btn-hover-border-color: #6528e0;
    --bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
    --bs-btn-active-color: var(--bs-btn-hover-color);
    --bs-btn-active-bg: #5a23c8;
    --bs-btn-active-border-color: #5a23c8;
}

/* HAE Challenge */

:root{
    --hae-dark-blue:#534073;
    --hae-lilas:#ccc6df;
    --hae-rosa: #fb006a;
    --hae-rosa-claro: #fbd6e5;
    --hae-text: #546872;
    --hae-roxo-claro: #cfc3e0;

    --hae-zindex-modal: 60;
    --hae-zindex-footer: 40;
}

body {
    margin:0;
    padding:0;
    -webkit-tap-highlight-color: transparent;
}
body.modal-open,
body.loading {
    overflow:hidden;
}
body.loading{position:relative;}
body.loading::before{
    content:"";
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:998;
    background-color: rgba(255,255,255,0.8);
}
body.loading::after{
    position:absolute;
    z-index:999;
    top:50%;
    left:50%;
    border-color: var(--hae-rosa);
    border-bottom-color: transparent;
}

sup{line-height:1;}

section#content-block{
    width:100%;
    height:calc(100vh - 8.5vh);
    overflow-y: auto;
    position:relative;
}

.content-block{
    position:relative;
}

.darkBlue {
    color: var(--hae-dark-blue);
}

footer{
    width:100%;
    height:8.5vh;
    position:fixed;
    bottom:0;
    left:0;
    background-color:#fff;
    z-index: var(--hae-zindex-footer);
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    align-items:center;
    justify-items: center;
    box-sizing: border-box;
    padding-left: clamp(1.688rem, 0.001rem + 2.635vw, 4.5rem);
    padding-right: clamp(1.688rem, 0.001rem + 2.635vw, 4.5rem);
    padding-top: clamp(0.5rem, 0.05rem + 0.703vw, 1.25rem);
    padding-bottom: clamp(0.5rem, 0.05rem + 0.703vw, 1.25rem);
    gap: clamp(1.688rem, 0.001rem + 2.635vw, 4.5rem);
}

footer .col-esq{justify-self: start;height:100%;}
footer .col-center{justify-self: center;}
footer .col-dir{justify-self: end;}

footer img{
    display:block;
    height:7vh;
    width:auto;
}

footer button.open-modal{
    background-color: #fff;
    color: var(--hae-dark-blue);
    padding: 1vh 3vh;
    border-radius: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    border: solid 1px var(--hae-dark-blue);
}
footer button.open-modal svg{
    height:2.7vh;
    width:auto;
    fill: var(--hae-dark-blue);
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
footer button.open-modal:hover {
    background-color: var(--hae-rosa);
    border-color: var(--hae-rosa);
    color: #fff;
}
footer button.open-modal:hover svg{
    fill: #fff;
}

@media (max-width:380px){

    section#content-block{
        height:auto;
        overflow:auto;
    }

    footer{
        position:relative;
        height:auto;
        flex-direction:column;
        gap:2vh;
        padding:2vh;
    }
    footer img{
        width:40%;
        height:auto;
    }

    footer button.open-modal{
        order:1;
        padding: 0.5vh 2vh;
    }
    footer button.open-modal svg{
        height:2vh;
    }
    footer .logo-takhzyro{
        order:2;
    }
    footer .logo-takeda{
        order:3;
    }
}

button{
    display: block;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}


/* CONTENT : begin */
.content{
    min-height:100%;
}

.swiper-slide{
    padding-top:30px;
    padding-bottom:30px;
}

/* WELCOME : begin */
.content-welcome{
    /* display:none; */
    position:relative;
    z-index:2;
    background-image: url( '../images/challenge_bg01.png' );
    background-position:center right;
    background-repeat: no-repeat;
    background-size:cover;
    opacity:1;
    transition: opacity 200ms ease-in-out;
}
.content-welcome.fadeout{opacity:0;}
.content-welcome header{
    display: flex;
    align-items:center;
    justify-content:center;
    height:40vh;
}
.content-welcome header .haeChallenge-logo{
    display:block;
    width: 90%;
    max-width: clamp(33.625rem, 1.325rem + 50.468vw, 87.5rem);
}

.welcome{
    display:flex;
    gap:5vh;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.welcome h1 {
    font-family: 'Cera Pro';
    font-weight: bold;
    font-size: clamp(1.875rem, 0.001rem + 2.927vw, 5rem);
    text-align: center;
    color: #fff;
    margin:0;
}
.welcome p {
    font-family: 'Cera Pro';
    font-weight: 100;
    font-size: clamp(1.125rem, 0.001rem + 1.756vw, 3rem);
    line-height: 1.2;
    color: #fff;
    width: 60%;
    margin:0;
    text-align:center;
}
.welcome p strong{
    font-weight:700;
}
/* WELCOME : end */

/* LOGIN : begin */
.login{
    display:flex;
    gap:2.5vh;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.login h1 {
    font-family: 'Cera Pro';
    font-weight: bold;
    font-size: clamp(1.875rem, 0.001rem + 2.927vw, 5rem);
    text-align: center;
    color: #fff;
    margin:0;
    text-transform:uppercase;
}

.login p {
    font-family: 'Cera Pro';
    font-weight: 100;
    font-size: clamp(0.75rem, 0.364rem + 2.059vw, 3rem);
    line-height: 1.2;
    color: #fff;
    width: 60%;
    margin:0;
    text-align:center;
}
.formLogin{
    display:flex;
    flex-direction: column;
    gap: clamp(1.25rem, 1.035rem + 1.144vw, 2.5rem);
    align-items: center;
    justify-content:center;
    width:40%;
}
.formLogin input[type="text"] {
    display: block;
    font-family: 'Cera Pro';
    font-weight:400;
    background-color: #ffffff;
    color: var(--hae-dark-blue);
    text-align: center;
    padding-top: clamp(0.75rem, 0.621rem + 0.686vw, 1.5rem);
    padding-bottom: clamp(0.75rem, 0.621rem + 0.686vw, 1.5rem);
    padding-left: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    padding-right: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    font-size: clamp(1.125rem, 0.001rem + 1.756vw, 3rem);
    text-decoration: none;
    border-radius: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    border: none;
    width: 100%;
    box-sizing: border-box;
    border: 2px solid var(--hae-roxo-claro);
}

.form-control::-webkit-input-placeholder {
    color: #9b8bb8;
}
.form-control:-moz-placeholder {
    color: #9b8bb8;
}
.form-control::-moz-placeholder {
    color: #9b8bb8;
}
.form-control:-ms-input-placeholder {
    color: #9b8bb8;
}

.input-block{
    display:flex;
    flex-direction:column;
    gap: 1vh;
}

.invalid-feedback {
    color: #ffffff;
    font-size: clamp(0.75rem, 0.621rem + 0.686vw, 1.5rem);
    font-family: 'Cera Pro';
    font-weight: bold;
    line-height:1;
    text-align: center;
    display:none;
}

.button-block{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height: clamp(2.5rem, 0.252rem + 3.513vw, 6.25rem);
}
.button-block.loading{
    position:relative;
}
*.loading::after{
    content:"";
    width: clamp(2.5rem, 0.252rem + 3.513vw, 6.25rem);
    height: clamp(2.5rem, 0.252rem + 3.513vw, 6.25rem);
    border: clamp(0.313rem, 0.013rem + 0.468vw, 0.813rem) solid #FFF;
    border-bottom-color: transparent;
    border-radius: 50%;
    display: block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.button-block.loading button{display:none;}
/* LOGIN : end */


/* JOGO : begin */
.content-jogo{
    background-image: url( '../images/challenge_bg02.png' );
    background-position:top left;
    background-repeat: no-repeat;
    background-size:50%;
    background-color: #f0f1f1;
    padding-left: clamp(1.813rem, 0.051rem + 2.752vw, 4.75rem);
    padding-right: clamp(1.813rem, 0.051rem + 2.752vw, 4.75rem);
    opacity:1;
    transition: opacity 200ms ease-in-out;
}
.content-jogo.fadeout{
    opacity:0;
    pointer-events:none;
    position:absolute;
    z-index:1;
    top:0;
}
.content-jogo header{
    display: flex;
    align-items:end;
    justify-content:end;
    height:18vh;
    padding:3% 3% 0 3%;
    box-sizing: border-box;
}
.content-jogo header .haeChallenge-logo{
    display:block;
    height:100%;
    width:auto;
}

.bloco-jogo{
    display:flex;
    flex-direction:column;
    gap: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
    opacity:1;
    transition: opacity 200ms ease-in-out;
}
.bloco-jogo.fadeout{opacity:0;}

.header-jogo{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.header-jogo p{
    font-family: 'Cera Pro';
    color: var(--hae-rosa);
    font-size: clamp(1.438rem, 0.051rem + 2.166vw, 3.75rem);
    font-weight:500;
    text-transform: uppercase;
    letter-spacing: clamp(0.125rem, 0.104rem + 0.114vw, 0.25rem);
    margin:0 0 clamp(0.438rem, -0.05rem + 0.761vw, 1.25rem) 0;
    text-align:center;
}
.header-jogo h3{
    font-family: 'Cera Pro';
    color: var(--hae-text);
    font-size: clamp(1.563rem, 0.026rem + 2.4vw, 4.125rem);
    line-height:1.1;
    font-weight:400;
    margin:0;
    text-align:center;
}
.header-jogo h3 strong{font-weight:700;}

.conteudo-jogo{
    display:flex;
    align-items:stretch;
    justify-content:space-between;
    gap: clamp(1.25rem, 0.013rem + 1.932vw, 3.313rem);
    margin-bottom: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
}

.conteudo-jogo .bloco-joker{
    width: clamp(9.125rem, 0.357rem + 13.7vw, 23.75rem);
}
.conteudo-jogo .bloco-pontos{
    width: clamp(8.625rem, 0.306rem + 12.998vw, 22.5rem);
}

.conteudo-jogo .bloco-joker,
.conteudo-jogo .bloco-pontos{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:stretch;
    gap: clamp(0.625rem, 0.475rem + 0.801vw, 1.5rem);
}
.conteudo-jogo .bloco-joker p,
.conteudo-jogo .bloco-pontos p{
    font-family: "against";
    text-transform: uppercase;
    color: var(--hae-rosa);
    font-size: clamp(0.75rem, 0.001rem + 1.171vw, 2rem);
    margin:0;
    line-height:1;
}

.conteudo-jogo .container-joker{
    display:flex;
    flex-direction:column-reverse;
    height:100%;
}
.conteudo-jogo .item-joker{
    cursor:pointer;
    height:16.66%;
    text-align:center;
    transition: all 200ms ease-in-out;
}
.conteudo-jogo .item-joker:hover{
    transform: scale(1.1);
}
.conteudo-jogo .item-joker img{
    width:100%;
    height:auto;
    margin:0 auto;
}
.conteudo-jogo .item-joker.disabled{
    opacity:0.3;
    pointer-events:none;
    filter: grayscale(50%);
}

.conteudo-jogo .container-pontos{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    gap: clamp(0.125rem, 0.061rem + 0.343vw, 0.5rem);
}
.conteudo-jogo .item-pontos{
    display:flex;
    align-items:baseline;
    justify-content:end;
    background-color: var(--hae-rosa);
    border-radius: clamp(0.375rem, 0.311rem + 0.343vw, 0.75rem);
    font-family: "against";
    color:#fff;
    font-size: clamp(1.438rem, 0.051rem + 2.166vw, 3.75rem);
    line-height:1;
    font-weight: 700;
    opacity:0.3;
    height:10%;
    padding-top: clamp(0.438rem, -0.05rem + 0.761vw, 1.25rem);
    padding-right: clamp(0.438rem, -0.05rem + 0.761vw, 1.25rem);
    pointer-events:none;
    transition: opacity 200ms ease-in-out;
}
.conteudo-jogo .item-pontos.active{opacity:1;}


.conteudo-jogo .bloco-respostas{
    width:100%;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.conteudo-jogo .bloco-respostas form{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:start;
    gap: clamp(2.875rem, 0.102rem + 4.333vw, 7.5rem);
    margin-top:clamp(2.875rem, 0.102rem + 4.333vw, 7.5rem);
    margin-bottom:clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
}
.conteudo-jogo .bloco-respostas .grid-respostas{
    width:100%;
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: clamp(0.5rem, 0.414rem + 0.458vw, 1rem);
    align-items: stretch;
}

.item-resposta{
    position:relative;
}
.item-resposta input{
    position:absolute;
    top:0;
    left:0;
    width:30px;
    height:30px;
    opacity:0;
}
.item-resposta label{
    font-family: 'Cera Pro';
    font-weight: 700;
    display:flex;
    align-items:stretch;
    text-transform: uppercase;
    color: var(--hae-dark-blue);
    font-size: clamp(0.875rem, 0.051rem + 1.288vw, 2.25rem);
    border: 3px solid var(--hae-roxo-claro);
    overflow:hidden;
    border-radius: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    background-color:#fff;
    cursor:pointer;
    height:100%;
    transition:background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out;
}
.item-resposta label span.txt40{
    font-size: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
}
.item-resposta label span.txt60{
    font-size: clamp(1.438rem, 0.051rem + 2.166vw, 3.75rem);
}
.item-resposta label span.txt80{
    font-size: clamp(1.875rem, 0.001rem + 2.927vw, 5rem);
}

.item-resposta label p{
    display:flex;
    align-items:center;
    padding: clamp(0.5rem, 0.393rem + 0.572vw, 1.125rem);
    margin:0;
}
.item-resposta label::before{
    color: var(--hae-rosa);
    background-color: var(--hae-rosa-claro);
    display:flex;
    align-items:center;
    padding-left: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
    padding-right: clamp(0.75rem, 0.001rem + 1.171vw, 2rem);
    font-size: clamp(1.875rem, 0.001rem + 2.927vw, 5rem);
    font-weight: bold;
    line-height:1;
    transition:background-color 200ms ease-in-out, color 200ms ease-in-out;
}
.item-resposta:nth-child(1) label::before{content:"A.";}
.item-resposta:nth-child(2) label::before{content:"B.";}
.item-resposta:nth-child(3) label::before{content:"C.";}
.item-resposta:nth-child(4) label::before{content:"D.";}

.item-resposta input:checked + label,
.item-resposta:hover label{
    color: var(--hae-rosa);
    background-color: var(--hae-rosa-claro);
}
.item-resposta.certa label{
    color: #fff !important;
    background-color: var(--hae-rosa) !important;
    border-color: var(--hae-rosa) !important;
}
.item-resposta.certa label::before{
    color:#fff !important;
    background-color: var(--hae-rosa) !important;
}

.item-resposta.errada label{
    /* color: var(--hae-rosa);
    background-color: var(--hae-rosa-claro); */
    color: #fff !important;
    background-color: #d80000 !important;
    border-color: #d80000;
}
.item-resposta.errada label::before{
    color:#fff !important;
    background-color: #d80000 !important;
}

.item-resposta.disabled,
.conteudo-jogo .bloco-respostas form button.disabled{
    pointer-events:none;
    opacity:0.3;
    filter: grayscale(80%);
}

.conteudo-jogo .bloco-respostas form.disabled{
    pointer-events:none;
}

.area-buttons{
    display:flex;
    align-items:start;
    justify-content:center;
    gap: clamp(0.5rem, 0.414rem + 0.458vw, 1rem);
    min-height: clamp(2.875rem, 0.102rem + 4.333vw, 7.5rem);
}

.footnote{
    font-family:Helvetica, sans-serif;
    font-weight: 300;
    margin:0;
    color: var(--hae-text);
    font-size: clamp(0.5rem, 0.05rem + 0.703vw, 1.25rem);
    margin-bottom: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
}

.conteudo-justificacao{
    display:flex;
    flex-direction:column;
    align-items: center;
    gap: clamp(0.688rem, -0.024rem + 1.112vw, 1.875rem);
}
.conteudo-justificacao img{
    width:100%;
    height:auto;
}

.header-jogo h3.reduce-width{
    max-width:60%;
}
.conteudo-justificacao img.ajuste-margem{
    margin-top:-7%;
}

/* .footer-justificacao{
    padding-bottom: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);
} */

.bloco-classificacao{
    background-color:#fff;
    padding-right: clamp(4.563rem, 0.178rem + 6.85vw, 11.875rem);
    padding-left: clamp(4.563rem, 0.178rem + 6.85vw, 11.875rem);
    padding-top: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
    padding-bottom: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
    border-radius: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
    margin-bottom:4vh;
}

.item-classificacao{
    display:grid;
    align-items:end;
    grid-template-columns:5fr 82fr 13fr;
    margin-bottom: clamp(0.813rem, -0.049rem + 1.347vw, 2.25rem);
}

.header-classificacao{
    display:grid;
    grid-template-columns:87fr 13fr;
}
.header-classificacao p{
    font-family: 'Cera Pro';
    font-weight: 400;
    color:var(--hae-dark-blue);
    font-size: clamp(0.625rem, -0.049rem + 1.054vw, 1.75rem);
    text-transform: uppercase;
    text-align:center;
    grid-column: 2 / 2;
    margin:0;
}

.item-posicao,
.item-barra p,
.racio-resposta{
    font-family: 'Cera Pro';
    font-weight: 700;
    color:var(--hae-dark-blue);
}
.item-posicao{
    font-size: clamp(1.688rem, 0.001rem + 2.635vw, 4.5rem);
}
.item-posicao.primeiro{
    position:relative;
}
.item-posicao.primeiro::before{
    content:"";
    display: block;
    position:absolute;
    top:60%;
    left:0;
    transform:translate(-110%, -50%);
    width: clamp(2.125rem, 0.027rem + 3.279vw, 5.625rem);
    aspect-ratio: 10 / 12;
    background-image: url('../images/cup.png');
    background-repeat:no-repeat;
    background-size:contain;
}

.item-barra .trilho-barra{
    width:100%;
    position:relative;
    height: clamp(1.313rem, 0.001rem + 2.049vw, 3.5rem);
    background-color: #edebf0;
}

.item-barra .trilho-barra .embolo-barra{
    position:absolute;
    top:0;
    left:0;
    bottom:0;
}
.embolo-barra.excelente{background-color:var(--hae-rosa);}
.embolo-barra.bom{background-color:#00dac1;}
.embolo-barra.medio{background-color:var(--hae-roxo-claro);}
.embolo-barra.baixo{background-color:#fbd82f;}

.item-barra p{
    font-size: clamp(1.438rem, 0.051rem + 2.166vw, 3.75rem);
    margin:0;
}
.racio-resposta{
    font-size: clamp(1.875rem, 0.001rem + 2.927vw, 5rem);
    text-align:center;
}

/* JOGO : end */

.btnJogo{
    display: block;
    color: #fff;
    padding-top: clamp(0.75rem, 0.621rem + 0.686vw, 1.5rem);
    padding-bottom: clamp(0.75rem, 0.621rem + 0.686vw, 1.5rem);
    padding-left: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    padding-right: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    width:fit-content;
    /* margin:0 auto; */
    font-size: clamp(1.188rem, 0.026rem + 1.815vw, 3.125rem);
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: clamp(1.875rem, 1.553rem + 1.716vw, 3.75rem);
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.btnDarkBlue {
    background-color: var(--hae-dark-blue);
    border: solid 0.2vw var(--hae-dark-blue);
}
.btnDarkBlue:hover {
    background-color: #ffffff;
    color: var(--hae-dark-blue);
}

.btnRosa {
    background-color: var(--hae-rosa);
    border: solid 0.2vw var(--hae-rosa);
}
.btnRosa:hover {
    background-color: #ffffff;
    color: var(--hae-rosa);
}



/* MODAL : begin */
.modal-rcm .close-modal{
    display:flex;
    align-items:center;
    justify-content:center;
    background-color: var(--hae-lilas);
    color: var(--hae-dark-blue);
    padding-top:0;
    padding-bottom:0;
    padding-left: clamp(0.5rem, 0.457rem + 0.229vw, 0.75rem);
    padding-right: clamp(0.5rem, 0.457rem + 0.229vw, 0.75rem);
    border-radius: 50%;
    aspect-ratio:1/1;
    border: none;
}
.modal-rcm .close-modal svg{
    height: clamp(1rem, 0.828rem + 0.915vw, 2rem);
    width:auto;
    fill:var(--hae-dark-blue);
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.modal-rcm .close-modal:hover{
    color:#fff;
    background-color: var(--hae-dark-blue);
}
.modal-rcm .close-modal:hover svg{
    fill:#fff;
}

.modal-rcm{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background-color:rgba(239, 66, 111, 0.95);
    opacity:0;
    pointer-events:none;
    z-index: var(--hae-zindex-modal);
    transition:opacity 200ms ease-in-out;
}
.modal-rcm .modal-box{
    display:flex;
    flex-direction:column;
    gap:1vw;
    width:90vw;
    height:90vh;
    max-width:1024px;
    background-color:#fff;
    border-radius:5vw;
    padding:2.4vw 2.4vw 5vw 4vw;
    box-sizing: border-box;
}

@media (min-width:1100px){
    .modal-rcm .modal-box{
        max-width:2048px;
    }
}

.modal-rcm .modal-content{
    overflow-y: auto;
    max-height:100%;
}
.modal-rcm .modal-header{
    display:flex;
    justify-content: end;
}
.modal-rcm .modal-body{
    padding-right:2vw;
    color:#5b6770;
    font-family:Helvetica, sans-serif;
    font-size: clamp(0.625rem, -0.012rem + 0.995vw, 1.688rem);
    line-height:1.1;
    text-align:justify;
}
.modal-rcm .modal-body img{
    width:100%;
    height:auto;
}
.modal-rcm.open{
    opacity:1;
    pointer-events:all;
}
/* MODAL : end */


/* POPUP LOGIN : begin */
.popup-login{
    position:fixed;
    z-index:99;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:rgba(0,0,0,0.8);
    display:flex;
    align-items:center;
    justify-content: center;
    opacity:1;
    transition: opacity 200ms ease-in-out;
}
.popup-login.fadeout{
    opacity:0;
    pointer-events:none;
}

.bloco-popup{
    background-color:#fff;
    width:90vw;
    height:auto;
    max-width:clamp(31.25rem, 1.273rem + 46.838vw, 81.25rem);
    padding-right: clamp(4.563rem, 0.178rem + 6.85vw, 11.875rem);
    padding-left: clamp(4.563rem, 0.178rem + 6.85vw, 11.875rem);
    padding-top: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
    padding-bottom: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
    border-radius: clamp(3rem, 0.077rem + 4.567vw, 7.875rem);
}

.popup-content p{
    font-family: 'Cera Pro';
    font-weight: 700;
    color:var(--hae-dark-blue);
    font-size: clamp(1.125rem, 0.001rem + 1.756vw, 3rem);
    margin-top:0;
    margin-bottom: clamp(1.188rem, 0.026rem + 1.815vw, 3.125rem);
    text-align:center;
}

.popup-buttons{
    display:flex;
    align-items:center;
    justify-content: center;
    gap: clamp(0.813rem, 0.026rem + 1.23vw, 2.125rem);
}
/* POPUP LOGIN : end */



@media (min-aspect-ratio: 16/10) {
    .content-welcome header{height:35vh;}
    .content-welcome header .haeChallenge-logo{max-width:560px;}
    .welcome h1,
    .login h1{font-size: clamp(1.5rem, 0rem + 2.5vw, 3rem);}
    .welcome p{font-size: clamp(1rem, 0rem + 1.667vw, 2rem);}
    .formLogin{gap:18px;}
    .formLogin input[type="text"]{font-size: clamp(0.875rem, 0rem + 1.458vw, 1.75rem);}
    .btnJogo{font-size: clamp(0.875rem, 0rem + 1.458vw, 1.75rem);}

    .bloco-jogo{max-width:1440px;margin:0 auto;}
    .header-jogo p{font-size: clamp(1.25rem, 0rem + 2.083vw, 2.5rem);}
    .header-jogo h3{
        font-size: clamp(1.438rem, 0rem + 2.396vw, 2.875rem);
        max-width:80vw;
        margin-left:auto;
        margin-right:auto;
    }

    .conteudo-jogo .bloco-joker,
    .conteudo-jogo .bloco-pontos{gap:12px;}
    .conteudo-jogo .container-pontos{gap:2px;}
    .conteudo-jogo .item-pontos{
        font-size: clamp(0.938rem, 0rem + 1.563vw, 1.875rem);
        padding-top:8px;
        padding-right:10px;
    }

    .conteudo-jogo .bloco-respostas form{
        gap: clamp(0.938rem, 0.001rem + 1.464vw, 2.5rem);;
    }
    

    .item-resposta label{ font-size: clamp(0.75rem, 0rem + 1.25vw, 1.5rem) }
    .item-resposta label::before{
        font-size: clamp(1.75rem, 0rem + 2.917vw, 3.5rem);
        padding-left: 16px;
        padding-right: 10px;
    }

    .item-resposta label span.txt40{
        font-size: clamp(1rem, 0rem + 1.667vw, 2rem);
    }
    .item-resposta label span.txt60{
        font-size: clamp(1.25rem, 0rem + 2.083vw, 2.5rem);
    }
    .item-resposta label span.txt80{
        font-size: clamp(1.563rem, 0rem + 2.604vw, 3.125rem);
    }

    .bloco-classificacao{
        border-radius:60px;
        padding: 60px 36px 72px 110px;
    }
    .item-barra p{font-size: clamp(0.938rem, 0rem + 1.563vw, 1.875rem);}
    .racio-resposta{font-size: clamp(1.313rem, 0rem + 2.188vw, 2.625rem);}

    .bloco-popup{
        padding: 60px;
        border-radius: 60px;
    }
    .popup-content p{ font-size: clamp(1.125rem, 0rem + 1.875vw, 2.25rem);}
}






/* Registo Utilizador */



/* Questions */
/* 
.question {
    padding-top: 2%;
}

.question h1 {
    display: block;
    font-family: 'Cera Pro';
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    color: #546872;
    margin-top: 20px !important;
    margin-bottom: 20px;
}

.question h1 span.questionNum {
    font-weight: 500;
    color: #ff006b;
    text-transform: uppercase;
    font-size: 22px;
    letter-spacing: 2px;
    margin-bottom: 6px;
}

.question .haeChallenge-logo {
    display: block;
    width: 100%;
    max-width: 260px;
    margin: 15px 0 50px auto;
}

.answers {
    padding-top: 33px;
}

.answers ul {
    padding: 0;
    margin: 0;
}

.answers ul li {
    font-family: 'Cera Pro';
    font-weight: 500;
    position: relative;
    list-style-type: none;
    display: block;
    background-color: #ffffff;
    color: var(--hae-dark-blue);
    text-align: left;
    font-size: 20px;
    text-decoration: none;
    border-radius: 25px;
    padding: 14px 30px 14px 9.5%;  
    margin: auto;
    border: none;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border: 3px solid var(--hae-roxo-claro);
    margin-bottom: 8px;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.answers ul li:before {
    position: absolute;
    left: 0;
    top: 0%;
    padding-top: 10%;
    height: 100%;
    width: 8%;
    float: left;
    color: #FF007B;
    font-size: 36px;
    padding-top: 3px;
    font-weight: bold;
    text-align: center;
    background: #fbd6e5;
    border-top-left-radius: 22px;
    border-bottom-left-radius: 22px;
}

.answers ul li:nth-child(1):before {
    content: "A.";
}

.answers ul li:nth-child(2):before {
    content: "B.";
}

.answers ul li:nth-child(3):before {
    content: "C.";
}

.answers ul li:nth-child(4):before {
    content: "D.";
}

.answers ul li:last-of-type {
    margin-bottom: 0;   
}

.answers ul li.correct:before, .answers ul li.correct:hover:before {
    color: #ffffff;
    background: none;
}

.answers ul li.correct, .answers ul li.correct:hover {
    background: #FF006B;
    background: linear-gradient(90deg,rgba(255, 0, 107, 1) 0%, rgba(219, 0, 94, 1) 100%);
    color: #ffffff;
    border-color: #FF006B;
    opacity: 1;
}

.answers ul li.selected:before, .answers ul li:hover:before {
    color: #FF006B;
    background: none;
}

.answers ul li.selected, .answers ul li:hover {
    background: #fbd6e5;
    color: #FF006B;
}

.answers ul.disabled li {
    pointer-events: none;
    opacity: 0.3;
}

.answers ul.disabled li.correct {
    opacity: 1;
}

.answers ul.disabled li.selected {
    opacity: 0.6;
}

.jokers {
    position: relative;
    height: 100%;
}

.jokers ul {
    position: absolute;
    bottom: 0;
    padding: 0;   
    margin: 0;
}

.jokers ul li {
    list-style-type: none;
    padding: 0;
    margin-bottom: 5px;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.jokers ul li:hover {
    transform: scale3d(1.2, 1.2, 1.2);
}

.jokers ul li img {
    width: 100%;
}

.jokers ul li:last-of-type {
    margin-bottom: 0;
}

.jokers ul li.selected {
    opacity: 0.2;
    transform: none;
}

.jokers p {
    font-family: "against";
    text-transform: uppercase;
    color: #FF006B;
    font-size: 18px;
    margin-bottom: 8px;
}

.pontos {
    position: relative;
    height: 100%;
}

.pontos ul {
    padding: 0;   
    margin: 0;
}

.pontos ul li {
    font-family: "against";
    background: #FF006B;
    background: linear-gradient(90deg,rgba(255, 0, 107, 1) 0%, rgba(219, 0, 94, 1) 100%);
    position: relative;
    list-style-type: none;
    display: block; 
    color: #ffffff;
    text-align: right;
    font-size: 32px;
    line-height: 24px;
    font-weight: bold;
    text-decoration: none;
    border-radius: 12px;
    padding: 23px 15px 0 15px;  
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    opacity: 0.2;
}

.pontos ul li.selected {
    opacity: 1;
}

.pontos p {
    font-family: "against";
    text-transform: uppercase;
    color: #FF006B;
    font-size: 18px;
    margin-bottom: 8px;
}

.btnConclusao {
    margin-top: 20px;
}



.conclusion {
    padding-top: 2%;
}

.conclusion h1 {
    display: block;
    font-family: 'Cera Pro';
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    color: #546872;
    margin-top: 20px !important;
    margin-bottom: 20px;
}

.conclusion h1 span {
    font-weight: 500;
    color: #ff006b;
    text-transform: uppercase;
    font-size: 22px;
    letter-spacing: 2px;
    margin-bottom: 6px;
}

.conclusion .haeChallenge-logo {
    display: block;
    width: 100%;
    max-width: 260px;
    margin: 15px 0 50px auto;
}

.conclusionImg img {
    width: 100%;
}

.refs {
    margin-top: 20px;
}

.refs p {
    color: #546872;
    text-align: left;
    font-size: 12px;
    line-height: 14px;
}


.results {
    padding-top: 2%;
}

.results h1 {
    display: block;
    font-family: 'Cera Pro';
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    color: #546872;
    margin-top: 20px !important;
    margin-bottom: 20px;
}

.results h1 span {
    font-weight: 500;
    color: #ff006b;
    text-transform: uppercase;
    font-size: 22px;
    letter-spacing: 2px;
    margin-bottom: 6px;
}

.results .haeChallenge-logo {
    display: block;
    width: 100%;
    max-width: 260px;
    margin: 15px 0 50px auto;
}

.resultsTable {
    background: #ffffff;
    width: 100%;
    border-radius: 35px;
}

.resultsTable .row {
    padding: 20px 30px;
}

.resultsTable p {
    font-family: 'Cera Pro';
    font-weight: 700;
    font-size: 36px;
    color: var(--hae-dark-blue);
    padding: 20px 0 0 0;
    margin: 0;
    text-align: center;
}

.resultsTable p.teamName {
    font-size: 24px;
    padding-top: 0;
    text-align: left;
}

.percentFill {
    background: #ff007b;
    display: block;
    height: 100%;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.percentFill.one {
    width: 10%;
}

.percentFill.two {
    width: 20%;
}

.percentFill.tree {
    width: 30%;
}

.percentFill.four {
    width: 40%;
}

.percentFill.five {
    width: 50%;
}

.percentFill.six {
    width: 60%;
}

.percentFill.seven {
    width: 70%;
}

.percentFill.eight{
    width: 80%;
}

.percentFill.nine {
    width: 90%;
}

.percentFill.ten {
    width: 100%;
}

.cup {
    display: block;
    width: 100%;
    max-width: 50px;
    margin-left: auto;
    margin-right: 0;
    padding-top: 20px;
}



.takhzyro-logo {
    display: block;
    width: 100%;
    max-width: 200px;
    margin: 10px auto 10px 0;
}

.btnsPopup {
    padding: 0;
    margin: 0;
}

.btnsPopup li {
    display: inline-block;
    list-style-type: none;
}

.btnRcmPopup {
    background: url('../images/btnRcmPopup.png') no-repeat top left;
    background-size: 100%;
    width: 100px;
    height: 100px;
    margin-left: auto;
    margin-right: auto;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.btnRcmPopup:hover {
    background: url('../images/btnRcmPopup_s.png') no-repeat top left;
    background-size: 100%;
}

.btnRefsPopup {
    background: url('../images/btnRefsPopup.png') no-repeat top left;
    background-size: 100%;
    width: 100px;
    height: 100px;
    margin-left: auto;
    margin-right: auto;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.btnRefsPopup:hover {
    background: url('../images/btnRefsPopup_s.png') no-repeat top left;
    background-size: 100%;
} */