/* General fix: prevent horizontal scroll */
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

/* Images & media scale properly */
img, iframe, video {
    max-width: 100%;
    height: auto;
}

/* Forms & buttons full-width on mobile */
input, select, textarea, button {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
}

/* Text adjustments */
h1, h2, h3, p {
    word-wrap: break-word;
}

/* Navbar responsiveness */
@media (max-width: 768px) {
    .navbar a {
        display: block;
        padding: 12px;
        text-align: center;
    }

    .navbar {
        flex-direction: column;
        gap: 10px;
    }

    .hero-buttons {
        flex-direction: column;
        gap: 10px;
    }
}






/* ==== PHONE FIELD FIX (for inline alignment like SettleLoan) ==== */
.phone-group {
    display: flex;
    flex-direction: column;
}

.phone-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

.iti {
    width: 100% !important;
}

.iti__flag-container {
    position: absolute;
    left: 8px;
}

.iti__selected-flag {
    background: #fff !important;
    border-right: 1px solid #ccc;
    height: 42px;
    padding: 0 5px !important;
}

#phone {
    width: 100%;
    padding-left: 70px !important; /* space for flag + code */
    height: 42px;
    border-radius: 8px;
    border: 1px solid #ccc;
    font-size: 15px;
    outline: none;
    transition: border-color 0.3s;
}

    #phone:focus {
        border-color: #2a62ff;
    }

/* Prevent full-width behavior on phone number input */
.phone-input-wrapper input,
.phone-input-wrapper select {
    width: auto !important;
    max-width: none !important;
}

@media (max-width: 768px) {
    #phone {
        padding-left: 65px !important;
    }
}
