*,
*::before,
*::after {
    box-sizing: border-box;
    font-family: Belfius21, Montserrat, arial;
}

body {
    padding: 0;
    margin: 0;
    overflow-x: hidden;
}

header {
    position: fixed;
    width: 100%;
    top: 0px;
    z-index: 100;
    display: block;
    background: #e80953;
    height: 92px;
}

h1 {
    font-size: 1.75rem;
    line-height: 2rem;
    font-weight: 600;
    text-align: center;
    max-width: 360px;
}

h2 {
    font-size: 1.5rem;
    line-height: 1.7rem;
    font-weight: 600;
    text-align: center;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
}

header nav.navbar div.navbar-container {
    display: flex;
    max-width: 58.33%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    width: calc(100% - 40px);
    left: 0;
    right: 0;
    height: 100%;
    justify-content: space-between;
    align-items: center;
}

    header nav.navbar div.navbar-container a.navbar-brand {
        display: block;
        background-size: 100%;
        width: 113px;
        height: 58px;
        background-repeat: no-repeat;
        position: relative;
    }

    header nav.navbar div.navbar-container a.navbar-brand {
        background-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22Layer_2%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20349.26%20179.55%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22Layer_1-2%22%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M92.56%2C3.8h18.99c9.67%2C0%2C15.01%2C4.15%2C15.01%2C10.8%2C0%2C4.33-2.2%2C7.48-5.34%2C9.14%2C4.45%2C1.36%2C7.48%2C4.87%2C7.48%2C10.33%2C0%2C7.12-5.4%2C11.27-15.96%2C11.27h-20.18V3.8ZM110.84%2C21.6c5.76%2C0%2C9.02-2.08%2C9.02-6.17s-3.26-6.23-9.02-6.23h-11.63v12.4h11.63ZM112.38%2C39.94c6.23%2C0%2C9.61-1.96%2C9.61-6.47s-3.38-6.47-9.61-6.47h-13.17v12.94h13.17Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M133.98%2C29.55c0-9.38%2C6.82-16.14%2C16.08-16.14s15.73%2C6.59%2C15.73%2C16.38c0%2C.53-.06%2C1.36-.12%2C1.96h-25.28c.83%2C5.04%2C5.04%2C8.37%2C10.98%2C8.37%2C3.62%2C0%2C6.59-1.19%2C8.84-3.68l3.5%2C4.15c-2.85%2C3.32-7.24%2C5.1-12.52%2C5.1-10.38%2C0-17.21-6.71-17.21-16.14ZM159.67%2C27.18c-.59-4.93-4.45-8.31-9.61-8.31s-8.96%2C3.32-9.67%2C8.31h19.29Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M173.38%2C1.31h6.41v44.03h-6.41V1.31Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M189.07%2C13.77v-2.31c0-6.35%2C3.86-10.5%2C10.86-10.5%2C2.49%2C0%2C4.87.53%2C6.47%2C1.72l-1.9%2C4.93c-1.13-.83-2.61-1.42-4.21-1.42-3.26%2C0-4.93%2C1.84-4.93%2C5.34v2.25h8.96v5.28h-8.84v26.29h-6.41V13.77ZM215.81%2C0c2.37%2C0%2C4.21%2C1.72%2C4.21%2C3.92%2C0%2C2.37-1.78%2C4.15-4.21%2C4.15s-4.21-1.72-4.21-4.04c0-2.2%2C1.84-4.04%2C4.21-4.04ZM212.6%2C13.77h6.41v31.57h-6.41V13.77Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M228.1%2C31.87V13.77h6.41v17.39c0%2C5.88%2C2.91%2C8.84%2C8.01%2C8.84%2C5.64%2C0%2C9.32-3.44%2C9.32-10.03V13.77h6.41v31.57h-6.11v-4.21c-2.37%2C2.97-6.17%2C4.57-10.38%2C4.57-8.19%2C0-13.65-4.39-13.65-13.83Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M265.76%2C42.13l2.67-5.1c2.73%2C1.84%2C7%2C3.2%2C11.04%2C3.2%2C4.92%2C0%2C7.06-1.48%2C7.06-3.92%2C0-6.53-19.76-.59-19.76-13.17%2C0-5.93%2C5.34-9.73%2C13.47-9.73%2C4.15%2C0%2C8.9%2C1.07%2C11.69%2C2.85l-2.73%2C5.04c-2.91-1.78-5.99-2.37-9.02-2.37-4.69%2C0-7.06%2C1.6-7.06%2C3.92%2C0%2C6.88%2C19.76%2C1.01%2C19.76%2C13.35%2C0%2C5.88-5.46%2C9.49-13.89%2C9.49-5.28%2C0-10.5-1.54-13.23-3.56Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M14.83%2C152.01h2.85l12.48%2C27.3h-3.04l-3.28-7.29h-15.21l-3.28%2C7.29h-3l12.48-27.3ZM22.78%2C169.68l-6.55-14.66-6.55%2C14.66h13.1Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M39.86%2C176l1.13-2.22c1.95%2C1.91%2C5.42%2C3.32%2C9.01%2C3.32%2C5.11%2C0%2C7.33-2.15%2C7.33-4.84%2C0-7.49-16.81-2.89-16.81-12.99%2C0-4.02%2C3.12-7.49%2C10.06-7.49%2C3.08%2C0%2C6.28.9%2C8.46%2C2.42l-.98%2C2.3c-2.34-1.52-5.07-2.26-7.49-2.26-4.99%2C0-7.22%2C2.22-7.22%2C4.95%2C0%2C7.49%2C16.81%2C2.96%2C16.81%2C12.91%2C0%2C4.02-3.2%2C7.45-10.18%2C7.45-4.1%2C0-8.11-1.44-10.14-3.55Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M71.65%2C176l1.13-2.22c1.95%2C1.91%2C5.42%2C3.32%2C9.01%2C3.32%2C5.11%2C0%2C7.33-2.15%2C7.33-4.84%2C0-7.49-16.81-2.89-16.81-12.99%2C0-4.02%2C3.12-7.49%2C10.06-7.49%2C3.08%2C0%2C6.28.9%2C8.46%2C2.42l-.98%2C2.3c-2.34-1.52-5.07-2.26-7.49-2.26-4.99%2C0-7.22%2C2.22-7.22%2C4.95%2C0%2C7.49%2C16.81%2C2.96%2C16.81%2C12.91%2C0%2C4.02-3.2%2C7.45-10.18%2C7.45-4.1%2C0-8.11-1.44-10.14-3.55Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M105.81%2C167.65v-15.64h2.89v15.52c0%2C6.47%2C3.04%2C9.44%2C8.35%2C9.44s8.39-2.96%2C8.39-9.44v-15.52h2.81v15.64c0%2C7.84-4.21%2C11.9-11.19%2C11.9s-11.23-4.06-11.23-11.9Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M144.73%2C152.01h10.22c6.94%2C0%2C11.15%2C3.51%2C11.15%2C9.36%2C0%2C4.29-2.26%2C7.29-6.24%2C8.58l6.67%2C9.36h-3.16l-6.24-8.78c-.7.08-1.4.12-2.18.12h-7.33v8.66h-2.89v-27.3ZM154.87%2C168.2c5.46%2C0%2C8.35-2.54%2C8.35-6.83s-2.89-6.86-8.35-6.86h-7.25v13.69h7.25Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M188.84%2C152.01h2.85l12.48%2C27.3h-3.04l-3.28-7.29h-15.21l-3.28%2C7.29h-3l12.48-27.3ZM196.8%2C169.68l-6.55-14.66-6.55%2C14.66h13.1Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M216.49%2C152.01h2.38l17.59%2C22.15v-22.15h2.85v27.3h-2.38l-17.55-22.15v22.15h-2.89v-27.3Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M253.58%2C165.66c0-8%2C6.08-13.88%2C14.31-13.88%2C3.98%2C0%2C7.57%2C1.33%2C9.98%2C3.98l-1.83%2C1.83c-2.22-2.26-4.95-3.24-8.07-3.24-6.59%2C0-11.54%2C4.84-11.54%2C11.31s4.95%2C11.31%2C11.54%2C11.31c3.12%2C0%2C5.85-.98%2C8.07-3.28l1.83%2C1.83c-2.42%2C2.65-6.01%2C4.02-10.02%2C4.02-8.19%2C0-14.27-5.89-14.27-13.88Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M311.15%2C176.82v2.5h-19.31v-27.3h18.72v2.5h-15.83v9.71h14.12v2.46h-14.12v10.14h16.42Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M323.12%2C176l1.13-2.22c1.95%2C1.91%2C5.42%2C3.32%2C9.01%2C3.32%2C5.11%2C0%2C7.33-2.15%2C7.33-4.84%2C0-7.49-16.81-2.89-16.81-12.99%2C0-4.02%2C3.12-7.49%2C10.06-7.49%2C3.08%2C0%2C6.28.9%2C8.46%2C2.42l-.97%2C2.3c-2.34-1.52-5.07-2.26-7.49-2.26-4.99%2C0-7.22%2C2.22-7.22%2C4.95%2C0%2C7.49%2C16.81%2C2.96%2C16.81%2C12.91%2C0%2C4.02-3.2%2C7.45-10.18%2C7.45-4.1%2C0-8.11-1.44-10.14-3.55Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M0%2C97.51c0-21.45%2C14.91-35.57%2C35.44-35.57%2C9.15%2C0%2C17.39%2C3.27%2C23.15%2C9.94v-36.62h14.12v97.04h-13.47v-9.81c-5.62%2C7.19-14.12%2C10.59-23.8%2C10.59C14.91%2C133.09%2C0%2C118.96%2C0%2C97.51ZM36.62%2C120.79c12.56%2C0%2C22.23-9.16%2C22.23-23.28s-9.68-23.15-22.23-23.15-22.36%2C9.02-22.36%2C23.15%2C9.68%2C23.28%2C22.36%2C23.28Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M90.63%2C62.72h14.12v69.58h-14.12V62.72Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M120.61%2C62.72h13.47v10.72c4.58-7.59%2C13.21-11.51%2C24.98-11.51v13.73c-1.18-.13-2.22-.13-3.27-.13-12.95%2C0-21.06%2C7.72-21.06%2C22.63v34.13h-14.12V62.72Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M162.26%2C105.64c-3.72-20.33%2C8.38-37.7%2C28.45-41.38%2C19.94-3.65%2C36.71%2C8.03%2C40.59%2C29.26.21%2C1.16.41%2C2.98.52%2C4.29l-54.8%2C10.04c3.8%2C10.6%2C12.2%2C15.16%2C25.28%2C15.16%2C6.53%2C0%2C14.71-3.35%2C17.55-8.45l7.61%2C9.16c-8.83%2C6.82-14.11%2C9.36-21.49%2C10.08-22.78%2C2.21-39.97-7.7-43.72-28.16ZM217.02%2C90.29c-3.24-10.44-12.95-16.24-24.14-14.19s-18.11%2C10.76-17.67%2C21.85l41.81-7.66Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M236.68%2C97.51c0-20.79%2C15.56-35.57%2C37.14-35.57%2C12.95%2C0%2C23.54%2C5.36%2C28.9%2C15.56l-10.85%2C6.67c-4.32-6.67-10.86-9.81-18.18-9.81-12.95%2C0-22.76%2C8.89-22.76%2C23.15s9.81%2C23.28%2C22.76%2C23.28c7.32%2C0%2C13.86-3.01%2C18.18-9.81l10.85%2C6.67c-5.36%2C9.94-15.96%2C15.43-28.9%2C15.43-21.58%2C0-37.14-14.78-37.14-35.57Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M310.94%2C62.72v-15.3h14.12v15.3h19.49v11.64h-19.49v35.83c0%2C7.06%2C3.79%2C11.12%2C10.46%2C11.12%2C3.53%2C0%2C6.93-1.18%2C9.42-3.14l4.32%2C10.2c-3.92%2C3.14-9.68%2C4.71-15.43%2C4.71-14.52%2C0-22.89-7.85-22.89-22.5v-47.87Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    }

