/* Patents & Trademarks archive.
   Tokens and tone deliberately mirror inc/documents/documents.css so the two resource archives
   read as one system. Production shows these as a four-column table; that survives on desktop and
   collapses to stacked cards on narrow screens, where a four-column table is unreadable. */
.pt-pat{--pt-red:#cc0000;--pt-red-dark:#a30000;--pt-border:#e5e5e5;--pt-ink:#1a1a1a;--pt-muted:#666;--pt-off:#fafafa;color:#333}
.pt-pat *{box-sizing:border-box}

/* Sub-nav across All / Patents / Trademarks */
.pt-pat__nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem}
.pt-pat__nav-link{display:inline-block;padding:.5rem 1rem;border:1px solid var(--pt-border);border-radius:999px;background:#fff;color:var(--pt-ink);font:600 .85rem/1 Inter,sans-serif;text-decoration:none;transition:border-color .15s,color .15s}
.pt-pat__nav-link:hover{border-color:var(--pt-red);color:var(--pt-red)}
.pt-pat__nav-link.is-active{background:var(--pt-red);border-color:var(--pt-red);color:#fff}

/* Section heading */
.pt-pat__section{margin:0 0 3rem}
.pt-pat__section:last-child{margin-bottom:0}
.pt-pat__head{display:flex;align-items:baseline;gap:.85rem;flex-wrap:wrap;margin:0 0 .5rem}
.pt-pat__title{margin:0;font:900 1.5rem/1.2 Inter,sans-serif;color:var(--pt-ink)}
.pt-pat__count{font:400 .8rem/1 Inter,sans-serif;color:var(--pt-muted);text-transform:uppercase;letter-spacing:.08em}
.pt-pat__intro{margin:0 0 1.25rem;font-size:.95rem;line-height:1.55;color:var(--pt-muted);max-width:70ch}
.pt-pat__empty{margin:0;padding:1.25rem;border:1px solid var(--pt-border);border-radius:8px;background:var(--pt-off);color:var(--pt-muted);font-size:.95rem}

/* A long table must scroll inside its own box, never push the page sideways. */
.pt-pat__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--pt-border);border-radius:10px;background:#fff}
.pt-pat__table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.5}
.pt-pat__table thead th{position:sticky;top:0;z-index:1;background:var(--pt-off);text-align:left;padding:.85rem 1rem;font:700 .75rem/1.2 Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--pt-muted);border-bottom:1px solid var(--pt-border);white-space:nowrap}
.pt-pat__table tbody tr+tr{border-top:1px solid var(--pt-border)}
.pt-pat__table tbody tr:hover{background:var(--pt-off)}
.pt-pat__table td,.pt-pat__table th[scope=row]{padding:.85rem 1rem;vertical-align:top;text-align:left}
.pt-pat__name{font:700 .95rem/1.4 Inter,sans-serif;color:var(--pt-ink);min-width:13rem}
.pt-pat__desc{color:var(--pt-muted);min-width:20rem}
/* Numbers and dates line up column-wise when they share a tabular figure set. */
.pt-pat__num,.pt-pat__date{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--pt-ink)}
.pt-pat__num{font-weight:600}
.pt-pat__dash{color:#bbb}

/* Under 720px the table becomes stacked cards, each cell labelled by its column. */
@media (max-width:720px){
	.pt-pat__scroll{border:0;background:transparent;overflow-x:visible}
	.pt-pat__table,.pt-pat__table tbody,.pt-pat__table tr,.pt-pat__table td,.pt-pat__table th{display:block;width:100%}
	.pt-pat__table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
	.pt-pat__table tbody tr{border:1px solid var(--pt-border);border-radius:10px;background:#fff;padding:.35rem .25rem;margin:0 0 .85rem}
	.pt-pat__table tbody tr+tr{border-top:1px solid var(--pt-border)}
	.pt-pat__table td,.pt-pat__table th[scope=row]{padding:.5rem .9rem}
	.pt-pat__table td[data-label]::before,.pt-pat__table th[data-label]::before{content:attr(data-label);display:block;margin:0 0 .15rem;font:700 .68rem/1.2 Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--pt-muted)}
	.pt-pat__name{border-bottom:1px solid var(--pt-border);margin:0 0 .25rem;padding-bottom:.6rem}
	.pt-pat__desc,.pt-pat__num,.pt-pat__date{min-width:0}
	.pt-pat__num,.pt-pat__date{white-space:normal}
}
