/* Reset & Basic Resets */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    background-color: #E0E5D5; /* Pale mossy green from background */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Header */
.main-header {
    background-color: #3C525F; /* Slate blue/grey */
    padding: 10px 0;
    border-bottom: 2px solid #5A6D78; /* Slightly lighter border */
}

.header-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 90px;
}

.logo {
    max-height: 80px;
    /* Determine if we need to remove background if the image has one, 
       but the provided image seems to be a rectangle. 
       Let's assume it fits well or might need a white box if transparent. 
       Screenshot shows a white box around the logo. */
    background-color: white; 
    padding: 5px;
}

.header-nav .nav-link {
    color: #DAE1E3;
    text-decoration: none;
    font-size: 14px;
}

/* Main Content */
.main-content {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center; /* Vertically center roughly */
    padding-top: 50px; /* Offset from header */
    padding-bottom: 50px;
}

.login-container {
    background-color: #C1D5D7; /* Light blue-grey box */
    width: 100%;
    max-width: 900px; /* Wide box */
    padding: 40px 60px;
    /* Box shadow is not very prominent in screenshot, maybe flat */
}

.login-container h1 {
    font-size: 28px;
    font-weight: normal;
    color: #111;
    margin-bottom: 40px;
}

.login-form {
    max-width: 500px;
    margin-left: 20px; /* Indent form slightly */
}

.form-group {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.form-group label {
    width: 100px;
    font-size: 14px;
    color: #333;
}

.input-wrapper {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
}

.form-group input {
    width: 100%;
    padding: 10px;
    border: none;
    outline: none;
    font-size: 14px;
}

.input-action {
    position: absolute;
    right: 10px;
    font-size: 10px;
    color: #666;
    cursor: pointer;
    font-weight: bold;
}

.form-actions {
    display: flex;
    align-items: center;
    margin-left: 100px; /* Align with input */
    margin-top: 10px;
    margin-bottom: 20px;
}

.btn-login {
    background-color: #FACF63; /* Mustard yellow */
    border: none;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 14px;
    cursor: pointer;
    margin-right: 15px;
}

.btn-login:hover {
    background-color: #eebb42;
}

.forgot-password {
    color: #444;
    text-decoration: none;
    font-size: 13px;
}

.forgot-password:hover {
    text-decoration: underline;
}

.enroll-section {
    margin-left: 100px; /* Align with input */
    font-size: 13px;
    color: #444;
}

.enroll-section a {
    color: #222;
    text-decoration: underline;
}

/* Footer */
.main-footer {
    background-color: #3C525F;
    padding: 20px 0;
    text-align: center;
    border-top: 5px solid #4D453E; /* Dark brown strip at top of footer */
}

.footer-nav a {
    color: #DAE1E3;
    text-decoration: none;
    font-size: 12px;
    margin: 0 15px;
    display: inline-block;
}

.footer-nav a:hover {
    text-decoration: underline;
}

/* Adjustments for the dark brown strip below header as seen in screenshot */
.main-header::after {
    content: "";
    display: block;
    height: 10px;
    background-color: #4D453E; /* Dark brown strip */
    position: absolute;
    left: 0;
    right: 0;
    /* This needs to be outside the padding */
    margin-top: 10px; 
}
/* Actually, let's restructure the header border. The screenshot shows a thick dark bar below the blue header */

/* Revision */
.main-header {
    border-bottom: none;
    position: relative;
    padding-bottom: 0px; 
}
.header-content {
    margin-bottom: 10px; /* Space for the brown bar if needed, or just padding */
}
.main-header::after {
    content: "";
    display: block;
    height: 8px;
    background-color: #4D453E; 
    width: 100%;
}

/* Make inputs look exactly like screenshot (white boxes) */
.form-group input {
    border-radius: 2px;
}
