/* Base Styles */
body { 
    margin: 0; 
    font-family: Arial, sans-serif; 
    background: #f5f5f5; 
    color: #222; 
    line-height: 1.6; 
}

/* The Container Logic */
.container { 
    width: 90%; 
    max-width: 900px; 
    margin: 0 auto; 
}

/* Header & Typography */
header { 
    background: #111; 
    color: white; 
    padding: 3rem 0; 
    text-align: center; 
}

.subtitle { 
    font-size: 1.2rem; 
    opacity: 0.8; 
    margin-top: 0.5rem; 
    letter-spacing: 1px; 
}
.sheet {
    background: white;
    padding: 2rem;
    margin-bottom: 2rem; /* Creates the gap between sheets */
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    position: relative;
}

/* Offset the first sheet up into the header like before */
.first-sheet {
    margin-top: -2rem;
}


.hero-image-algebra img {
    max-width: 220px;
    width: 100%;
    height: auto;
    border-radius: 4px;
    display: block;
    margin: 0 auto;
}

/* Main Content Box */
main { 
    background: white; 
    padding: 3rem; 
    margin-top: -2rem; 
    border-radius: 8px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.1); 
}

/* Image Handling */
.hero-image-container {
    text-align: center;
    margin-bottom: 2rem;
}

.hero-image-container img {
    max-width: 200px; /* Adjusted for better balance */
    width: 100%;
    height: auto;
    border-radius: 4px;
}

h2 { 
    margin-top: 2rem; 
    border-bottom: 1px solid #eee; 
    padding-bottom: 0.5rem; 
}

/* Form Styling */
.contact-form { margin-top: 2rem; display: flex; flex-direction: column; }
.form-group { margin-bottom: 1.5rem; }
label { display: block; margin-bottom: 0.5rem; font-weight: bold; }
input, textarea { width: 100%; padding: 0.8rem; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; font-family: inherit; }
button { background: #111; color: white; border: none; padding: 1rem 2rem; border-radius: 4px; cursor: pointer; font-size: 1rem; transition: background 0.3s; }
button:hover { background: #333; }
.abstract-box { font-style: italic; color: #444; border-left: 4px solid #111; padding-left: 1.5rem; margin: 2rem 0; }

.btn-manual {
    display: inline-block;
    background: #111;
    color: white;
    text-decoration: none;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: bold;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: background 0.3s, transform 0.2s;
    margin-top: 1.5rem;
}

.btn-manual:hover {
    background: #333;
    transform: translateY(-1px);
}
/* Footer */
footer { 
    margin-top: 3rem; 
    padding: 2rem 0; 
    text-align: center; 
    color: #666; 
    font-size: 0.9rem; 
}

/* MOBILE MEDIA SWITCH */
@media (max-width: 600px) {
    .container { width: 96%; }
    main { padding: 1.5rem !important; }
    header { padding: 2rem 0 !important; }
}