header div.navbar .nav-link {
    text-decoration: underline;
    padding: 0.5rem 2rem;
    display: none;
}

.hide {
    visibility: hidden;
}

.navbar-phone {
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.5rem;
}

    .navbar-phone:before {
        content: "";
        width: 17px;
        height: 17px;
        display: block;
        position: absolute;
        background-image: url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='UTF-8'?%3e%3csvg id='Layer_2' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192.19 192'%3e%3cdefs%3e%3cstyle%3e.cls-1%7bfill:%23fff;%7d%3c/style%3e%3c/defs%3e%3cg id='Layer_1-2'%3e%3cpath class='cls-1' d='m52,0c6.25,2.34,9.49,7.22,11.82,13.2,3.86,9.89,8.09,19.63,12.14,29.45,3.9,9.45,2.28,15.54-5.72,21.94-4.41,3.53-8.75,7.16-13.19,10.66-1.96,1.54-2.48,2.87-1.26,5.43,11.46,24.03,34.41,46.48,58.94,57.12,4.44-5.39,8.9-10.94,13.5-16.36,6.54-7.69,11.95-9.03,21.17-5.26,10.6,4.33,21.18,8.71,31.72,13.18,9.66,4.1,12.84,10.69,10.17,20.8-2.5,9.46-5.13,18.89-7.62,28.35-1.8,6.81-6.01,11.27-12.66,13.48h-16c-7.81-1.36-15.77-2.18-23.42-4.15C65.21,170.76,22.75,129.21,5.03,62.9c-2.6-9.72-3.4-19.92-5.03-29.9,0-3.67,0-7.33,0-11C2.63,13.55,8.72,9.59,17.11,7.66,25.87,5.64,34.38,2.6,43,0c3,0,6,0,9,0Z'/%3e%3c/g%3e%3c/svg%3e");
        background-size: contain;
        background-repeat: no-repeat;
        margin-left: -27px;
    }

    .navbar-phone span span {
        display: block;
        font-weight: 500;
    }

    .navbar-phone span a {
        display: block;
        color: #fff;
        cursor: pointer;
    }

        .navbar-phone span a:hover {
            text-decoration: underline;
        }

