/* Buyer area pages: reuse the Editorial V2 tokens from editorial.css. */
.access-page { background: var(--bg); color: var(--ink); }
.access-main { max-width: 640px; padding-block: clamp(3rem, 8vw, 6rem); }
.access-main h1 { font: 600 clamp(2rem, 5vw, 3rem)/1.1 var(--f-display); letter-spacing: -.03em; margin-bottom: 1.2rem; }
.access-main h2 { font: 600 1.35rem/1.2 var(--f-display); margin: 2.4rem 0 .8rem; padding-top: 1.6rem; border-top: 1px solid var(--line); }
.access-main p { color: var(--ink-2); margin-block: .8rem; max-width: 52ch; }
.access-main a:not(.btn) { color: var(--ink); text-underline-offset: 3px; }
.access-form { display: grid; gap: .6rem; margin-top: 1.6rem; }
.access-form label { font-size: .9rem; color: var(--ink-2); }
.access-form input { font: inherit; min-height: 54px; padding: .8rem 1rem; border: 1px solid var(--ink-2); border-radius: 2px; background: var(--bg); color: var(--ink); }
.access-form input:focus-visible, .access-main .btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.access-form .btn { justify-self: start; margin-top: .4rem; }
.access-list { list-style: none; display: flex; flex-wrap: wrap; gap: .75rem; padding: 0; margin: 1rem 0; }
.access-note { border-left: 3px solid var(--accent); padding: .8rem 1rem; background: var(--surface); color: var(--ink); }
.access-who, .access-help { font-size: .9rem; }
.btn[aria-disabled="true"] { cursor: default; opacity: .7; }
@media (max-width: 600px) { .access-form .btn, .access-list .btn { width: 100%; } .access-list li { width: 100%; } }
