@font-face {
    font-family: 'museo_sans_300';
    src: url(../fonts/MuseoSans_300.otf);
}
@font-face {
    font-family: 'museo_sans_500';
    src: url(../fonts/MuseoSans_500.otf);
}
@font-face {
    font-family: 'museo_sans_700';
    src: url(../fonts/MuseoSans_700.otf);
}
@font-face {
    font-family: 'Gilroy-ExtraBold';
    src: url(../fonts/Gilroy-ExtraBold.otf);
}
@font-face {
    font-family: 'Gilroy-Light';
    src: url(../fonts/Gilroy-Light.otf);
}
@font-face {
    font-family: 'Gilroy-Bold';
    src: url(../fonts/Gilroy-Bold.ttf);
}
*{
    font-family: 'museo_sans_500';
}
body{
    background: url(../img/main-bg.png);
    min-height: 100vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.error{
    color: red;
}

.petronas-logo{
    width: 7.25%;
    max-width: 150px;
}
.register-main{
    width: 94%;
    margin: auto;
    padding-top: 53px;
    padding-bottom: 53px;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.main-title{
    width: 100%;
}
.event-name{
    color: white;
    text-shadow: 5px 5px 5px rgba(0, 0, 0, 0.20);
    font-family: 'museo_sans_700';
    font-size: 2.575vw;
    font-style: italic;
    text-align: center;
}
.event-date{
    text-align: center;
    font-size: 1.825vw;
    text-shadow: 5px 5px 5px rgba(0, 0, 0, 0.20);
    color: white;
    font-style: italic;
}
.register-form{
    padding: calc(1vw + 16px) calc(1.75vw + 16px);
    border-radius: 50px;
    background: linear-gradient(137.61deg, rgba(77, 63, 128, 0.75) 2.74%, rgba(0, 0, 0, 0.75) 102.12%);
    box-shadow: 5px 5px 15px 0px #00000033;
    backdrop-filter: blur(20px);
    position: relative;
}
.register-form::before{
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: -1;
    border-radius: 50px;
    padding: 3px;
    background: linear-gradient(319.47deg, #D9C9E1 -2.43%, #987FB8 97.53%); /* your gradient */
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}
.register-form h2{
    color: white;
    font-family: 'Gilroy-ExtraBold';
    font-size: 1.825vw;
    text-align: center;
    text-transform: uppercase;
    text-shadow: 5px 5px 5px #00000033;
}
.register-form h3{
    color: white;
    font-family: 'museo_sans_500';
    font-weight: 500;
    font-size: 1.25vw;
    text-align: center;
    text-shadow: 5px 5px 5px #00000033;
}
.register-form h3 span{
    font-family: 'museo_sans_700';
}
.register-form p{
    color: white;
    font-size: 1.05vw;
    text-align: center;
    font-family: 'museo_sans_300';
    text-shadow: 5px 5px 5px #00000033;
}
.register-form p strong{
    font-weight: unset;
    font-family: 'museo_sans_700';
}
.register-form .custom-input{
    border-radius: 25rem;
    border: 1px solid #4D3F80;
    background: #FFF;
    padding: 10px;
    font-size: 1.25vw;
    color: #4D3F80;
    width: 100%;
    text-align: center;
    outline: none;
    font-family: 'Gilroy-Bold';
    line-height: 1;
}
.register-form .custom-input::placeholder {
    color: #4D3F80;
    opacity: 1;
}
.register-form .custom-input::-moz-placeholder {
    color: #4D3F80;
    opacity: 1;
}
.register-form .custom-input:-ms-input-placeholder {
    color: #4D3F80;
    opacity: 1;
}
.register-form .custom-input::-webkit-input-placeholder {
    color: #4D3F80;
    opacity: 1;
}
.register-form .custom-input::-webkit-inner-spin-button,
.register-form .custom-input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.qr-img{
    width: 45%;
    padding: 20px;
    background: white;
    border-radius: 8px;
}
.select-parent{
    position: relative;
    isolation: isolate;
    z-index: 99;
}
#regions-parent{
    z-index: 999;
}
.select2-container--open{
    left: 0 !important;
    top: 50% !important;
    z-index: -1;
}
.select2-container--open .select2-dropdown--below,
.select2-container--open .select2-dropdown--above{
    border-bottom-left-radius: 20px !important;
    border-bottom-right-radius: 20px !important;
}
.select2-container--below,
.select2-container--above{
    z-index: 1;
}
.select2-search{
    visibility: hidden;
    pointer-events: none;
}
.select2-container li{
    font-size: 1.25vw !important;
    color: black !important;
    text-align: center;
}
.select2-container .select2-results__option--disabled{
    color: #6D6D6D !important;
}
.select2-selection__rendered{
    text-align: center;
    font-size: 1.25vw !important;
    color: black !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    font-family: 'museo_sans_700';
}
.select2-container--default .select2-selection--single{
    border-radius: 25rem !important;
    border: 1px solid #4D3F80 !important;
    padding: 10px !important;
    height: auto !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b{
    border-color: #4D3F80;
    border-width: 0 3px 3px 0;
    transform: translateY(-50%) rotate(45deg);
    width: 15px;
    height: 15px;
    transition: all .3s;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{
    border-color: #4D3F80;
    border-width: 0 3px 3px 0;
    transform: translateY(-50%) rotate(-135deg);
    transition: all .3s;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
    top: 50%;
    transform: translateY(-50%);
    right: 5%;
}
.select2-selection__placeholder{
    color: #4D3F80 !important;
    font-family: 'museo_sans_700';
}
.select2-results__options li{
    width: 85%;
    margin: auto;
    padding: 0;
    border-radius: 25rem;
}
.select2-results__options li:hover{
    background-color: #4D3F80 !important;
    color: white !important;
}
.select2-container .select2-results__option--disabled:hover{
    background: white !important;
    color: #6D6D6D !important;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{
    background-color: #4D3F80 !important;
    color: white !important;
}

.form-button button{
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 10px;
    font-size: 1.25vw;
    color: #fff;
    font-family: 'Gilroy-ExtraBold';
    background: linear-gradient(137.61deg, #4D3F80 2.74%, #000000 102.12%);
    outline: none;
    border-radius: 25rem;
    transition: all .3s;
    border: none;
    line-height: 1.2;
}

.form-button button:disabled{
    opacity: 0.5;
}
.form-button button::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: -1;
    border-radius: 25rem;
    padding: 2px;
    background: linear-gradient(137.61deg, #D9C9E1 2.74%, #4D3F80 102.12%);
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}
.form-button button:hover{
    background: linear-gradient(137.61deg, #D9C9E1 2.74%, #4D3F80 102.12%);
    color: white;
}
.agenda-btn{
    position: relative;
    z-index: 1;
    width: 54%;
    padding: 10px;
    font-size: 1.25vw;
    color: #fff;
    font-family: 'Gilroy-ExtraBold';
    background: linear-gradient(137.61deg, #4D3F80 2.74%, #000000 102.12%);
    outline: none;
    border-radius: 25rem;
    transition: all .3s;
    border: none;
    line-height: 1.2;
    margin-top: 15vw;
}
.agenda-btn::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: -1;
    border-radius: 25rem;
    padding: 2px;
    background: linear-gradient(137.61deg, #D9C9E1 2.74%, #4D3F80 102.12%);
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}
.agenda-btn:hover{
    background: linear-gradient(137.61deg, #D9C9E1 2.74%, #4D3F80 102.12%);
    color: white;
}
.mail-link{
    color: white;
    font-size: 1.05vw;
    text-shadow: 5px 5px 5px #00000033;
    font-family: 'museo_sans_300';
    font-style: italic;
}
.notice{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: white;
    text-align: center;
    font-size: 0.95vw;
    padding: 0.85vw 0;
    border-radius: 0 0 46px 46px;
}
.after-submit{
    display: none;
}
.olio-logo{
    width: 41%;
}
#agendaModal .modal-content{
    background: linear-gradient(137.61deg, #4D3F80 2.74%, #000000 102.12%);
    border-radius: 50px;
    box-shadow: 5px 5px 15px 0px #00000033;
    backdrop-filter: blur(20px)
}
#agendaModal .modal-content::before{
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: -1;
    border-radius: 50px;
    padding: 2px;
    background: linear-gradient(319.47deg, #D9C9E1 -2.43%, #987FB8 97.53%);
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
#agendaModal .btn-close{
    position: absolute;
    right: 5%;
    top: 15px;
    text-shadow: 0px 2px 3px #0000004D, 0px 6px 10px  #00000026;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center / 1em auto no-repeat;
    opacity: 1;
}
#agendaModal h2{
    color: white;
    font-family: 'Gilroy-ExtraBold';
    font-size: 1.825vw;
    text-align: center;
    text-transform: uppercase;
    text-shadow: 5px 5px 5px #00000033;
}
.agenda-row{
    display: flex;
    gap: 12px;
    margin-top: 25px;
}
.agenda-row>div{
    background: linear-gradient(137.61deg, #4D3F80 2.74%, #000000 102.12%);
    border: 1.5px solid #FFFFFF;
    font-family: 'Gilroy-Bold';
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    border-radius: 25rem;
    color: white;
    padding: 0px 5px;
    line-height: 1;
    height: 70px;
}
.agenda-time{
    width: 169px;
}
.agenda-title{
    width: calc(100% - 182px);
    text-align: center;
}
#agendaModal .modal-content{
    padding: 45px 44px;
}
.dress-code{
    background: linear-gradient(137.61deg, #D9C9E1 2.74%, #4D3F80 102.12%);
    border: 1.5px solid #FFFFFF;
    text-align: center;
    padding: 14px;
    margin-top: 25px;
    border-radius: 25rem;
}
.dress-code p{
    margin: 0;
    line-height: 1;
    font-size: 20px;
    font-family: 'Gilroy-ExtraBold';
    background: linear-gradient(171deg, #4D3F80 2.74%, #000000 102.12%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    width: max-content;
    margin: auto;
}
@media (min-width: 576px) {
    #agendaModal .modal-dialog {
        max-width: 650px;
        margin-right: auto;
        margin-left: auto;
    }
}
@media (max-width: 991px) {
    body{
        background: url(../img/main-bg-mobile.png);
        background-size: cover;
        background-position: center;
    }
    .petronas-logo{
        width: 25%;
    }
    .event-date{
        font-size: 4.225vw;
    }
    .register-form .custom-input{
        font-size: 4.225vw;
    }
    .select2-container li{
        font-size: 4.225vw !important;
    }
    .select2-selection__rendered{
        font-size: 4.225vw !important;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow b{
        width: 10px;
        height: 10px;
    }
    .form-button button{
        font-size: 4.225vw;
    }
    .agenda-btn{
        font-size: 4.225vw;
        margin-top: 50vw;
    }
    .event-name{
        font-size: 4.75vw;
    }
    .mail-link{
        font-size: 3.275vw;
    }
    .notice{
        font-size: 3.275vw;
    }
    .register-form h2{
        font-size: 6.525vw;
    }

    #agendaModal h2{
        font-size: 4.525vw;
    }
    .register-form h3{
        font-size: 3.625vw;
    }
    .register-form p{
        font-size: 3.25vw;
    }
    .register-form{
        border-radius: 25px;
    }
    .register-form::before{
        border-radius: 25px;
    }
    .notice{
        border-radius: 0 0 20px 20px;
    }
    .register-main{
        width: 93%;
    }
    .agenda-row>div{
        font-size: 16px;
        height: 73px;
    }
    .agenda-row .agenda-time{
        border: none;
        border-radius: 0;
        width: 75px;
        background: transparent;
        position: relative;
    }
    .agenda-row .agenda-time::after{
        content: "";
        width: 4px;
        height: 32px;
        position: absolute;
        left: 110%;
        background-color: white;
    }
    .agenda-row .agenda-title{
        border: none;
        border-radius: 0;
        background: transparent;
    }
    .agenda-title{
        width: calc(100% - 75px);
    }
    #agendaModal .modal-content{
        padding: 35px 0px;
    }
    .agenda-row{
        gap: 0;
        background: linear-gradient(137.61deg, #4D3F80 2.74%, #000000 102.12%);
        border: 1.5px solid #FFFFFF;
        border-radius: 25rem;
        padding: 0 8px;
    }
    .dress-code p{
        font-size: 16px;
    }
}