html,
body { overflow-x: clip; }

.ed-shell { width: min(1320px, calc(100% - 40px)); margin: 24px auto 72px; color: var(--color); }
.ed-skip:not(:focus-visible) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ed-skip:focus-visible { position: fixed; top: 8px; left: 8px; z-index: 100; padding: 8px 12px; background: var(--backgroundColor); }
.ed-page-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.ed-mast { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 56px; border-top: 3px solid var(--color); border-bottom: 1px solid var(--color); font-family: var(--font-mono); font-size: 10px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }
.ed-mast > :last-child { justify-self: end; }
.ed-about { position: relative; }
.ed-about > summary { min-height: 44px; display: inline-flex; align-items: center; cursor: pointer; list-style: none; }
.ed-about > summary::-webkit-details-marker { display: none; }
.ed-about > summary::after { content: ' +'; margin-left: 6px; }
.ed-about[open] > summary::after { content: ' −'; }
.ed-about > summary:focus-visible { outline: var(--focus-ring); outline-offset: 2px; }
.ed-about:not([open]) .ed-about-panel { display: none; }
.ed-about-panel { position: absolute; top: calc(100% + 1px); right: 0; z-index: 20; width: min(520px, calc(100vw - 40px)); border: 1px solid var(--color); padding: 22px; color: var(--color); background: var(--backgroundColor); font-family: var(--font-display); letter-spacing: normal; text-align: left; text-transform: none; }
.ed-about-panel > strong { font-family: var(--font-mono); font-size: 10px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }
.ed-about-panel > p { margin: 10px 0 18px; font-size: 16px; line-height: 1.4; }
.ed-about-panel dl { display: grid; margin: 0; border-block: 1px solid var(--hairline); }
.ed-about-panel dl > div { display: grid; grid-template-columns: 90px 1fr; gap: 14px; padding: 10px 0; }
.ed-about-panel dl > div + div { border-top: 1px solid var(--hairline); }
.ed-about-panel dt { color: var(--grey-500); font-family: var(--font-mono); font-size: 8px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }
.ed-about-panel dd { margin: 0; font-size: 12px; line-height: 1.35; }
.ed-about-panel nav { display: flex; gap: 18px; margin-top: 16px; }
.ed-about-panel a { min-height: 44px; display: inline-flex; align-items: center; font-family: var(--font-mono); font-size: 9px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }

.ed-island-fallback { min-height: 220px; display: grid; place-content: center; border-block: 1px solid var(--color); text-align: center; }
.ed-island-fallback strong { font-family: var(--font-display); font-size: 28px; font-weight: 400; }
.ed-island-fallback p { margin: 8px 0 0; color: var(--grey-500); font-family: var(--font-mono); font-size: 9px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }

.ed-evidence-boundary { display: grid; grid-template-columns: minmax(120px, .35fr) minmax(260px, 1fr); gap: 24px; margin-top: 24px; border-block: 1px solid var(--color); padding: 14px 0; scroll-margin-top: 16px; }
.ed-evidence-boundary span { color: var(--grey-500); font-family: var(--font-mono); font-size: 9px; letter-spacing: var(--tracking-caps); text-transform: uppercase; }
.ed-evidence-boundary strong { font-size: 18px; font-weight: 400; line-height: 1.25; }


@media (max-width: 800px) {
  .ed-shell { width: min(100% - 24px, 1320px); margin-top: 12px; }
  .ed-mast { grid-template-columns: 1fr auto; }
  .ed-mast > span { display: none; }
  .ed-about-panel { position: fixed; top: 72px; right: 12px; left: 12px; width: auto; max-height: calc(100vh - 96px); overflow-y: auto; }

  .ed-evidence-boundary { grid-template-columns: auto 1fr; gap: 12px; margin-top: 20px; }
}
