:root {

    --header-bg: #74716b;

    --header-text: #ffffff;

    --bg-color: #f9f8f4;

    --text-main: #2d2d2d;

    --text-muted: #626262;

    --accent-blue: #5b6acb;

    --box-bg: #f0ede4;

    --max-width: 900px;

}



body {

    font-family: 'Inter', sans-serif;

    background-color: var(--bg-color);

    color: var(--text-main);

    margin: 0;

    padding: 0;

    -webkit-font-smoothing: antialiased;

    line-height: 1.7;

}



/* --- HEADER & NAVIGATION --- */

header {

    background-color: var(--header-bg);

    color: var(--header-text);

    padding: 60px 0 140px 0;

    display: flex;

    flex-direction: column;

    align-items: center;

}



nav {

    width: 100%;

    max-width: var(--max-width);

    padding: 0 20px;

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

    margin-bottom: 120px;

    box-sizing: border-box;

}



.brand-block {

    display: flex;

    flex-direction: column;

    text-align: left;

}



.logo {

    font-family: 'Lora', serif;

    font-weight: 800;

    font-size: 2.2rem;

    text-decoration: none;

    color: white;

    letter-spacing: -1.5px;

    line-height: 1;

}



.logo-tagline {

    font-size: 11px;

    color: rgba(255, 255, 255, 0.5);

    text-transform: uppercase;

    letter-spacing: 0.2em;

    font-weight: 500;

    margin-top: 12px;

    line-height: 1.4;

}



.nav-links {

    margin-top: 8px;

}



.nav-links a {

    text-decoration: none;

    color: #ffffff;

    margin-left: 30px;

    font-size: 0.75rem;

    text-transform: uppercase;

    letter-spacing: 2px;

    font-weight: 400;

    opacity: 0.6;

    transition: opacity 0.2s;

}



.nav-links a:hover { opacity: 1; }



/* --- HERO SECTION --- */

.hero-content {

    max-width: var(--max-width);

    width: 100%;

    text-align: left;

    padding: 0 20px;

    box-sizing: border-box;

}



.hero-content h1 {

    font-size: 3.5rem;

    font-weight: 700;

    line-height: 1.1;

    letter-spacing: -0.04em;

    margin: 0;

    max-width: 15ch;

}



.hero-cta {

    display: inline-block;

    margin-top: 40px;

    color: #ffffff;

    text-decoration: none;

    font-size: 1.1rem;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 0.1em;

    padding-bottom: 8px;

    border-bottom: 2px solid rgba(255, 255, 255, 0.3);

    transition: border-bottom 0.3s ease, color 0.3s ease;

}



.hero-cta:hover {

    border-bottom: 2px solid #ffffff;

    color: rgba(255, 255, 255, 0.8);

}



/* --- MAIN CONTENT AREAS --- */

main {

    max-width: var(--max-width);

    margin: 0 auto;

    padding: 20px 20px 0px 20px; /* Stripped bottom padding completely */

}



/* --- THE MENTIM THESIS SECTION --- */

.manifesto-container {

    margin: 120px auto;

    max-width: 800px;

    padding-left: 40px;

    border-left: 1px solid rgba(45, 45, 45, 0.1);

}



.thesis-context {

    font-size: 11px;

    text-transform: uppercase;

    letter-spacing: 0.25em;

    color: var(--text-muted);

    margin-bottom: 8px;

    display: block;

    font-weight: 600;

}



.anchor-label {

    font-family: 'Lora', serif;

    font-size: 18px;

    font-style: italic;

    color: var(--text-main);

    opacity: 0.8;

    margin-bottom: 24px;

    display: block;

}



.anchor-definition {

    font-size: 38px;

    font-weight: 400;

    line-height: 1.2;

    letter-spacing: -0.03em;

    margin: 0 0 64px 0;

    color: var(--text-main);

}



