:root {
    color-scheme: light dark;

    /* ── Papery light palette ── */
    --bg:          light-dark(#f5f0e8, #0c0c0c);
    --surface:     light-dark(#ede7d9, #1a1919);
    --surface-hover: light-dark(#e0d8c8, #2a2828);
    --text:        light-dark(#1c1812, #faf9f6);
    --text-muted:  light-dark(rgba(28,24,18,0.75), rgba(250,249,246,0.85));
    --link:        light-dark(#7a4f1e, wheat);
}

body {
    margin: 0;
    color: var(--text);
    background-color: var(--bg);
    font-family: "Inter", sans-serif;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    background-image: url('../The_School_of_Athens_by_Raffaello_Sanzio_da_Urbino_in_Vatican.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    opacity: 1;
    pointer-events: none;
    z-index: 0;
}

body.dark::before {
    opacity: 0.06; 
}

.main {
    width: 100%;
    max-width: min(800px, 92vw);
    margin: clamp(32px, 10vh, 96px) auto;
    padding: 0 20px;
    position: relative;
    z-index: 1;
    opacity: 0.9;
}

/* ---------- Header ---------- */
header {
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    background-color: var(--surface);
    padding: 20px;
    border-radius: 15px;
}

h1 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 3rem);
}

#tagline {
    margin-top: 10px;
    opacity: var(--text-muted);
    color: var(--text-muted);
}

/* ---------- Introduction ---------- */
.introduction {
    margin-top: 24px;
}

.introduction p {
    text-align: justify;
    line-height: 1.6;
    background-color: var(--surface);
    padding: clamp(20px, 4vw, 35px);
    border-radius: 15px;
}

/* ---------- Buttons ---------- */
.main_buttons {
    display: flex;
    justify-content: space-around;
}

button {
    font-size: 100%;
    margin-top: 16px;
    padding: 16px 24px;
    background-color: var(--surface);
    color: var(--text);
    border: none;
    border-radius: 15px;
    cursor: pointer;
    transition: background-color 0.2s;
}

button:hover {
    background-color: var(--surface-hover);
}

/* ---------- Footer ---------- */
footer {
    text-align: center;
    margin-top: clamp(48px, 12vh, 120px);
    padding: 24px;
    border-radius: 15px;
    background-color: var(--surface);
}

/* ---------- Links ---------- */
a {
    color: var(--link);
    text-decoration: none;
}