/* Extends the existing marketing tokens. No new font, palette or card system. */
.report-skip { position:fixed; top:8px; left:24px; z-index:100; padding:12px 20px; background:var(--card); color:var(--klein); transform:translateY(-200%); }
.report-skip:focus { transform:none; }
.report-hero { padding:64px 0; align-items:start; border-top:0; }
.report-hero > .c { padding-top:0; padding-bottom:0; }
.report-edition { margin-bottom:24px; font-weight:500; }
.report-lead .t-hero { max-width:18ch; }
.report-deck { max-width:44ch; margin-top:24px; }
.report-study { margin-top:24px; max-width:56ch; }
.report-study p + p { margin-top:16px; }
.report-form-cell { align-self:center; scroll-margin-top:88px; }
.report-request, .report-access-granted { max-width:420px; margin-left:auto; }
.report-access-copy, .report-access-granted > p:first-of-type { margin-top:12px; }
[data-report-access-form] { margin-top:24px; }
[data-report-access-form] > label { display:block; margin-bottom:8px; }
#report-email, #report-password { width:100%; min-width:0; height:56px; background:var(--card); border:1px solid var(--line); border-radius:2px; color:var(--ink); padding:0 16px; font:inherit; }
[data-report-access-form] input::placeholder { color:var(--ink-2); opacity:1; }
[data-report-access-form] input:focus-visible { outline:2px solid var(--klein); outline-offset:-2px; }
[data-report-access-form] input[aria-invalid="true"] { border-color:var(--err); }
.report-password-option { margin-top:12px; }
.report-password-option summary, .report-method summary { cursor:pointer; color:var(--klein); min-height:44px; display:flex; align-items:center; list-style:none; text-decoration:underline; text-underline-offset:3px; }
.report-password-option summary::-webkit-details-marker, .report-method summary::-webkit-details-marker { display:none; }
.report-password-option summary::before, .report-method summary::before { content:'+'; margin-right:12px; }
.report-password-option[open] summary::before, .report-method[open] summary::before { content:'−'; }
.report-password-option summary:focus-visible, .report-method summary:focus-visible { outline:2px solid var(--klein); outline-offset:4px; }
.report-submit, .report-open { width:100%; min-height:56px; margin-top:12px; justify-content:center; }
.report-submit:disabled { cursor:progress; }
.report-privacy { margin-top:16px; }
.report-open { margin-top:24px; }
.report-request-confirmation { margin-top:24px; padding:20px 0; border-block:1px solid var(--line); }
.report-request-confirmation p + p { margin-top:8px; }
.report-honey { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.access-error { margin-top:12px; color:var(--err); }
.report-contents { padding:40px 0; }
.report-contents > .c { padding-top:0; padding-bottom:0; }
.report-parts li { display:grid; grid-template-columns:180px 1fr; gap:24px; padding:16px 0; border-top:1px solid var(--line); }
.report-parts li:first-child { padding-top:0; border-top:0; }
.report-parts li:last-child { padding-bottom:0; }
.report-parts h3 { margin:0; font-size:16px; line-height:1.5; font-weight:500; }
.report-parts p { max-width:56ch; color:var(--ink-2); }
.report-method { margin-top:24px; }
.report-method-copy { padding-top:12px; max-width:56ch; }
.report-method p + p { margin-top:16px; }
.report-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; }
@media (max-width:1100px) and (min-width:901px) { .report-parts li { grid-template-columns:1fr; gap:4px; } }
@media (max-width:900px) {
  .report-hero { padding:48px 0; gap:40px; }
  .report-lead .t-hero { max-width:18ch; }
  .report-request, .report-access-granted { margin-left:0; max-width:600px; }
  .report-contents { padding:36px 0; row-gap:24px; }
}
@media (max-width:600px) {
  .report-edition { margin-bottom:20px; }
  .report-parts li { grid-template-columns:1fr; gap:4px; }
  .report-introduction footer .row > .report-footer { flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) { .report-introduction * { scroll-behavior:auto!important; transition:none!important; } }
