/* --- Root Variables & Container --- */
.imperator-container, .horologium-prose-container {
    --bg-parchment: #f4f1ea;
    --text-ink: #2c3e50;
    --text-faded: #7f8c9a;
    --accent-gold: #b48a3c;
    --border-color: rgba(44, 62, 80, 0.2);
    --font-display: 'EB Garamond', serif;
    --font-label: 'Cinzel', serif;
    
    font-family: var(--font-display);
    background-color: var(--bg-parchment);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 800 800' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    color: var(--text-ink);
    padding: 30px;
    border-radius: 8px;
    max-width: auto;
    margin: 20px auto;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
}

/* === STYLES FOR THE TOOL (UNCHANGED) === */
.imperator-header { text-align: center; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--border-color); }
.header__title { font-family: var(--font-label); font-size: 1.5rem; letter-spacing: 2px; color: var(--e-a-color-accent-promotion); margin: 0 0 10px 0; }
.header__time { font-family: var(--font-display); font-size: 3rem; font-weight: 600; line-height: 1; color: var(--text-ink); margin: 0; }
.imperator-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 25px; }
.timeline-node { padding: 20px; border-radius: 6px; border: 1px solid var(--inactive-border); transition: all 0.4s ease; }
.node-title { font-family: var(--font-label); font-size: 1.6rem; margin: 0 0 15px 0; letter-spacing: 1px; text-align: center; }
.node-display { display: flex; justify-content: center; align-items: center; gap: 15px; }
.node-primary { font-size: clamp(2.5rem, 8vw, 3.5rem); font-weight: 600; line-height: 1; display: flex; align-items: center; }
.node-separator { margin: 0 2px; }
.node-complication { display: flex; flex-direction: column; font-size: 1.5rem; font-weight: 600; line-height: 1.1; text-align: center; }
.node-complication span, .node-primary span { font-feature-settings: 'tnum'; }
.node-complication label { font-family: var(--font-label); font-size: 0.7rem; margin-top: 3px; }
.value-group { display: flex; align-items: center; justify-content: center; }
.node-sign { display: inline-block; width: 1rem; text-align: center; }
.node-complication .node-sign { font-size: 1.5rem; }
.node-primary .node-sign { font-size: 1.5rem; }
.timeline-node { color: var(--inactive-ink); }
.timeline-node .node-complication label, .timeline-node .node-title { color: var(--inactive-ink); }
.timeline-node--next-event, .timeline-node.is-active { color: var(--text-ink); border-color: var(--border-color); box-shadow: 0 5px 25px rgba(0,0,0,0.08); }
.timeline-node--next-event .node-title, .timeline-node.is-active .node-title { color: var(--accent-gold); }
.timeline-node--next-event .node-complication label, .timeline-node.is-active .node-complication label { color: var(--text-faded); }
.timeline-node--next-event .node-separator, .timeline-node.is-active .node-separator { animation: blink 2s infinite ease-in-out; }
.timeline-node--next-event { grid-column: 1 / -1; border-color: var(--accent-gold); }
@keyframes blink { 50% { opacity: 0.3; } }
@media (max-width: 768px) {
    .imperator-grid { grid-template-columns: 1fr; }
    .timeline-node--next-event { grid-column: 1; }
}

/* ========================================= */
/* ===== NEW STYLES FOR CONTENT SECTION ===== */
/* ========================================= */
.horologium-prose-container {
    margin-top: 40px; /* Creates space below the tool */
    padding: 40px;
}
.prose-title {
    font-family: var(--font-label);
    font-size: 1.8rem;
    text-align: center;
    letter-spacing: 2px;
    color: var(--accent-gold);
    margin: 0 0 20px 0;
}
.horologium-prose-container h3 {
    font-family: var(--font-label);
    font-size: 1.8rem;
    letter-spacing: 1px;
    color: black;
    margin: 30px 0 10px 0;
    font-weight: 500;
}
.horologium-prose-container p {
    font-size: 1.3rem;
    line-height: 1.7;
    font-weight: 400;
    color: black;
    text-align: justify;
}
.prose-divider {
    border: 0;
    height: 0px;
    background-color: var(--border-color);
    margin: 40px auto;
    width: 60%;
}