@font-face {
    font-family: 'AvenirNextLTPro-Regular';
    src: url('/fonts/AvenirNextLTPro-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AvenirNextLTPro-Bold';
    src: url('/fonts/AvenirNextLTPro-Bold.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'AvenirNextLTPro-Italic';
    src: url('/fonts/AvenirNextLTPro-It.otf') format('opentype');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'AvenirNextLTPro-UltLtCn';
    src: url('/fonts/AvenirNextLTPro-UltLtCn.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AvenirNextLTPro-Cn.otf';
    src: url('/fonts/AvenirNextLTPro-Cn.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

/* Apply font family to all elements */
* {
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
}

/* Ensure placeholders also use the font */
*::placeholder {
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
}

body {
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
    background: black;
    margin: 0;
    height: 100vh;
    color: aliceblue;

}

/* header section */
.header {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    color: white;
    position: relative;
    /* Added for background positioning */
    overflow: hidden;
    height: 100vh;
    /* Ensure video doesn't spill out */
}

.video-background {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 1;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    /* Subtle dark overlay to make text pop */
    z-index: 2;
}

.header-content {
    position: relative;
    z-index: 3;
    /* Content above video and overlay */
    width: 100%;
    margin: -90px 0 0 0;
}

.logo-container {

    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-line1,
.logo-line2 {
    font-size: 24px;
    color: white;
    width: 120px;
}

.horizontal-line {
    width: 2px;
    height: 70px;
    /* Vertical line height */
    background-color: white;
    /* Horizontal line color */
    margin: 0 20px;
    /* Space between the text and the line */
}

.event-text {
    font-size: 4rem;
    text-transform: uppercase;
    font-weight: bold;

}

.exclusive-header {
    color: white;
    -webkit-background-clip: text;
    /* color: transparent;  */
}

.sales-header {
    color: white;
    -webkit-background-clip: text;
    /* color: transparent;  */
}

/* end header section */

/* logo */
.eliteLogo {
    width: 100%;

}

.sobhaLogo {
    width: 100%;

}


/* Content section */
content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    text-align: center;
    /* font-family: 'AvenirNextLTPro-UltLtCn', sans-serif;  */
    padding-left: 20px;
    padding-right: 20px;

}

.date-venue {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 0;
    margin-bottom: 5px;

}

.horizontal-line-2 {
    width: 2px;
    height: 25px;
    /* Vertical line height */
    background-color: white;
    /* Horizontal line color */
    /* margin-bottom: 25px; */
    margin-left: 20px;
    margin-right: 20px;

}

/* Class for centering text */
.center-heading {
    margin: 0;
    /* Remove default margins */
    padding: 0;
    color: white;
    text-align: center;
    /* Center text */

}



.content-heading-time {
    font-size: 1.3rem;
    margin-top: 0;
    font-family: 'AvenirNextLTPro-UltLtCn', sans-serif;
    letter-spacing: 2px;
}

h4 {
    margin: 5px;
}

/* Specific font size for h4 */
.content-heading-2 {
    margin: 0;
    font-size: 2.5rem;
    text-transform: uppercase;
    font-family: 'Roman Regular', sans-serif;
    font-weight: lighter;

}

/* end  */

/* Register form container */
.register {
    width: 100%;
    max-width: 800px;
    background-color: white;
    border-radius: 30px;
    overflow-y: auto;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    overflow-x: hidden;
    margin-bottom: 50px;
    margin-top: 35px;
    padding: 50px;
}

.success-message2 {
    font-size: 25px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

.success-message3 {
    font-size: 20px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;

}

.form-input {
    width: 100%;
    height: 50px;
    margin-bottom: 25px;
    padding: 0 15px;
    border: 0px solid #ccc;
    background-color: #f0f0f0;
    color: #333;
    box-sizing: border-box;
}

.form-input::placeholder {
    color: black;
}

/* Styling for select input (dropdown) */
.form-select {
    width: 100%;
    height: 50px;
    background-color: #f0f0f0;
    color: black;
    border: 0px solid #ccc;
    padding: 0 15px;
    font-size: 1.3rem;
    margin-top: 20px;
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
}

.form-select option {
    font-size: 1.3rem;
    /* Option font size */
    color: #333;
    /* Text color for options */
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
}

.form-select option[disabled] {
    color: black;
    font-family: 'AvenirNextLTPro-Regular', sans-serif;
}

/* Apartment Type Section */
.apartment-type {
    width: 100%;
    margin-top: 20px;
}

.section-title {
    font-size: 18px;
    margin-bottom: 15px;
    color: #333;
    text-align: left;
}

.checkbox-container {
    display: flex;
    justify-content: start;
    gap: 10px;
    flex-wrap: wrap;
}

.checkbox-label {
    font-size: 16px;
    color: #333;
    display: flex;
    align-items: center;
    width: 22%;
    margin-bottom: 10px;
}

.checkbox-input {
    margin-right: 8px;
    transform: scale(1.3);

    vertical-align: middle;
}

/* Styling for the new checkbox group */
.form-group {
    margin-bottom: 25px;

    text-align: left;
}





.section-title-purpose {
    font-size: 18px;
    margin-bottom: 15px;
    color: #333;
    text-align: left;
}

.checkbox-group {
    display: flex;
    justify-content: start;
    gap: 10px;
    margin-top: 10px;
    width: 100%;

}

.checkbox-label {
    font-size: 16px;
    color: #333;
    display: flex;
    align-items: center;

    width: auto;
    max-width: 500px;
}

.checkbox-input-purpose {
    margin-right: 8px;
    transform: scale(1.3);

    vertical-align: middle;
}


.checkbox-input:checked {
    background-color: #d2b48c;
}

.register-button {
    width: 100%;
    height: 50px;
    background-color: black;
    color: white;
    font-weight: bold;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 20px;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
    /* margin-bottom: 30px; */
}

/* Hover effect for the button */
.register-button:hover {
    background-color: #333;
}

.apartment {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* 3 columns by default */
    gap: 10px;
}

/* end */


/* Footer styling */
footer {
    color: white;
    padding: 30px 0;
    text-align: center;
}

/* Footer links container */
.footer-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    /* background-color: #b68a51; */
    gap: 20px;

}

/* Footer item (text) styling */
.footer-item {
    font-size: 1rem;
    text-transform: uppercase;
    display: flex;
    justify-content: center;
    /* Ensure content is centered */
    align-items: center;
    /* Align images properly */
}

/* Make all images have the same size */
.footer-item img {
    width: 120px;
    /* Set a fixed width */
    height: auto;
    /* Maintain the aspect ratio */
    max-height: 100px;
    /* You can adjust this based on your preference */
}

/* Separator (horizontal line) between items */
.footer-separator {
    width: 1px;
    height: 30px;
    background-color: white;
    /* White color for the separator */
}

/* Copyright text styling */
.footer-copyright p {
    font-size: 14px;
    margin: 0;

}

/* loader */
.register-button {
    position: relative;
    display: inline-block;
    padding: 10px 20px;
    color: white;
    border: none;
    border-radius: 4px;
    text-align: center;
}

.register-button.loading {
    pointer-events: none;
    padding-left: 40px;
}

.register-button.loading:after {
    content: "";
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 16px;
    height: 16px;
    border: 3px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

/* Loader animation */
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* success modal */
/* For error and success modal */
.error,
.success {
    width: 100%;
    margin: 10px auto;
    padding: 10px;
    text-align: center;
    display: flex;
    justify-content: center;
    border-radius: 4px;
}

.error {
    color: red;

}

.success {
    color: green;
    background: #f0fff0;
    border: 1px solid green;
}



/* media queries */
/* For devices with a width of 480px or less (mobile phones) */
@media (max-width: 375px) {

    .logo-line1,
    .logo-line2 {
        font-size: 1rem;
        /* Further decrease logo text size */
        width: 100px;
    }

    .event-text {
        font-size: 2rem;
    }

    .success-message2 {
        font-size: 20px;
        text-align: center;
    }

    .success-message3 {
        font-size: 15px;
        text-align: center;
    }

    .content-heading-2 {
        font-size: 1.2rem;
    }

 

    .register {
        padding: 20px;
        border-radius: 10px;
    }

    .checkbox-container {
        flex-direction: column;
    }

    .checkbox-group {
        justify-content: start;
        gap: 30px;
    }

    .footer-item {
        font-size: 0.4rem;
        text-transform: uppercase;
    }

    .content-heading-time {
        font-size: 0.8rem;
    }

    .apartment {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

/* For devices with a width of 480px or less (mobile phones) */
@media (min-width: 376px) and (max-width: 480px) {

    .logo-line1,
    .logo-line2 {
        font-size: 1rem;
        width: 120px;
    }

    .success-message2 {
        font-size: 20px;
        text-align: center;
    }

    .success-message3 {
        font-size: 15px;
        text-align: center;
    }

    .content-heading-time {
        font-size: 1rem;
    }

    .event-text {
        font-size: 2rem;
    }

    .content-heading-2 {
        font-size: 1.5rem;
    }


    .register {
        padding: 20px;
        border-radius: 10px;
    }

    .checkbox-container {
        flex-direction: column;
    }

    .checkbox-group {
        justify-content: start;
        gap: 50px;
    }

    .footer-item {
        font-size: 0.7rem;
        text-transform: uppercase;

    }

    .apartment {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .exclusive-header {
        font-size: 2.5rem;
    }

    .sales-header {
        font-size: 2.5rem;
    }
}

/* media query for device surface duo tablet */
@media (width: 540px) and (height: 720px) {

    .logo-line1,
    .logo-line2 {
        font-size: 1.2rem;
        width: 100px;
    }

    .event-text {
        font-size: 2.5rem;
    }

    .content-heading-2 {
        font-size: 1.7rem;
    }

 

    .checkbox-container {
        flex-direction: column;
    }

    .checkbox-group {
        justify-content: start;
        gap: 80px;
    }

    .footer-item {
        font-size: 0.7rem;
        text-transform: uppercase;
    }


}

/* larger screen */
@media (max-width: 624px) {
    .footer-separator {
        display: none;
    }
}

/* larger screen */
@media (min-width: 1024px) {
    .logo-container {
        margin: -41px 0 60px 0;
    }
}

/* Registered Now Button Styling */
.registered-now-btn {
    background-color: #000000;
    /* Premium gold color */
    color: white;
    padding: 15px 40px;
    font-size: 1.2rem;
    font-weight: bold;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    /* margin-top: 10px; */
    text-transform: uppercase;
    transition: all 0.3s ease;
    font-family: 'AvenirNextLTPro-Bold', sans-serif;
    letter-spacing: 0.1rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.registered-now-btn:hover {
    background-color: #0000;
    border: 1.5px solid white;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
}

.registered-now-btn:active {
    transform: translateY(0);
}

@media (max-width: 480px) {
    .registered-now-btn {
        padding: 12px 30px;
        font-size: 1rem;
        margin-top: 20px;
    }


}







/* Specific font size for h1 */
.content-heading-1 {
    margin-top: 3px;

    letter-spacing: 2px;

}


/* Specific font size for h1 */
.content-heading-1 , .features-list li ,  .features-list li:before , .slide-title , .slide-text , .slide-features , .form-input, .form-input::placeholder , .form-group label , .checkbox-terms-container label , .form-select , .form-select option , .form-select option[disabled] , .register-button , .slide-features li{
       font-size: 27px;
    font-family: 'AvenirNextLTPro-Regular', sans-serif !important;
}



.popup-body .content-heading-1 , .popup-body .features-list li ,  .popup-body .features-list li:before ,  .popup-body .slide-title , .popup-body .slide-text , .popup-body .slide-features , .popup-body .form-input, .popup-body .form-input::placeholder , .popup-body .form-group label , .popup-body .checkbox-terms-container label , .popup-body .form-select , .popup-body .form-select option , .popup-body .form-select option[disabled] , .popup-body .register-button , .popup-body .form-group label {
       font-size: 17px;
    font-family: 'AvenirNextLTPro-Regular', sans-serif !important;
}

.swiper-button-next, .swiper-button-prev {

width: 56px !important;
    height: 56px !important;
    border-radius: 50%;
    top: 28% !important;

}

.swiper-button-next {
    right: 3% !important;
}


.swiper-button-prev{
    left: 3% !important;
}

/* larger screen */
@media (max-width: 900px) {
     .content-heading-1 , .features-list li , .features-list li:before , .content-heading-1 , .features-list li ,  .features-list li:before , .slide-title , .slide-text , .slide-features , .form-input, .form-input::placeholder , .form-group label , .checkbox-terms-container label , .form-select , .form-select option , .form-select option[disabled] , .register-button , .slide-features li {
        font-size: 14px;
    }


    .register {
        padding: 20px;
    }

    .swiper-button-next, .swiper-button-prev {

width: 50px !important;
    height: 50px !important;
    border-radius: 50%;
    top: 23% !important;

}

    
}
