/* Public reference pages share the directory's slate palette and navigation. */
.information-page { --info-ground: var(--mc-ground); --info-panel: var(--mc-surface); --info-line: var(--mc-line); --info-text: var(--mc-text); --info-muted: var(--mc-muted); --info-accent: var(--mc-accent); background: var(--info-ground); color: var(--info-text); }
.info-wrap { width: min(1160px, calc(100% - 40px)); margin-inline: auto; padding-block: 44px 64px; }
.info-hero { max-width: 800px; margin-bottom: 36px; }
.info-hero h1 { font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.1; letter-spacing: 0; margin: 16px 0 20px; text-wrap: balance; }
.info-hero p { color: var(--info-muted); font-size: 1.125rem; max-width: 65ch; line-height: 1.65; }
.info-wrap a { color: var(--info-accent); text-underline-offset: .2em; }
.info-wrap :focus-visible { outline: 3px solid var(--mc-gold); outline-offset: 4px; }
.info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.info-panel { min-width: 0; padding: 28px; border: 1px solid var(--info-line); border-radius: 0; background: var(--info-panel); }
.info-panel h2, .info-prose h2 { font-size: 1.5rem; line-height: 1.3; margin: 0 0 16px; }
.info-panel h3, .info-prose h3 { font-size: 1.125rem; margin: 24px 0 12px; }
.info-panel p, .info-panel li, .info-prose p, .info-prose li { line-height: 1.75; }
.info-panel p:last-child { margin-bottom: 0; }
.info-wrap > .info-panel + .info-panel { margin-top: 24px; }
.info-grid > .info-panel { margin-top: 0; }
.info-prose { max-width: 76ch; overflow-wrap: anywhere; }
.info-prose h2:not(:first-child) { margin-top: 36px; }
.info-muted { color: var(--info-muted); }
.info-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin-top: 24px; }
.info-wrap .info-button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 20px; border: 1px solid var(--info-accent); border-radius: 0; background: var(--info-accent); color: var(--mc-light-ink); font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
.info-button:disabled { opacity: .6; cursor: not-allowed; }
.info-faq { border-bottom: 1px solid var(--info-line); padding: 20px 0; }
.info-faq summary { cursor: pointer; font-size: 1.125rem; font-weight: 700; line-height: 1.5; }
.info-faq[open] summary { margin-bottom: 12px; }
.info-faq p { max-width: 72ch; color: var(--info-muted); line-height: 1.7; }
.info-wrap input:not([type=hidden]):not([type=checkbox]), .info-wrap textarea, .info-wrap select { width: 100%; min-height: 46px; border: 1px solid var(--mc-control); border-radius: 0; padding: 10px 12px; background: var(--mc-ground); color: var(--info-text); font: inherit; }
.info-wrap textarea { resize: vertical; min-height: 160px; }
.info-wrap label { display: block; margin-bottom: 8px; font-weight: 600; }
.info-wrap img { max-width: 100%; height: auto; }
.info-wrap table { width: 100%; border-collapse: collapse; }
.info-wrap th, .info-wrap td { padding: 12px; border-bottom: 1px solid var(--info-line); text-align: left; }
@media (max-width: 760px) { .info-wrap { width: calc(100% - 32px); padding-block: 28px 44px; } .info-grid { grid-template-columns: 1fr; } .info-panel { padding: 20px; } .info-hero { margin-bottom: 26px; } }
.info-form { display: grid; gap: 22px; margin-top: 24px; }
.info-form fieldset { min-width: 0; border: 1px solid var(--info-line); padding: 16px; border-radius: 0; }
.info-form legend { padding-inline: 6px; font-weight: 600; }
.info-panel dt { font-weight: 700; margin-top: 18px; }
.info-panel dd { margin: 6px 0 18px; color: var(--info-muted); line-height: 1.65; overflow-wrap: anywhere; }
.info-grid + .info-panel { margin-top: 24px; }

.info-prose pre { max-width: 100%; overflow-x: auto; padding: 16px; border: 1px solid var(--info-line); border-radius: 0; background: var(--mc-deep); line-height: 1.6; }
.info-prose iframe, .info-prose video { max-width: 100%; }
.info-prose table { display: block; max-width: 100%; overflow-x: auto; }
/* Section headings support reading; the page heading carries the display weight. */
.info-panel h2, .info-prose h2 { font-weight: 650; }