.explanatory-group p {

    font-size: 18px;

    line-height: 1.8;

    color: var(--text-muted);

    margin-bottom: 40px;

}



.closing-statement {

    font-family: 'Lora', serif;

    font-size: 19px;

    font-style: italic;

    color: var(--text-main);

    margin-top: 60px;

    padding-top: 30px;

    border-top: 1px solid rgba(45, 45, 45, 0.05);

}



/* --- ARTIFACTS LIST --- */

.artifacts-label {

    font-size: 13px;

    text-transform: uppercase;

    letter-spacing: 0.12em;

    color: rgba(45, 45, 45, 0.6);

    margin-bottom: 40px;

    font-weight: 500;

    display: block;

}



.list-item {

    display: flex;

    margin-bottom: 40px; /* Reduced from 60px */

    align-items: flex-start;

}



.letter-box {

    min-width: 140px;

    height: 140px;

    background-color: var(--box-bg);

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    margin-right: 45px;

}



.letter { font-size: 4rem; font-weight: 800; line-height: 1; }

.letter-label { font-size: 0.6rem; text-transform: uppercase; color: #444; font-weight: 800; margin-top: 10px; }



/* --- ENGAGEMENT SECTION --- */

.engagement-section {

    background-color: var(--box-bg);

    padding: 60px 0 100px 0;

    margin-top: 0; /* Resetting margin to 0 to pull it up to the artifacts */

    display: flex;

    justify-content: center;

}



.engagement-container {

    max-width: var(--max-width);

    width: 100%;

    padding: 0 20px;

    box-sizing: border-box;

}



.engagement-container h2 {

    font-size: 32px;

    font-weight: 600;

    margin-bottom: 48px;

    letter-spacing: -0.02em;

    color: var(--text-main);

}



.engagement-content {

    max-width: 65ch;

}



.engagement-content p {

    font-size: 19px;

    line-height: 1.8;

    color: var(--text-main);

    margin-bottom: 32px;

}



.engagement-link {

    display: inline-block;

    margin-top: 20px;

    color: var(--text-main);

    text-decoration: none;

    font-weight: 600;

    font-size: 14px;

    text-transform: uppercase;

    letter-spacing: 0.15em;

    border-bottom: 2px solid var(--text-main);

    padding-bottom: 4px;

    transition: opacity 0.2s;

}



.engagement-link:hover {

    opacity: 0.7;

}



/* --- FOOTER STYLING --- */

footer {

    background-color: var(--bg-color); /* Matches the main parchment background */

    padding: 60px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid rgba(45, 45, 45, 0.05); /* Very subtle separation */

}



.footer-container {

    max-width: var(--max-width);

    width: 100%;

    padding: 0 20px;

    display: flex;

    justify-content: space-between;

    align-items: center;

    box-sizing: border-box;

}



.copyright {

    font-size: 12px;

    color: var(--text-muted);

    text-transform: uppercase;

    letter-spacing: 0.1em;

}



.footer-socials a {

    font-size: 12px;

    color: var(--text-main);

    text-decoration: none;

    text-transform: uppercase;

    letter-spacing: 0.15em;

    font-weight: 600;

    margin-left: 32px;

    transition: opacity 0.2s;

}



.footer-socials a:hover {

    opacity: 0.6;

}

/* Sidebar and Content Layout */
.technical-layout {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}

.sticky-nav {
    position: sticky;
    top: 40px;
    width: 220px;
    min-width: 220px;
    height: calc(100vh - 80px);
    overflow-y: auto;
    font-size: 13px;
    border-right: 1px solid rgba(45, 45, 45, 0.1);
}

.sticky-nav h4 {
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.sticky-nav a {
    display: block;
    padding: 8px 0;
    color: var(--text-muted);
    text-decoration: none;
    transition: color 0.2s;
}

.sticky-nav a:hover {
    color: var(--text-main);
}

.whitepaper-body {
    flex-grow: 1;
    max-width: 700px;
}