.bg-cover {
    background-image: url('luckydraw_bg.png');
    /* Path to your background image */
    background-size: cover;
    /* Ensure the image covers the entire container */
    background-position: center;
    /* Center the image */
    background-repeat: no-repeat;
    /* Prevent image repetition */
    background-color: #000;
    /* Fallback color in case image fails to load */
    width: 100%;
    height: 100vh;
    /* Ensure it covers the viewport height */
}

/* Wrapper for the entire page, adjusts margins */
.some-page-wrapper {
    margin: 10px;
    margin-bottom: -8px;
}

/* Flexbox for rows, ensures full width and wraps content */
.row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
}

/* Flexbox for columns, makes them stack vertically and grow equally */
.column {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    flex: 1;
}

/* Similar to .column but with double the flexibility */
.double-column {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    flex: 2;
}

/* Adjusts the appearance of the first column */
.first-column {
    margin-left: 7px;
    height: 40px;
}

/* Adjusts the appearance of the second column */
.second-column {
    height: 40px;
    margin-right: -13px;
    align-items: end;
    text-align: end;
}

/* Custom styling for text fields */
.custom-text-field {
    width: 100%;
    padding: 10px;
    border: 1px solid #555555;
    border-radius: 5px;
    background-color: #222222;
    /* Field background color */
    color: #ffffff;
    /* Text color */
    font-size: 14px;
}

/* Placeholder styling for custom text fields */
.custom-text-field::placeholder {
    color: #888888;
    /* Placeholder text color */
}

/* Styling for labels within text field containers */
.custom-text-field-container span {
    color: white;
    font-size: 13px;
    display: block;
    margin-bottom: 5px;
}

/* Additional styling for error messages within text field containers */
.custom-text-field-container .alert-danger {
    margin-top: 5px;
}

