.campaign-archive[hidden],.campaign-dossier[hidden] { display:none!important; }
.campaign-archive { padding:3rem var(--pad) 4rem;background:#0c1417;color:#e4eae7; }
.campaign-archive .ca-inner { max-width:1180px;margin:auto; }
.campaign-archive h2 { margin:.6rem 0 1rem;font:600 clamp(2.6rem,5vw,4.5rem)/1 var(--display);text-transform:uppercase; }
.campaign-archive .ca-intro { max-width:760px;font-size:1rem;color:#b9c6c8; }
.campaign-archive .ca-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:2rem 0; }
.campaign-archive .ca-card { display:flex;flex-direction:column;min-width:0;border:1px solid #3e504d;border-top:3px solid var(--gold);padding:1.6rem;background:linear-gradient(155deg,#25342b,#0d181b 70%); }
.campaign-archive .ca-file { display:flex;justify-content:space-between;gap:.8rem;font:.75rem/1.5 var(--mono);color:#b7c0b5;text-transform:uppercase; }
.campaign-archive .ca-file span:last-child { color:var(--gold-light); }
.campaign-archive .ca-card h3 { font:600 3.6rem/.98 var(--display);text-transform:uppercase;max-width:9ch;margin:2rem 0 1rem; }
.campaign-archive .ca-type { color:#cdb572;font:.8125rem/1.6 var(--mono);text-transform:uppercase; }
.campaign-archive dl { margin:1rem 0 2rem;border-top:1px solid #3e504d; }
.campaign-archive dl>div { display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #3e504d;padding:.65rem 0; }
.campaign-archive dt { font:.75rem/1.7 var(--mono);text-transform:uppercase;color:#99b0aa; }
.campaign-archive dd { margin:0;font-size:.9375rem;color:#dce6e3; }
.campaign-archive .ca-open { display:flex;justify-content:space-between;margin-top:auto;padding:.85rem 1rem;background:var(--gold);color:#10171b;font:700 .875rem/1.5 var(--mono);text-transform:uppercase; }
.campaign-archive .ca-open:hover { background:var(--gold-light); }
.campaign-archive .ca-card:focus-within { outline:2px solid var(--gold-light);outline-offset:4px; }
.campaign-archive .ca-pending { border-color:#293b3a;background:repeating-linear-gradient(130deg,transparent 0 15px,#24352c15 16px 17px);color:#8b9e98; }
.campaign-archive .ca-pending h3 { font-size:2.7rem;max-width:none;margin:1rem 0 .4rem; }
.campaign-archive .ca-pending p { font-size:1rem; }
.campaign-archive .ca-lock { font:3rem/1 var(--mono);margin-top:auto;color:#758780; }
.campaign-archive .ca-pending-label { margin-top:auto;border-top:1px solid #293b3a;padding-top:1rem;font:.8125rem/1.5 var(--mono);text-transform:uppercase; }
.campaign-archive .ca-material { font:.75rem/1.5 var(--mono);color:#9cafaa;text-transform:uppercase; }
.campaign-archive .ca-notice { border-left:2px solid var(--gold);padding:1rem;color:var(--gold-light); }
.campaign-dossier { scroll-margin-top:calc(var(--header-height) + .5rem); }
.campaign-dossier .ca-return { padding:1.2rem var(--pad);display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;background:#121f22;border-bottom:1px solid #2e4144;font:.8125rem/1.5 var(--mono);text-transform:uppercase;color:#98abae; }
.campaign-dossier .ca-return a { color:var(--gold-light);font-size:.875rem; }
@media(max-width:1000px) { .campaign-archive .ca-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .campaign-archive { padding:2rem 1rem; }.campaign-archive .ca-grid { grid-template-columns:1fr; }.campaign-archive .ca-card { padding:1.3rem; }.campaign-archive .ca-pending { min-height:250px; } }
