/* Owner-approved Resources archive. Inherits the shared Supreme design tokens. */
.rsh-page { background: var(--pp-surface); --rsh-nav-height: 86px; }
.rsh-page [hidden] { display: none !important; }
.rsh-page :is(input, select, button) { font: inherit; }
.rsh-page main :is(h1, h2, h3, h4) { font-family: var(--display); }
.rsh-page :is(a, button, input, select):focus-visible { outline: 3px solid var(--pp-red); outline-offset: 4px; }
.rsh-page ::selection { background: var(--pp-red); color: var(--pp-surface); }
.rsh-page input { caret-color: var(--pp-red); }
.rsh-page .pp-nav-group[data-current-section] summary { color: var(--pp-red); }
.rsh-hero { padding: 32px 0 clamp(44px, 5vw, 80px); }
.rsh-hero .pp-breadcrumb { margin-bottom: 36px; }
.rsh-hero-grid { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: clamp(40px, 7vw, 100px); }
.rsh-hero h1 { max-width: 13ch; font-size: var(--pp-type-hero); font-weight: 800; line-height: 1.04; letter-spacing: -.04em; }
.rsh-hero-grid p { max-width: 45ch; color: var(--pp-muted); font-size: var(--pp-type-intro); line-height: 1.5; }
.rsh-shortcuts { display: flex; flex-wrap: wrap; gap: 16px 28px; margin-top: 24px; }
.rsh-shortcuts .pp-text-link { font-size: var(--pp-type-ui); }
.rsh-steps { position: sticky; top: 0; z-index: 8; background: var(--pp-surface); border-block: 1px solid var(--pp-line); }
.rsh-steps > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rsh-steps a { position: relative; display: flex; align-items: center; gap: 18px; min-height: 86px; padding: 18px 28px; border-left: 1px solid var(--pp-line); font-size: var(--pp-type-row); font-weight: 650; }
.rsh-steps a:first-child { padding-left: 0; border-left: 0; }
.rsh-steps a:last-child { padding-right: 0; }
.rsh-steps a::after { content: ''; position: absolute; height: 3px; bottom: -1px; left: 0; right: 0; background: var(--pp-red); transform: scaleX(0); transform-origin: left; transition: transform .2s var(--pp-ease); }
.rsh-steps a[aria-current], .rsh-steps a:hover { color: var(--pp-red); }
.rsh-steps a[aria-current]::after { transform: scaleX(1); }
.rsh-step-number { color: var(--pp-red); font-size: var(--pp-type-ui); font-variant-numeric: tabular-nums; }
.rsh-steps small { margin-left: auto; font-size: var(--pp-type-ui); color: var(--pp-muted); font-weight: 400; }
.rsh-section { padding-block: var(--pp-section-space); scroll-margin-top: calc(var(--rsh-nav-height) + 24px); }
.rsh-section-heading { display: grid; grid-template-columns: 1.15fr 1fr; align-items: end; gap: clamp(32px, 6vw, 96px); margin-bottom: clamp(36px, 4vw, 64px); }
.rsh-page main h2 { font-size: var(--pp-type-section); font-weight: 800; line-height: 1.06; letter-spacing: -.04em; }
.rsh-section-heading p { max-width: 46ch; font-size: var(--pp-type-intro); color: var(--pp-muted); line-height: 1.5; }
.rsh-section-heading .pp-text-link { margin-top: 20px; }
.rsh-download-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 80px); }
.rsh-download { display: grid; grid-template-columns: .85fr 1fr; align-items: center; gap: 26px; padding-block: 28px; border-block: 1px solid var(--pp-line); }
.rsh-download-image { display: flex; align-items: center; justify-content: center; height: clamp(250px, 25vw, 350px); overflow: hidden; background: var(--pp-paper); }
.rsh-download-image img { width: 100%; height: 100%; object-fit: contain; padding: 16px; }
.rsh-format { display: block; color: var(--pp-muted); font-size: var(--pp-type-ui); margin-bottom: 14px; }
.rsh-download h3 { font-size: var(--pp-type-row); line-height: 1.2; letter-spacing: -.03em; }
.rsh-download-copy p { margin-top: 16px; color: var(--pp-muted); font-size: var(--pp-type-body); line-height: 1.5; }
.rsh-download-copy .pp-text-link { margin-top: 24px; }
.rsh-download h3 a:hover { color: var(--pp-red); }
.rsh-guides { background: var(--pp-paper); }
.rsh-guide-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(40px, 7vw, 100px); }
.rsh-guide-groups h3 { font-size: var(--pp-type-row); color: var(--pp-red); margin-bottom: 24px; }
.rsh-guide-list { border-top: 1px solid var(--pp-ink); }
.rsh-guide-list a { display: grid; grid-template-columns: minmax(0, 1fr) 24px; align-items: center; gap: 22px; padding: 25px 0; border-bottom: 1px solid var(--pp-line); }
.rsh-guide-list h4 { margin: 0; font-size: var(--pp-type-row); line-height: 1.25; letter-spacing: -.03em; }
.rsh-guide-list p { color: var(--pp-muted); font-size: var(--pp-type-body); line-height: 1.5; margin-top: 10px; max-width: 50ch; }
.rsh-guide-list svg { width: 24px; height: 24px; color: var(--pp-red); transition: transform .2s var(--pp-ease); }
.rsh-guide-list a:hover h4 { color: var(--pp-red); }
.rsh-guide-list a:hover svg { transform: translateX(4px); }
.rsh-filters { display: grid; grid-template-columns: 1.7fr 1fr .85fr; gap: 24px; padding: 28px; background: var(--pp-paper); }
.rsh-filters label { display: flex; flex-direction: column; gap: 10px; font-size: var(--pp-type-ui); font-weight: 600; min-width: 0; }
.rsh-filters :is(input, select) { min-width: 0; width: 100%; height: var(--pp-button-standard); border: 1px solid var(--pp-control-border); border-radius: var(--pp-control-radius); padding: 12px 16px; background: var(--pp-surface); color: var(--pp-ink); }
.rsh-filters input::placeholder { color: var(--pp-muted); opacity: 1; }
.rsh-result-count { margin: 28px 0; font-size: var(--pp-type-ui); color: var(--pp-muted); scroll-margin-top: calc(var(--rsh-nav-height) + 24px); }
.rsh-article-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 28px; }
.rsh-article { min-width: 0; padding-bottom: 28px; border-bottom: 1px solid var(--pp-line); }
.rsh-article-image { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--pp-surface-photo); }
.rsh-article-image img { width: 100%; height: 100%; object-fit: cover; }
.rsh-article-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin: 20px 0 14px; font-size: var(--pp-type-ui); color: var(--pp-muted); }
.rsh-article-meta > span { color: var(--pp-red); }
.rsh-article h3 { font-size: var(--pp-type-row); line-height: 1.25; letter-spacing: -.03em; }
.rsh-article h3 a:hover { color: var(--pp-red); text-decoration: underline; text-underline-offset: 4px; }
.rsh-guides .rsh-section-heading { display: block; }
.rsh-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; padding-top: 40px; }
.rsh-pagination button { min-width: 44px; min-height: 44px; border: 1px solid var(--pp-line); background: var(--pp-surface); color: var(--pp-ink); cursor: pointer; padding: 8px 14px; border-radius: var(--pp-control-radius); }
.rsh-pagination button[aria-current] { background: var(--pp-red); border-color: var(--pp-red); color: var(--pp-surface); }
.rsh-pagination button:not([disabled]):hover { border-color: var(--pp-red); }
.rsh-pagination button:disabled { opacity: .45; cursor: default; }
.rsh-empty { padding: 48px 0; border-block: 1px solid var(--pp-line); }
.rsh-empty h3 { font-size: var(--pp-type-row); }
.rsh-empty p { margin: 16px 0 24px; font-size: var(--pp-type-body); }
.rsh-help { background: var(--pp-paper); padding-block: var(--pp-section-space); }
.rsh-help > div { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.rsh-help h2 { max-width: 23ch; }
.rsh-help p { max-width: 62ch; margin-top: 24px; font-size: var(--pp-type-intro); line-height: 1.5; color: var(--pp-muted); }
.rsh-help .pp-button { flex-shrink: 0; }
@media (max-width:1100px) {
  .rsh-page .pp-contact-widget { display: none; }
  .rsh-download { grid-template-columns: 1fr; gap: 24px; align-items: start; }
  .rsh-download-image { height: 280px; }
  .rsh-download-image img { width: auto; max-width: 100%; }
  .rsh-article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rsh-filters { grid-template-columns: 1fr 1fr; }
  .rsh-search { grid-column: 1 / -1; }
}
@media (max-width:760px) {
  .rsh-page .pp-header-row { gap: 12px; }
  .rsh-page .pp-header .pp-logo { width: min(180px, 49vw); }
  .rsh-hero-grid, .rsh-section-heading, .rsh-guide-groups { grid-template-columns: 1fr; gap: 28px; }
  .rsh-hero h1 { font-size: var(--pp-type-hero-mobile); max-width: 15ch; }
  .rsh-hero .pp-breadcrumb { margin-bottom: 28px; }
  .rsh-steps .pp-shell { width: 100%; padding: 0 12px; }
  .rsh-steps a, .rsh-steps a:first-child, .rsh-steps a:last-child { min-height: 76px; padding: 12px 8px; display: grid; grid-template-columns: auto 1fr; gap: 4px 6px; font-size: 16px; }
  .rsh-step-number { font-size: 13px; }
  .rsh-steps a > span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .rsh-steps small { grid-column: 2; grid-row: 1; font-size: 13px; }
  .rsh-download-grid { grid-template-columns: 1fr; gap: 32px; }
  .rsh-download { grid-template-columns: .8fr 1fr; gap: 24px; }
  .rsh-download-image { height: 240px; }
  .rsh-download h3 { font-size: var(--pp-type-row); }
  .rsh-download-image img { padding: 8px; width: 100%; }
  .rsh-filters { padding: 22px; gap: 18px; }
  .rsh-filters label { grid-column: 1 / -1; }
  .rsh-article-grid { grid-template-columns: 1fr; gap: 32px; }
  .rsh-help > div { align-items: start; flex-direction: column; gap: 28px; }
}
@media (max-width:480px) {
  .rsh-download { grid-template-columns: 1fr; }
  .rsh-download-image { height: 270px; }
  .rsh-download-image img { width: auto; }
  .rsh-pagination { gap: 6px; }
  .rsh-pagination button { padding-inline: 10px; }
}
@media (prefers-reduced-motion:reduce) {
  .rsh-page *, .rsh-page *::after { scroll-behavior: auto !important; transition: none !important; }
}