/* Flexbox for centering elements, with spacing between them */
.middle {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

/* Styling for headings within the middle section */
.middle h1 {
    color: white;
}

/* Hide default radio buttons */
input[type="radio"] {
    display: none;
}

/* Custom styling for checked radio buttons */
input[type="radio"]:checked+.box {
    background: linear-gradient(to bottom right, rgba(128, 128, 128, 1), rgba(0, 0, 0, 0.5));
    border: 1px solid #fff;
    color: white;
    /* Ensures text color is white */
}

/* Ensures text color changes when radio button is checked */
input[type="radio"]:checked+.box span {
    color: white;
    /* Change the text color to white */
}

/* Custom styling for the SVG icon within the checked radio button */
input[type="radio"]:checked+.box span::before {
    filter: brightness(0) invert(1);
    /* Change the SVG color to white */
}

/* Styling for the box containing the radio button label */
.box {
    width: 211px;
    border-radius: 10px;
    height: 120px;
    background-color: #222222;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    cursor: pointer;
    position: relative;
    font-size: 10px;
    color: #fff;
}

/* Ensures the span within the box is centered */
.box span {
    display: grid;
    /* Use Flexbox for the span itself */
    justify-content: center;
    /* Center horizontally within the span */
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 45%;
    transform: translateY(-50%);
    font-size: 1.3em;
    color: #C1C1C1;
    user-select: none;
}

/****************************************** Demo Book Radio Button ******************************************/

.boxDemo {
    width: 211px;
    border-radius: 10px;
    height: 120px;
    background-color: #222222;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    cursor: pointer;
    position: relative;
    font-size: 10px;
    color: #fff;
}

/* Ensures the span within the box is centered */
.boxDemo span {
    display: grid;
    /* Use Flexbox for the span itself */
    justify-content: center;
    /* Center horizontally within the span */
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 45%;
    transform: translateY(-50%);
    font-size: 1.2em;
    color: #C1C1C1;
    user-select: none;
}

/* Custom styling for checked radio buttons */
input[type="radio"]:checked+.boxDemo {
    background: linear-gradient(to bottom right, rgba(128, 128, 128, 1), rgba(0, 0, 0, 0.5));
    border: 1px solid #fff;
    color: white;
    /* Ensures text color is white */
}

/* Ensures text color changes when radio button is checked */
input[type="radio"]:checked+.boxDemo span {
    color: white;
    /* Change the text color to white */
}

/* Custom styling for the SVG icon within the checked radio button */
input[type="radio"]:checked+.boxDemo span::before {
    filter: brightness(0) invert(1);
    /* Change the SVG color to white */
}

/****************************************** Demo Book Radio Button ******************************************/

/* Full width styling for the international telephone input */
.intl-tel-input,
.iti {
    width: 100%;
}

/* Styling for the dropdown list container */
.iti__country-list {
    background-color: #222222 !important;
    /* Force the background to black */
}

/* Styling for the country list items */
.iti__country {
    color: white !important;
    /* Force the text color to white */
}

/* Styling for the selected flag and arrow */
.iti__selected-flag {
    color: white !important;
    /* Text color for selected flag */
}

/* Custom icon for the Owner option */
.Owner span::before {
    content: "";
    text-align: center;
    display: block;
    transform: translateX(180%);
    margin-bottom: 8px;
    width: 25px;
    /* Adjust width as needed */
    height: 40px;
    /* Adjust height as needed */
    background-image: url('Briefcase.svg');
    background-size: contain;
    /* Adjust size as needed */
    background-repeat: no-repeat;
    /* Prevent repeating */
    background-position: center;
    /* Center the logo */
}

/* Custom icon for the Freelance option */
.Freelance span::before {
    content: "";
    display: block;
    transform: translateX(150%);
    margin-bottom: 8px;
    width: 25px;
    /* Adjust width as needed */
    height: 40px;
    /* Adjust height as needed */
    background-image: url('User.svg');
    background-size: contain;
    /* Adjust size as needed */
    background-repeat: no-repeat;
    /* Prevent repeating */
    background-position: center;
    /* Center the logo */
}

.luckyText {
    width: 290px;
}

.logoBarber {
    width: 100px;
    margin-top: 2px;
}

.logoExpo {
    width: 170px;
}

/* For devices with a max-width of 509px */
@media (max-width: 509px) {
    .box {
        width: 180px;
    }
}

/* For devices with a max-width of 448px */
@media (max-width: 448px) {
    .box {
        width: 160px;
    }
}

/* For devices with a max-width of 408px */
@media (max-width: 408px) {
    .box {
        width: 140px;
    }
}

/* For devices with a max-width of 368px */
@media (max-width: 368px) {
    .box {
        width: 130px;
    }
}

/* For devices with a max-width of 368px */
@media (max-width: 348px) {
    .box {
        width: 115px;
    }
}

/* For devices with a max-width of 374px */
@media (max-width: 374px) {
    .logoBarber {
        width: 80px;
        margin-top: 2px;
    }

    .logoExpo {
        width: 130px;
    }

    .luckyText {
        width: 190px;
    }
}

/* Demo Page */

/* For devices with a max-width of 547px */
@media (max-width: 547px) {
    .boxDemo {
        width: 180px;
    }
}

/* For devices with a max-width of 486px */
@media (max-width: 486px) {
    .boxDemo {
        width: 160px;
    }
}

/* For devices with a max-width of 446px */
@media (max-width: 446px) {
    .boxDemo {
        width: 140px;
    }
}

/* For devices with a max-width of 406px */
@media (max-width: 406px) {
    .boxDemo {
        width: 130px;
    }
}

/* For devices with a max-width of 386px */
@media (max-width: 386px) {
    .boxDemo {
        width: 120px;
    }
}

/* For devices with a max-width of 356px */
@media (max-width: 366px) {
    .boxDemo {
        width: 110px;
    }
}

/* For devices with a max-width of 346px */
@media (max-width: 346px) {
    .boxDemo {
        width: 95px;
    }

    .Owner span::before {
        transform: translateX(140%);
    }

    .Freelance span::before {
        transform: translateX(140%);
    }
}