main {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 130px 0 0 0;
    margin: 0 auto;
    max-width: 58.33%;
}

h5 {
    max-width: 1210px;
    margin: 40px auto 0 auto;
    text-align: center;
    font-family: Belfius21, Montserrat, arial;
    font-size: 1.5rem;
    font-weight: 400;
    padding: 0 30px;
}

h6 {
    max-width: 1210px;
    margin: 40px auto 0 auto;
    text-align: center;
    font-family: Belfius21, Montserrat, arial;
    font-size: 1.3rem;
    font-weight: 400;
    padding: 0 30px;
}

ul {
    font-family: Belfius21, Montserrat, arial;
    font-size: 1rem;
}

    ul li {
        margin-bottom: 10px;
    }

.sms__container {
    width: 100%;
    max-width: 410px;
    margin: 0 auto 30px auto;
    overflow: visible;
    padding: 2px;
}

#step1 .step-content,
#step2 .step-content {
    transition: transform 0.22s cubic-bezier(0.25, 0.1, 0.25, 1), opacity 0.22s ease-out;
}

#step1.step-leaving .step-content {
    transform: translateX(-3%) scale(0.99);
    opacity: 0.7;
}

#step1.step-entering .step-content {
    transform: translateX(-3%) scale(0.99);
    opacity: 0.7;
}

