.access-open {
  --paper: #f5efdf;
  --ink: #22211d;
  --muted: #625a4b;
  --line: #c6baa3;
  --accent: #383226;
  --hover: #1b1915;
  background: var(--paper);
}

.access-open .site-header { background: #f5efdf; border-bottom-color: #dcd1bb; }
.access-open #main-nav a.active { color: #383226; }
.access-open a:hover { color: #1b1915; }
.access-open :is(a, button):focus-visible { outline: 2px solid #383226; outline-offset: 6px; }

.access-poster {
  --access-pale: #eee5d2;
  --access-blue: #e8ddc6;
  --access-line: #c6baa3;
  --access-muted: #625a4b;
  --access-accent: #383226;
  width: min(1240px, 90vw);
  margin: 0 auto;
  padding: 103px 0 48px;
  color: #22211d;
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 17px;
  line-height: 1.6;
}

.access-poster :is(h1, h2, h3, h4) { color: #22211d; text-wrap: balance; }
.access-poster :is(h1, h2, h3, h4, p, dl, dd, figure, blockquote, ol, ul) { margin: 0; }
.access-poster :is(header, section, div, nav, figure, li) { min-width: 0; }
.access-poster p { color: var(--access-muted); max-width: 72ch; }
.access-poster p + p { margin-top: 16px; }
.access-poster strong { color: #22211d; font-weight: 600; }
.access-poster h3 { font-size: 26px; line-height: 1.2; letter-spacing: -.025em; font-weight: 600; }
.access-poster h4 { font-size: 20px; line-height: 1.3; letter-spacing: -.02em; font-weight: 600; }
.access-poster svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
  vertical-align: middle;
}

.access-poster .poster-topline { color: var(--access-muted); margin-bottom: 52px; font-size: 13px; }
.access-poster .access-heading {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 7%;
  align-items: end;
  margin-bottom: 42px;
}
.access-poster .access-heading h1 {
  font-size: clamp(54px, 6.4vw, 82px);
  line-height: 1.04;
  letter-spacing: -.04em;
  font-weight: 650;
  color: var(--access-accent);
  outline: none;
}
.access-poster .access-heading .access-subtitle {
  display: block;
  margin-top: 23px;
  font-size: clamp(28px, 3vw, 36px);
  line-height: 1.16;
  letter-spacing: -.035em;
  font-weight: 550;
  color: #22211d;
  text-wrap: balance;
}
.access-poster .access-intro p { font-size: 17px; line-height: 1.6; }
.access-poster .access-facts {
  display: grid;
  grid-template-columns: 1fr 1fr 1.2fr;
  gap: 30px;
  border-top: 1px solid var(--access-line);
  padding: 24px 0 28px;
}
.access-poster .access-facts dt { font-size: 13px; color: var(--access-muted); margin-bottom: 6px; }
.access-poster .access-facts dd { font-size: 16px; line-height: 1.45; font-weight: 500; }
.access-poster .access-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  border-block: 1px solid var(--access-line);
  padding: 13px 0;
  margin-bottom: 44px;
}
.access-poster .access-contents button {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: 550 14px/1.4 "DM Sans", Arial, sans-serif;
  text-align: left;
  cursor: pointer;
}
.access-poster .access-contents button > span { color: var(--access-accent); font-variant-numeric: tabular-nums; }
.access-poster .access-contents svg { margin-left: auto; }
.access-poster .access-contents button:hover { color: #1b1915; }

.access-poster .access-map {
  padding: 0 0 28px;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.access-poster .access-map-heading { display: grid; grid-template-columns: 1.1fr 1fr; gap: 8%; align-items: start; margin-bottom: 34px; }
.access-poster .access-map-heading h2 { font-size: 32px; line-height: 1.15; letter-spacing: -.03em; font-weight: 600; }
.access-poster .access-map-heading p { font-size: 16px; line-height: 1.55; }
.access-poster .access-map-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.access-poster .access-map-step { position: relative; padding: 22px 0 0; border-top: 1px solid var(--access-line); }
.access-poster .access-map-link { position: absolute; right: -27px; top: 50%; transform: translateY(-50%); color: var(--access-accent); line-height: 1; }
.access-poster .access-map-step.human { border-color: #978970; }
.access-poster .access-step-label { display: block; color: var(--access-accent); font-size: 13px; line-height: 1.4; margin-bottom: 24px; }
.access-poster .access-map-step h3 { font-size: 24px; margin-bottom: 14px; }
.access-poster .access-map-step p { font-size: 15px; line-height: 1.55; }
.access-poster .access-map-return { margin-top: 25px; padding-top: 17px; border-top: 1px dashed #aa9d85; color: var(--access-accent); font-size: 14px; line-height: 1.6; }
.access-poster .access-map-return p { color: inherit; max-width: 90ch; }
.access-poster figcaption { margin-top: 18px; color: var(--access-muted); font-size: 13px; line-height: 1.6; max-width: 100ch; }

.access-poster .access-section { margin-top: 92px; scroll-margin-top: 100px; }
.access-poster .access-section-heading {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 8%;
  border-top: 2px solid #22211d;
  padding-top: 29px;
  margin-bottom: 42px;
  align-items: start;
}
.access-poster .access-section-heading h2 { font-size: clamp(36px, 4.1vw, 54px); line-height: 1.08; letter-spacing: -.035em; font-weight: 600; }
.access-poster .access-section-heading p { padding-top: 5px; }
.access-poster :is(.access-thoughts, .access-next-questions) dl { border-top: 1px solid var(--access-line); }
.access-poster :is(.access-thoughts, .access-next-questions) dl > div { display: grid; grid-template-columns: 1fr 1.7fr; gap: 8%; padding: 26px 0 29px; border-bottom: 1px solid var(--access-line); }
.access-poster :is(.access-thoughts, .access-next-questions) dt { font-size: 23px; line-height: 1.25; letter-spacing: -.025em; font-weight: 550; text-wrap: balance; }
.access-poster :is(.access-thoughts, .access-next-questions) dd { color: var(--access-muted); }
.access-poster .access-reflection { margin: 48px 0 0; padding: 28px 0; border-block: 1px solid var(--access-line); }
.access-poster .access-reflection > p { font-size: clamp(24px, 2.5vw, 32px); line-height: 1.35; letter-spacing: -.025em; color: var(--access-accent); max-width: 55ch; }
.access-poster .access-reflection footer { margin-top: 18px; color: var(--access-muted); font-size: 14px; }

.access-poster .access-progress-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; }
.access-poster .access-progress-grid > section > h3 { margin-bottom: 25px; color: var(--access-accent); }
.access-poster .access-work-list { padding: 0; list-style: none; border-top: 1px solid var(--access-line); }
.access-poster .access-work-list li { padding: 22px 0 24px; border-bottom: 1px solid var(--access-line); }
.access-poster .access-work-list h4 { margin-bottom: 10px; }
.access-poster .access-work-list p { font-size: 16px; }
.access-poster .access-limits { margin-top: 28px; }
.access-poster .access-limits { font-size: 14px; line-height: 1.6; max-width: 100ch; }
.access-poster .access-evidence { margin-top: 45px; padding: 30px 32px 25px; border: 1px solid var(--access-line); border-radius: 14px; background: var(--access-pale); }
.access-poster .access-evidence h3 { margin-bottom: 25px; }
.access-poster .access-evidence ol { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; padding: 0; list-style: none; counter-reset: evidence; }
.access-poster .access-evidence li { counter-increment: evidence; border-top: 2px solid #978970; padding-top: 16px; }
.access-poster .access-evidence li::before { content: "0" counter(evidence); display: block; font-size: 14px; font-variant-numeric: tabular-nums; color: var(--access-accent); margin-bottom: 18px; }
.access-poster .access-evidence li.access-next { border-top-style: dashed; }
.access-poster .access-evidence li strong { display: block; font-size: 20px; line-height: 1.3; letter-spacing: -.02em; margin-bottom: 10px; }
.access-poster .access-evidence li span { display: block; font-size: 15px; line-height: 1.55; color: var(--access-muted); }
.access-poster .access-evidence figcaption { margin-top: 26px; }

.access-poster .access-closing { display: grid; grid-template-columns: 1fr 1.3fr; gap: 8%; margin-top: 72px; border-top: 2px solid #22211d; padding: 32px 0 10px; }
.access-poster .access-closing h2 { color: var(--access-accent); font-size: 34px; line-height: 1.15; letter-spacing: -.03em; font-weight: 600; }
.access-poster .access-closing p { font-size: 19px; line-height: 1.55; }
.access-poster .access-footer { display: flex; justify-content: space-between; align-items: flex-start; gap: 45px; margin-top: 40px; border-top: 1px solid var(--access-line); padding-top: 30px; }
.access-poster .access-footer > p { font-size: 13px; max-width: 75ch; }
.access-poster .access-footer > a { display: flex; align-items: center; gap: 15px; font-size: 14px; line-height: 1.5; flex-shrink: 0; }

@media (max-width: 1050px) {
  .access-poster .access-heading { gap: 5%; grid-template-columns: 1.3fr 1fr; }
  .access-poster .access-map { padding: 0 0 25px; }
  .access-poster .access-map-flow { gap: 25px; }
  .access-poster .access-map-step { padding: 22px 0 0; }
  .access-poster .access-map-link { right: -23px; }
  .access-poster .access-map-step h3 { font-size: 22px; }
  .access-poster .access-footer { display: block; }
  .access-poster .access-footer > a { margin-top: 24px; }
}

@media (max-width: 760px) {
  .access-poster { padding-top: 88px; font-size: 16px; }
  .access-poster .poster-topline { margin-bottom: 38px; font-size: 12px; }
  .access-poster .access-heading { grid-template-columns: 1fr; gap: 27px; margin-bottom: 30px; }
  .access-poster .access-heading h1 { font-size: clamp(42px, 11.8vw, 62px); line-height: 1.06; }
  .access-poster .access-heading .access-subtitle { font-size: 29px; margin-top: 18px; }
  .access-poster .access-intro p { font-size: 16px; }
  .access-poster .access-facts { grid-template-columns: 1fr; gap: 20px; padding: 23px 0; }
  .access-poster .access-facts > div { display: grid; grid-template-columns: 76px 1fr; column-gap: 16px; }
  .access-poster .access-facts dt { margin-bottom: 0; padding-top: 1px; }
  .access-poster .access-facts dd { font-size: 15px; }
  .access-poster .access-contents { gap: 15px; margin-bottom: 32px; padding: 11px 0; }
  .access-poster .access-contents button { align-items: flex-start; gap: 7px; font-size: 13px; padding: 6px 0; }
  .access-poster .access-contents svg { display: none; }
  .access-poster .access-map { padding: 0 0 22px; }
  .access-poster .access-map-heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 25px; }
  .access-poster .access-map-heading h2 { font-size: 29px; }
  .access-poster .access-map-flow { grid-template-columns: 1fr; gap: 29px; }
  .access-poster .access-map-step { padding: 23px 0 0; }
  .access-poster .access-map-link { top: auto; bottom: -26px; right: 50%; transform: translateX(50%) rotate(90deg); }
  .access-poster .access-step-label { margin-bottom: 15px; }
  .access-poster .access-map-step h3 { font-size: 24px; margin-bottom: 11px; }
  .access-poster .access-map-step p { font-size: 16px; }
  .access-poster .access-map-return { margin-top: 22px; font-size: 14px; }
  .access-poster figcaption { font-size: 13px; }
  .access-poster .access-section { margin-top: 64px; scroll-margin-top: 84px; }
  .access-poster .access-section-heading { grid-template-columns: 1fr; gap: 23px; padding-top: 24px; margin-bottom: 30px; }
  .access-poster .access-section-heading h2 { font-size: 37px; }
  .access-poster .access-section-heading p { padding-top: 0; }
  .access-poster :is(.access-thoughts, .access-next-questions) dl > div { grid-template-columns: 1fr; gap: 13px; padding: 23px 0 25px; }
  .access-poster :is(.access-thoughts, .access-next-questions) dt { font-size: 23px; }
  .access-poster .access-reflection { margin-top: 35px; padding: 24px 0; }
  .access-poster .access-reflection > p { font-size: 25px; }
  .access-poster .access-progress-grid { grid-template-columns: 1fr; gap: 36px; }
  .access-poster .access-progress-grid > section > h3 { font-size: 25px; margin-bottom: 20px; }
  .access-poster .access-work-list li { padding: 21px 0 23px; }
  .access-poster .access-limits { margin-top: 23px; }
  .access-poster .access-evidence { margin-top: 32px; padding: 25px 22px 22px; }
  .access-poster .access-evidence h3 { font-size: 25px; }
  .access-poster .access-evidence ol { grid-template-columns: 1fr; gap: 26px; }
  .access-poster .access-evidence li::before { margin-bottom: 12px; }
  .access-poster .access-evidence li span { font-size: 16px; }
  .access-poster .access-closing { grid-template-columns: 1fr; gap: 24px; margin-top: 55px; padding-top: 26px; }
  .access-poster .access-closing h2 { font-size: 30px; }
  .access-poster .access-closing p { font-size: 17px; }
  .access-poster .access-footer { margin-top: 30px; padding-top: 25px; }
}

.access-poster .access-facts a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.access-poster .access-explainer-link{display:block;margin-bottom:30px;outline-offset:7px}
.access-poster .access-explainer{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:contain}
.access-open ::selection{background:#383226;color:#f5efdf}
