:root { font-family: system-ui, sans-serif; color: #18394a; background: #f7f8f5; }
    * { box-sizing: border-box; }
    body { margin: 0; line-height: 1.55; }
    .skip { position: absolute; left: -10000px; top: 0; padding: .7rem; background: white; }
    .skip:focus { left: .6rem; z-index: 3; }
    header, main, footer { max-width: 76rem; margin: auto; padding: 1.25rem; }
    header { padding-top: 2.5rem; }
    .eyebrow { color: #24604f; font-size: .86rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
    h1 { max-width: 17ch; margin: .3rem 0 .6rem; font-size: clamp(2rem, 5vw, 3.8rem); line-height: 1.08; }
    h2 { margin: 0 0 .6rem; font-size: 1.55rem; }
    h3 { margin: 0 0 .35rem; font-size: 1.15rem; }
    p { max-width: 72ch; }
    .notice { border-left: .38rem solid #a65428; padding: .7rem 1rem; background: #fff3e8; }
    .archive { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
    .source, .activity, .paper { border: 2px solid #18394a; border-radius: .65rem; background: white; padding: 1rem; }
    .source small { display: block; color: #415d69; font-size: .95rem; }
    .source-image { display: block; width: 100%; max-height: 19rem; object-fit: contain; border: 2px solid #18394a; background: white; }
    .activity { margin-top: 1.3rem; background: #e9f4f0; }
    .questions, .choices { display: flex; flex-wrap: wrap; gap: .6rem; margin: .8rem 0; }
    button { min-height: 3.3rem; padding: .55rem .8rem; border: 2px solid #18394a; border-radius: .45rem; background: white; color: #18394a; font: inherit; font-weight: 750; text-align: left; cursor: pointer; }
    button:hover { background: #d9eefa; }
    button[aria-pressed="true"] { background: #18394a; color: white; }
    button:focus-visible, a:focus-visible { outline: 4px solid #a65428; outline-offset: 3px; }
    .question { margin: 1rem 0; padding: 1rem; border: 2px solid #18394a; border-radius: .5rem; background: white; }
    .question strong { display: block; font-size: 1.2rem; }
    fieldset { border: 0; padding: 0; margin: 1rem 0; }
    legend { font-weight: 800; font-size: 1.1rem; }
    .feedback { min-height: 3.1rem; margin: .7rem 0; padding: .7rem; border-left: .3rem solid #24604f; background: white; }
    .paper { margin: 1.3rem 0; }
    footer { padding-bottom: 3rem; font-size: .95rem; }
    a { color: #145b4c; text-underline-offset: .18em; }
    @media (max-width: 44rem) { .archive { grid-template-columns: 1fr; } .questions button, .choices button { width: 100%; } }
    @media print { .activity { break-before: page; } button { border-color: #18394a; } .skip { display: none; } }
.resource-heading-context{display:block;margin-top:.8rem;font-size:.8rem;line-height:1.5;font-weight:650;letter-spacing:.02em;color:#4c625a}