#step2.step-entering .step-content {
    transform: translateX(3%) scale(0.99);
    opacity: 0.7;
}

#step2.step-leaving .step-content {
    transform: translateX(3%) scale(0.99);
    opacity: 0.7;
}

.sms__container-input input {
    min-height: 50px;
    font-size: 1.3rem;
    line-height: 1.3rem;
    border: 2px solid #d2d2d7;
    border-radius: 12px;
    padding: 15px 20px 15px 20px;
    width: 100%;
    margin: 0 auto 10px auto;
    font-family: Belfius21, Montserrat, arial;
}

    .sms__container-input input#code {
        padding: 15px 20px;
        margin: 0 auto 20px auto;
    }

    .sms__container-input input:-webkit-autofill,
    .sms__container-input input:-webkit-autofill:hover,
    .sms__container-input input:-webkit-autofill:focus {
        -webkit-text-fill-color: #000000;
        -webkit-box-shadow: 0 0 0 40rem #fff inset;
    }

    .sms__container-input input:focus {
        outline: 2px solid #ff9e16;
    }

        .sms__container-input input:focus.focus-from-keyboard {
            outline: 2px solid #0066cc;
            outline-offset: 2px;
        }

    .sms__container-input input.is-invalid {
        color: #f5002d;
    }

    .sms__container-input input.input-error,
    .sms__container-input-separate input.input-error {
        border: 2px solid #f5002d;
        outline: none;
    }

