.document-header { border-bottom: var(--border-s) solid var(--accent-subtle); margin-bottom: var(--space-lg); padding-bottom: var(--space-md); text-align: center; } .document-emblem { height: var(--size-emblem-lg); margin: 0 auto var(--space-md); object-fit: contain; width: auto; } .document-title { color: var(--banes-lab-accent); font-family: var(--font-family-heading); font-size: var(--font-xl); margin-bottom: var(--space-sm); } .document-dates { color: var(--text-mid-gray); display: flex; flex-direction: column; font-size: var(--font-sm); gap: var(--space-xs); justify-content: center; margin-bottom: var(--space-md); } .document-intro { color: var(--text-light-gray); font-size: var(--font-sm); line-height: var(--line-height-loose); margin: 0 auto; max-width: var(--width-content-md); } .document-layout { display: grid; gap: var(--space-xl); grid-template-columns: 1fr; } .document-contents { background: var(--overlay-subtle); border: var(--border-s) solid var(--accent-subtle); border-radius: var(--radius-md); display: none; height: fit-content; padding: var(--space-lg); position: sticky; top: var(--space-lg); } .contents-title { border-bottom: var(--border-s) solid var(--accent-subtle); color: var(--banes-lab-accent); font-family: var(--font-family-heading); font-size: var(--font-lg); margin-bottom: var(--space-md); padding-bottom: var(--space-sm); } .contents-list { display: flex; flex-direction: column; gap: var(--space-xs); list-style: none; margin: 0; padding: 0; } .contents-link { align-items: center; border-radius: var(--radius-sm); color: var(--text-light-gray); display: flex; font-size: var(--font-sm); gap: var(--space-sm); padding: var(--space-xs) var(--space-sm); } .contents-link:hover, .contents-link.active { color: var(--banes-lab-accent); } .contents-link.active { background: var(--accent-subtle); } .contents-link i { font-size: var(--font-md); width: var(--size-icon-inline); } .document-sections { display: flex; flex-direction: column; gap: var(--space-lg); } .document-section { background: var(--overlay-subtle); border: var(--border-s) solid var(--accent-subtle); border-radius: var(--radius-md); max-width: var(--percent-full); overflow: hidden; padding: var(--space-sm); } .section-header { align-items: flex-start; display: flex; gap: var(--space-sm); margin-bottom: var(--space-md); } .section-icon { color: var(--banes-lab-accent); font-size: var(--font-lg); line-height: 1; } .section-title { color: var(--white); font-family: var(--font-family-heading); font-size: var(--font-md); margin: 0; } .section-intro { color: var(--text-light-gray); font-size: var(--font-regular); line-height: var(--line-height-loose); margin-bottom: var(--space-lg); } .subsection { margin-bottom: var(--space-xl); max-width: var(--percent-full); overflow: hidden; } .subsection:last-child { margin-bottom: 0; } .subsection-title { border-bottom: var(--border-s) solid var(--accent-subtle); color: var(--banes-lab-accent); font-size: var(--font-regular); margin-bottom: var(--space-md); padding-bottom: var(--space-xs); } .subsection-text { color: var(--text-light-gray); font-size: var(--font-md); line-height: var(--line-height-loose); margin-bottom: var(--space-md); } .document-footer { border-top: var(--border-s) solid var(--accent-subtle); color: var(--text-mid-gray); font-size: var(--font-sm); margin-top: var(--space-xl); padding-top: var(--space-lg); text-align: center; } .document-closing { margin-bottom: var(--space-xl); } .document-closing p { margin: var(--space-xs) 0; } @media (width >= 30rem) { .document-header { padding-bottom: var(--space-lg); } .document-title { font-size: var(--font-xxl); } .document-intro { font-size: var(--font-regular); } .document-section { padding: var(--space-md); } .section-header { gap: var(--space-md); } .section-icon { font-size: var(--font-xxl); } .section-title { font-size: var(--font-lg); } } @media (width >= 48rem) { .document-dates { flex-direction: row; gap: var(--space-lg); } .document-layout { grid-template-columns: var(--width-sidebar-contents) 1fr; } .document-contents { display: block; } .document-section { overflow: visible; padding: var(--space-lg); } }