/* Universal box-sizing for consistent layout */
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; /* Align content to the top */
    text-align: center; /* Center text and inline content */
    width: 100vw;
    height: auto; /* Allow content to dictate height */
    background-color: #F4F5FF;
    padding-bottom: 20px; /* Reduced padding at the bottom */
    overflow-x: hidden; /* Prevent horizontal scrolling */
}
p {
    
    left: 0px;
    font-size: 18px; /* Increased font size */
    line-height: 1.5; /* Added line height for better readability */
    font-family: 'DM Sans', sans-serif;
    font-weight: 400;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: top;
    max-width: 550px;
    color: #727586;
    margin: 0 auto;
}
a:hover {
    cursor: pointer;
    color: #6159E5; /* Updated to match CloudXpie logo color */
    text-decoration: underline;
}
h1 {
    font-family: 'DM Sans', sans-serif;
    font-size: 32px; /* Increased font size */
    font-weight: 700;
    letter-spacing: 0px;
    text-align: center;
    margin: 16px 0; /* Adjusted margin */
}
.content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 1200px; /* Limit content width on large screens */
    padding: 10px; /* Reduced padding for spacing */
    box-sizing: border-box; /* Include padding in element's total width and height */
}
.ic-launch  {
    width: 21px !important;
    height: 20px !important;
}
.link-container {
    margin: 5px auto; /* Centered horizontally with reduced spacing */
}
.link {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-family: 'DM Sans', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    color: #6159E5; /* Updated to match CloudXpie logo color */
    margin-top: 8px;
    text-decoration: none;
}

/* Subscribe Form Styles */
.subscribe-form {
    margin-top: 0;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    max-width: 500px;
    width: 100%; /* Ensure it takes full width for centering */
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px; /* Further reduced spacing */
}

.subscribe-form p {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    color: #727586;
    margin: 0 auto 10px; /* Centered horizontally with reduced bottom spacing */
}

.subscribe-form form {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.subscribe-form input[type="email"] {
    padding: 10px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    flex-grow: 1;
    max-width: 300px;
}

.subscribe-form button {
    background-color: #007bff;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1em;
    transition: background-color 0.3s ease;
}

.subscribe-form button:hover {
    background-color: #0056b3;
}

@media (max-width: 600px) {
    .subscribe-form form {
        flex-direction: column;
        align-items: center;
    }

    .subscribe-form input[type="email"] {
        width: 100%;
        max-width: none;
    }
}

.input--hidden {
    display: none;
}
.main-image {
    width: 100%;
    max-width: 450px; /* Reduced by approximately 30% */
    height: auto; /* Maintain aspect ratio */
    margin-bottom: 5px; /* Further reduced spacing */
    display: block; /* Remove extra space below image */
}
.navigation {
    width: 100%;
    height: 72px;
    display: flex;
    margin: 0;
    padding: 0;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    background-color: #4d47b7; /* Updated navigation background color as requested */
}
@media screen and (max-width: 580px) {
    h1, p, .link-container {
        width: 90%; /* Increased width for better readability on small screens */
    }
}