.sms__container label {
    max-width: 400px;
    margin: 20px auto 10px auto;
    font-size: 1rem;
    line-height: 1.3rem;
    color: #51626f;
    display: block;
}

.sms__container a {
    font-family: Belfius21, Montserrat, arial;
    max-width: 400px;
    line-height: 1.5rem;
    color: #000;
    font-weight: bold;
    cursor: pointer;
}

    .sms__container a:hover {
        text-decoration: underline;
    }

.sms__container button {
    display: block;
    max-width: 216px;
    font-size: 1rem;
    margin-top: 20px;
    background: #c30045;
    border: none;
    border-radius: 26px;
    min-height: 48px;
    padding: 0 35px;
    font-weight: 600;
    line-height: 1rem;
    color: #ffffff;
    height: fit-content;
    margin: 30px auto 0 auto;
    width: 100%;
    cursor: pointer;
}

    .sms__container button:hover:not(:disabled) {
        background: #a8003a;
    }

    .sms__container button:disabled {
        background: #d2d2d7;
        cursor: no-drop;
    }

#emailCheckingMessage.d-none {
    display: none;
}

.email-checking-message {
    margin: 10px 0 0 0;
    color: inherit;
    opacity: 0.5;
    animation: email-checking-pulse 1.2s ease-in-out infinite;
}

@keyframes email-checking-pulse {
    0%, 100% {
        opacity: 0.5;
    }

    50% {
        opacity: 1;
    }
}

#codeErrorMessage {
    color: #f5002d;
    margin: 15px 0 15px 0;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

#step2 #codeErrorMessage {
    text-align: left;
}

#codeErrorMessage::before {
    content: "";
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23e80953' stroke-width='2' stroke-linejoin='round' d='M12 2L2 20h20L12 2z'/%3E%3Cline x1='12' y1='8' x2='12' y2='13' stroke='%23e80953' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16' r='1.5' fill='%23e80953'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#codeErrorMessage.d-none {
    display: none;
}

#step2 p {
    font-family: Belfius21, Montserrat, arial;
    font-size: 1rem;
}

.step1Text,
.step2Text {
    text-align: center;
}

.d-none {
    display: none;
}

@keyframes modalScaleBounce {
    0% {
        transform: scale(0.6);
        opacity: 0;
    }

    50% {
        transform: scale(1.05);
    }

    70% {
        transform: scale(0.95);
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.info-modal {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
}

.info-modal__overlay {
    position: absolute;
    inset: 0;
    background: #000;
    opacity: 0.5;
    cursor: pointer;
}

.info-modal__dialog {
    position: relative;
    background: #fff;
    border-radius: 16px;
    padding: 24px 24px 20px;
    max-width: 360px;
    width: 100%;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
    text-align: center;
    animation: modalScaleBounce 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.info-modal__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    font-size: 1.5rem;
    line-height: 1;
    color: #333;
    cursor: pointer;
    border-radius: 4px;
}

    .info-modal__close:hover {
        background: #d2d2d7;
    }

    .info-modal__close:focus-visible {
        outline: 2px solid #0066cc;
        outline-offset: 2px;
    }

.info-modal__dialog h1 {
    margin-bottom: 12px;
}

.info-modal__dialog p {
    margin-bottom: 24px;
}

.info-modal__actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 24px;
}

.info-modal__cancel {
    background: #fff;
    color: #c30045;
    border: 2px solid #c30045;
    border-radius: 26px;
    min-height: 44px;
    padding: 0 24px;
    font-size: 1rem;
    cursor: pointer;
    font-family: inherit;
}

    .info-modal__cancel:hover {
        text-decoration: underline;
    }

    .info-modal__cancel:focus-visible {
        outline: 2px solid #0066cc;
        outline-offset: 2px;
    }

.info-modal__continue {
    background: #c30045;
    color: #fff;
    border: none;
    border-radius: 26px;
    min-height: 44px;
    padding: 0 24px;
    font-size: 1rem;
    cursor: pointer;
    font-family: inherit;
}

    .info-modal__continue:hover {
        background: #b0003e;
    }

    .info-modal__continue:focus-visible {
        outline: 2px solid #0066cc;
        outline-offset: 2px;
    }

.info-modal.d-none {
    display: none;
}

#infoText,
#mobileNotFound {
    text-align: center;
}

    #mobileNotFound p:first-child,
    #mobileNotFound p {
        display: flex;
        align-items: flex-start;
        gap: 0.5rem;
        text-align: left;
        color: #f5002d;
    }

        #mobileNotFound p::before {
            content: "";
            flex-shrink: 0;
            width: 1.25rem;
            height: 1.25rem;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23e80953' stroke-width='2' stroke-linejoin='round' d='M12 2L2 20h20L12 2z'/%3E%3Cline x1='12' y1='8' x2='12' y2='13' stroke='%23e80953' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16' r='1.5' fill='%23e80953'/%3E%3C/svg%3E");
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center;
        }

    #infoText p,
    #step1 p {
        font-size: 1rem;
        line-height: 1.3rem;
        margin: 0 auto 10px auto;
    }

        #step1 p#emailCheckingMessage {
            text-align: left;
        }

#backBtn {
    align-self: flex-start;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8yIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4IDEzIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2MzMDA0NTt9PC9zdHlsZT48L2RlZnM+PGcgaWQ9IkxheWVyXzEtMiI+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNi41LDEzYy0uMzgsMC0uNzctLjE1LTEuMDYtLjQ0TC40NCw3LjU2Yy0uNTktLjU5LS41OS0xLjU0LDAtMi4xMkw1LjQ0LjQ0Yy41OS0uNTksMS41NC0uNTksMi4xMiwwLC41OS41OS41OSwxLjU0LDAsMi4xMmwtMy45NCwzLjk0LDMuOTQsMy45NGMuNTkuNTkuNTksMS41NCwwLDIuMTItLjI5LjI5LS42OC40NC0xLjA2LjQ0WiIvPjwvZz48L3N2Zz4=");
    min-width: 10px;
    height: 17px;
    background-color: transparent;
    border: none;
    border-radius: 8px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 30px;
    font-size: 1rem;
    margin-bottom: 40px;
    cursor: pointer;
    outline: none;
}

    #backBtn:hover {
        text-decoration: underline;
    }

    #backBtn:focus-visible {
        box-shadow: 0 0 0 2px #0066cc;
    }

#nocode {
    font-size: 1.5rem;
}

.info-button {
    position: absolute;
    display: inline-block;
    cursor: pointer;
    background: transparent;
    color: #f5002d;
    border: 2px solid #f5002d;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 18px;
    margin-left: 10px;
    margin-top: 3px;
}

.tooltip {
    visibility: hidden;
    opacity: 0;
    background-color: #fff;
    color: #000;
    text-align: left;
    border-radius: 5px;
    padding: 6px 8px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    transition: opacity 0.2s ease;
    font-size: 13px;
    white-space: normal;
    max-width: min(280px, calc(100vw - 24px));
    width: max-content;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.info-button:hover .tooltip,
.info-button:focus .tooltip,
.info-button:focus-visible .tooltip {
    visibility: visible;
    opacity: 1;
}

.info-button:focus-visible {
    outline: 2px solid #0066cc;
    outline-offset: 2px;
}

.tooltip a.tooltip-tel {
    color: #000;
    text-decoration: underline;
    cursor: pointer;
    font-size: 0.8125rem;
}

    .tooltip a.tooltip-tel:focus-visible {
        outline: 2px solid #0066cc;
    }

    .tooltip a.tooltip-tel:hover {
        text-decoration-thickness: 2px;
    }

.tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
}

#sendagain {
    text-decoration: underline;
}

    #sendagain:hover {
        color: #f5002d;
    }

    #sendagain:focus-visible,
    #sendAgainStep2:focus-visible {
        outline: 2px solid #0066cc;
        outline-offset: 2px;
    }

#sendAgainStep2 {
    text-decoration: underline;
}

    #sendAgainStep2:hover {
        color: #f5002d;
    }

.sms__container-input-separate {
    display: flex;
    justify-content: space-between;
    margin: 10px 0 10px 0;
}

    .sms__container-input-separate input {
        width: 14%;
        border-radius: 10px;
        background: transparent;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 60px;
        text-align: center;
        font-size: 1.5rem;
        border: 2px solid #d2d2d7;
        outline: 2px solid #ff9e16;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDMzIDEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxsaW5lIHkxPSIwLjUiIHgyPSIzMyIgeTI9IjAuNSIgc3Ryb2tlPSIjRDFENURCIi8+Cjwvc3ZnPgo=");
        background-repeat: no-repeat;
        background-size: 70%;
        background-position: center 80%;
        -moz-appearance: textfield;
    }

        .sms__container-input-separate input::-webkit-outer-spin-button,
        .sms__container-input-separate input::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }

        .sms__container-input-separate input:disabled {
            outline: none;
        }

        .sms__container-input-separate input:focus {
            outline: 2px solid #ff9e16;
        }

            .sms__container-input-separate input:focus.focus-from-keyboard {
                outline: 2px solid #0066cc;
                outline-offset: 2px;
            }

#delayStep1,
#delay,
#mobileShort {
    font-weight: 600;
}

#mobileShort {
    margin-top: 10px;
    display: block;
}

.sms__countdown-above {
    margin-bottom: 12px;
    margin-top: 0;
}

.sms__container #step2 p.sms__countdown-above + p {
    margin-top: 0;
    margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
    header nav.navbar div.navbar-container {
        max-width: calc(100% - 30px);
    }

    .funnel-title {
        font-size: 1.5rem;
        line-height: 1.7rem;
        margin: 30px auto 0 auto;
    }

    main {
        overflow: visible;
        max-width: calc(100% - 32px);
        padding-bottom: calc(80px + env(safe-area-inset-bottom, 0));
    }

    .sms__container button {
        max-width: 100%;
    }

    .sms__container #send,
    .sms__container #validate {
        position: fixed;
        bottom: 20px;
        left: 20px;
        right: 20px;
        width: calc(100% - 40px);
        max-width: 410px;
        margin: 0 auto;
        z-index: 50;
        border-radius: 26px;
        min-height: 48px;
    }

    .sms__container h5 {
        margin: 30px auto 20px auto;
        font-size: 1.3rem;
        line-height: 1.8rem;
    }

    .sms__container label,
    .sms__container a {
        font-size: 1rem;
        line-height: 1.2rem;
    }

    #nocode a#sendagain,
    #noCodeStep2 a#sendAgainStep2 {
        font-size: 1rem;
    }

    .tooltip {
        left: auto;
        right: 0;
        transform: none;
    }

        .tooltip::after {
            left: auto;
            right: 10px;
            margin-left: 0;
        }
}

@media screen and (max-width: 640px) {
    header {
        position: absolute;
        height: 50px;
    }

        header nav.navbar div.navbar-container a.navbar-brand {
            width: 60px;
            height: 32px;
        }

    main {
        padding: 70px 0 0 0;
    }
}
