/*
 * Rusty Pecha Ledger presentation.
 *
 * This is the one shared visual layer for every public page. The named
 * typography roles and measured layout rules keep the site from drifting
 * when a new editorial or supporting page is added.
 */
:root {
  --ledger-paper: #f8f5ef;
  --ledger-panel: #fffdf9;
  --ledger-ink: #211a16;
  --ledger-muted: #665b53;
  --ledger-rust: #ad4c28;
  --ledger-rule: #d8d1ca;
  --ledger-faint: #eee8df;
  /* The shared Ledger type scale. Pages choose a role, never an ad-hoc size. */
  --ledger-type-label: .72rem;
  --ledger-type-navigation: .72rem;
  --ledger-type-action: .92rem;
  --ledger-type-copy: clamp(1.08rem, 1.35vw, 1.22rem);
  --ledger-type-intro: clamp(1.12rem, 1.6vw, 1.4rem);
  --ledger-type-section: clamp(1.55rem, 2vw, 1.9rem);
  --ledger-type-card: clamp(1.65rem, 2.35vw, 2.22rem);
  --ledger-type-card-copy: .92rem;
  --ledger-type-display: clamp(3.55rem, 7vw, 6.7rem);
}

html[data-ledger-preview],
html[data-ledger-preview] body {
  background: var(--ledger-paper) !important;
  color: var(--ledger-ink);
}

html[data-ledger-preview] body { min-width: 0; overflow-x: hidden !important; }

html[data-ledger-preview] .site-header,
html[data-ledger-preview] .site-footer {
  width: min(100% - 64px, 1240px) !important;
  border-color: var(--ledger-rule) !important;
}

html[data-ledger-preview] .site-header {
  min-height: 92px !important;
  gap: 28px !important;
}

html[data-ledger-preview] .site-header .brand-link img { width: 142px !important; }

html[data-ledger-preview] .site-header nav { gap: 22px !important; }

html[data-ledger-preview] .site-header nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ledger-ink) !important;
  font-size: var(--ledger-type-navigation) !important;
  letter-spacing: .12em !important;
}

html[data-ledger-preview] .site-header nav a.current,
html[data-ledger-preview] .site-header nav a.is-current,
html[data-ledger-preview] .site-header nav a:hover,
html[data-ledger-preview] .site-header nav a:focus-visible {
  color: var(--ledger-rust) !important;
}

html[data-ledger-preview] .site-footer {
  min-height: 84px !important;
  color: var(--ledger-muted) !important;
}

html[data-ledger-preview] .site-footer a { color: var(--ledger-rust) !important; }

/* The Journal index closes in two measured rows. Keep the brand and joining
   invitation stable above a privacy row that uses the full footer measure. */
html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer > p {
  flex: 0 0 auto;
  margin: 0;
}

html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer > .site-footer__join {
  position: static;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: .58em;
  margin-left: auto;
  min-height: 44px;
  padding-right: 0;
  white-space: nowrap;
}

html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer > .site-footer__join span {
  position: static;
  flex: 0 0 auto;
  transform: none;
}

html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 !important;
  width: min(100% - 64px, 1240px);
}

html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] > :nth-child(1) { justify-self: start; }
html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] > :nth-child(2) { justify-self: center; }
html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] > :nth-child(3) { justify-self: end; }

/* In Focus uses the full Ledger measure only in its three-column desktop
   composition. Match the privacy divider and links to that same footer edge. */
@media (min-width: 1041px) {
  html[data-ledger-preview] body[data-page-type="in_focus"] > .rp-footer-controls[data-rp-footer-controls="v1"] {
    width: min(100% - 64px, 1240px);
  }
}

/* Shared typographic roles across the public pages. */
html[data-ledger-preview] .meta,
html[data-ledger-preview] .eyebrow,
html[data-ledger-preview] .card-meta,
html[data-ledger-preview] .footer-note,
html[data-ledger-preview] .article-links h2,
html[data-ledger-preview] .story-shop h2 {
  font-size: var(--ledger-type-label) !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading h1,
html[data-ledger-preview] body[data-page-type="brand_story"] .article-heading h1,
html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro h1,
html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .journal-hero h1 {
  font-size: var(--ledger-type-display) !important;
}

html[data-ledger-preview] .deck,
html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-copy > p:not(.hero-actions),
html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro > p:last-child {
  font-size: var(--ledger-type-intro) !important;
}

html[data-ledger-preview] .article-body,
html[data-ledger-preview] .story-shop p {
  font-size: var(--ledger-type-copy) !important;
}

html[data-ledger-preview] .article-body h2 {
  font-size: var(--ledger-type-section) !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story h3,
html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card h3 {
  font-size: var(--ledger-type-card) !important;
}

html[data-ledger-preview] .story-shop a,
html[data-ledger-preview] .read-link,
html[data-ledger-preview] .article-links a {
  font-size: var(--ledger-type-action) !important;
}

/* The Journal: a readable catalogue rather than a long sequence of oversized cards. */
html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .journal-hero {
  width: min(100% - 64px, 1240px) !important;
  min-height: 0 !important;
  grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr) !important;
  gap: clamp(42px, 6vw, 92px) !important;
  padding: clamp(58px, 8vw, 102px) 0 58px !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-copy {
  max-width: 530px;
  padding-left: 0 !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-copy::before,
html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro::before {
  display: block;
  margin-bottom: 17px;
  color: var(--ledger-rust);
  content: "RUSTY PECHA · COLLECTOR'S LEDGER";
  font-size: var(--ledger-type-label);
  font-weight: 700;
  letter-spacing: .16em;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) h1 {
  max-width: 650px;
  margin-bottom: 21px;
  font-size: var(--ledger-type-display) !important;
  line-height: .9 !important;
  letter-spacing: -.062em !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .flourish { display: none; }

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-copy > p:not(.hero-actions) {
  max-width: 31rem;
  color: var(--ledger-muted);
  font-size: var(--ledger-type-intro) !important;
  line-height: 1.58 !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-actions { margin-top: 25px; }

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-actions a {
  border-color: var(--ledger-rule) !important;
  border-radius: 0 !important;
  color: var(--ledger-rust) !important;
  font-size: var(--ledger-type-action) !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-image {
  border: 1px solid var(--ledger-rule);
  background: var(--ledger-panel);
  padding: 11px;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .hero-image img {
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .stories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: min(100% - 64px, 1240px) !important;
  /* Keep the closing breathing room outside the Ledger frame. Padding here
     leaves a left-only, three-sided tail below the final card on phone. */
  margin: 0 auto 92px !important;
  padding: 0 !important;
  border-top: 1px solid var(--ledger-rule);
  border-left: 1px solid var(--ledger-rule);
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .section-heading {
  grid-column: 1 / -1;
  justify-content: flex-start;
  min-height: 78px;
  padding: 0 22px;
  border-right: 1px solid var(--ledger-rule);
  border-bottom: 1px solid var(--ledger-rule);
  color: var(--ledger-rust);
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .section-heading span { display: none; }

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .section-heading h2 {
  color: var(--ledger-ink);
  font-size: var(--ledger-type-label) !important;
  letter-spacing: .16em !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story {
  position: relative;
  display: flex !important;
  align-items: stretch !important;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  gap: 0 !important;
  margin: 0 !important;
  padding: 19px !important;
  border: 0 !important;
  border-right: 1px solid var(--ledger-rule) !important;
  border-bottom: 1px solid var(--ledger-rule) !important;
  background: var(--ledger-panel);
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story img {
  display: block !important;
  width: 100%;
  height: auto !important;
  margin: 0 !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover;
  border: 1px solid var(--ledger-rule);
}

/* A supplied source that cannot safely lose any more of its image sits whole
   within the same 4:3 Ledger card shell. */
html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story img[data-ledger-image-fit="contain"] {
  background: var(--ledger-paper);
  object-fit: contain !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story > div {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: stretch;
  text-align: left !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story .eyebrow {
  margin-top: 15px;
  color: var(--ledger-muted);
  font-size: var(--ledger-type-label) !important;
  font-weight: 700 !important;
  letter-spacing: .11em !important;
  line-height: 1.45;
  text-align: left !important;
  text-transform: uppercase !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story .eyebrow .read-time {
  display: inline-block;
  white-space: nowrap;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story h3 {
  min-height: 0;
  margin: 9px 0 10px !important;
  font-size: var(--ledger-type-card) !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
  letter-spacing: -.018em !important;
  text-align: left !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story h3 a {
  color: inherit !important;
  display: inline !important;
  margin: 0 !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  line-height: inherit !important;
  text-align: inherit !important;
  text-decoration: none !important;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story div > p:not(.eyebrow) {
  display: -webkit-box;
  overflow: hidden;
  color: var(--ledger-muted);
  font-size: var(--ledger-type-card-copy) !important;
  line-height: 1.48 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story div > a {
  margin-top: auto !important;
  padding-top: 17px;
  color: var(--ledger-rust);
  font-size: var(--ledger-type-action) !important;
  font-weight: 700;
  text-decoration: none;
}

/* New Listings is intentionally the same register: no competing image treatment. */
html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro,
html[data-ledger-preview] body[data-page-type="new_listings"] .editorials {
  width: min(100% - 64px, 1240px) !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro {
  display: block !important;
  padding: 76px 0 48px !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro .eyebrow { display: none; }

html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro h1 {
  margin: 0 !important;
  font-size: var(--ledger-type-display) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro > p:last-child {
  max-width: 520px;
  margin-top: 23px !important;
  padding: 0 !important;
  color: var(--ledger-muted);
  font-size: var(--ledger-type-intro) !important;
  line-height: 1.55 !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .editorials { padding-bottom: 92px !important; }

html[data-ledger-preview] body[data-page-type="new_listings"] .section-heading {
  justify-content: flex-start;
  min-height: 72px;
  padding: 0 20px;
  border: 1px solid var(--ledger-rule);
  border-bottom: 0;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .section-heading span { display: none; }

html[data-ledger-preview] body[data-page-type="new_listings"] .section-heading h2 {
  color: var(--ledger-ink);
  font-size: var(--ledger-type-label) !important;
  letter-spacing: .16em !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 !important;
  border-top: 1px solid var(--ledger-rule);
  border-left: 1px solid var(--ledger-rule);
}

html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card {
  position: relative;
  display: flex;
  min-width: 0;
  padding: 19px;
  border-right: 1px solid var(--ledger-rule);
  border-bottom: 1px solid var(--ledger-rule);
  background: var(--ledger-panel);
}

html[data-ledger-preview] body[data-page-type="new_listings"] .card-image {
  border: 1px solid var(--ledger-rule) !important;
  border-radius: 0 !important;
  background: var(--ledger-faint) !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .card-image img {
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  object-fit: cover;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .card-image img[data-ledger-image-fit="contain"] {
  background: var(--ledger-paper);
  object-fit: contain !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .card-meta {
  margin-top: 15px !important;
  color: var(--ledger-muted) !important;
  font-size: var(--ledger-type-label) !important;
  letter-spacing: .1em !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card h3 {
  margin: 10px 0 9px !important;
  font-size: var(--ledger-type-card) !important;
  line-height: .98 !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card > p:not(.card-meta) {
  color: var(--ledger-muted) !important;
  font-size: var(--ledger-type-card-copy) !important;
  line-height: 1.48 !important;
}

html[data-ledger-preview] body[data-page-type="new_listings"] .read-link,
html[data-ledger-preview] body[data-page-type="new_listings"] .all-journal a { color: var(--ledger-rust) !important; }

html[data-ledger-preview] body[data-page-type="new_listings"] .read-link { margin-top: auto !important; padding-top: 17px; font-size: var(--ledger-type-action) !important; }

html[data-ledger-preview] body[data-page-type="new_listings"] .all-journal { margin-top: 32px !important; text-align: left !important; }

/* The sign-up journey is preserved; only its frame becomes part of the ledger. */
html[data-ledger-preview] body[data-page-type="join"] .join-page {
  width: min(100% - 64px, 1240px) !important;
  min-height: 100svh;
  padding: 0 0 72px !important;
}

html[data-ledger-preview] body[data-page-type="join"] .join-header {
  min-height: 92px !important;
  border-color: var(--ledger-rule) !important;
}

html[data-ledger-preview] body[data-page-type="join"] .brand-mark { width: 144px !important; }

html[data-ledger-preview] body[data-page-type="join"] .journal-link,
html[data-ledger-preview] body[data-page-type="join"] .header-link {
  min-height: 44px !important;
  border: 1px solid var(--ledger-rule) !important;
  border-radius: 0 !important;
  background: var(--ledger-panel) !important;
  color: var(--ledger-ink) !important;
  font-size: var(--ledger-type-navigation) !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html[data-ledger-preview] body[data-page-type="join"] .journal-link { color: var(--ledger-rust) !important; }

html[data-ledger-preview] body[data-page-type="join"] .join-content {
  grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr) !important;
  grid-template-areas: "copy image" "form image" "legal image" !important;
  gap: 0 clamp(42px, 6vw, 88px) !important;
  padding-top: 62px !important;
}

html[data-ledger-preview] body[data-page-type="join"] .intro-copy { padding-top: 22px !important; }

html[data-ledger-preview] body[data-page-type="join"] .intro-copy .eyebrow {
  color: var(--ledger-rust) !important;
  font-size: var(--ledger-type-label) !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase;
}

html[data-ledger-preview] body[data-page-type="join"] .intro-copy h1 {
  font-size: var(--ledger-type-display) !important;
  line-height: .9 !important;
}

html[data-ledger-preview] body[data-page-type="join"] .intro-copy > p:not(.eyebrow) {
  color: var(--ledger-muted) !important;
  font-size: var(--ledger-type-intro) !important;
  line-height: 1.5 !important;
}

html[data-ledger-preview] body[data-page-type="join"] .archive-image {
  align-self: start !important;
  min-height: 0 !important;
  aspect-ratio: 3 / 4;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0;
}

html[data-ledger-preview] body[data-page-type="join"] .form-frame {
  border: 1px solid var(--ledger-rule) !important;
  border-top: 3px solid var(--ledger-rust) !important;
  border-radius: 0 !important;
  background: var(--ledger-panel) !important;
}

/* Journal articles keep their calm reading layout; only the shared framing changes. */
html[data-ledger-preview] body[data-page-type="journal_article"] .article-shell {
  width: min(100% - 64px, 1040px) !important;
  padding-top: 70px !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading {
  max-width: 910px;
  padding-bottom: 42px;
  border-bottom: 1px solid var(--ledger-rule);
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading .meta {
  color: var(--ledger-rust) !important;
  font-size: var(--ledger-type-label) !important;
  letter-spacing: .14em !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading h1 {
  font-size: var(--ledger-type-display) !important;
  line-height: .91 !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-hero,
html[data-ledger-preview] body[data-page-type="journal_article"] .article-image {
  border: 1px solid var(--ledger-rule);
  background: var(--ledger-panel);
  padding: 11px;
}

/* Standard story figures share the readable column on every Journal route,
   including legacy pages with an older embedded breakout rule. A deliberately
   wider figure must opt in explicitly; hero figures keep their own measure. */
html[data-ledger-preview] body[data-page-type="journal_article"] .article-body .article-image:not([data-full-bleed="true"]):not(.article-image--full-bleed) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 2.65em 0 !important;
  transform: none !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .article-hero > a,
html[data-ledger-preview] body[data-page-type="journal_article"] .article-image > a { box-shadow: none !important; }

html[data-ledger-preview] body[data-page-type="journal_article"] .article-facts {
  border-top-color: var(--ledger-rust) !important;
  border-bottom-color: var(--ledger-rule) !important;
}

html[data-ledger-preview] body[data-page-type="journal_article"] .research-note {
  border-color: var(--ledger-rule) !important;
  background: var(--ledger-panel) !important;
}

/* The standard Journal closing rail, share row and footer form one 1180px
   desktop frame. Keep the narrower 1040px measure for article reading and
   for Rusty's Story, but do not pull only the Journal footer inward. */
html[data-ledger-preview] body[data-page-type="journal_article"] .site-footer {
  width: min(100% - 64px, 1180px) !important;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer {
  width: min(100% - 64px, 1040px) !important;
}

/* Rusty's Story remains a self-contained brand page with the eBay route only. */
html[data-ledger-preview] body[data-page-type="brand_story"] .article-shell {
  width: min(100% - 64px, 1040px) !important;
  padding-top: 70px !important;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .article-heading {
  border-bottom: 1px solid var(--ledger-rule);
  padding-bottom: 42px;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .article-heading h1 {
  font-size: var(--ledger-type-display) !important;
  line-height: .91 !important;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .article-hero {
  border: 1px solid var(--ledger-rule);
  background: var(--ledger-panel);
  padding: 11px;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .article-hero img { max-height: none !important; }

html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop {
  width: min(100%, 43.25rem) !important;
  display: block !important;
  margin-top: 56px !important;
  padding: 0 !important;
  border: 0 !important;
  border-top: 2px solid var(--ledger-rust) !important;
  background: transparent;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop__layout {
  display: block;
  padding: 24px 0 0;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop h2 { margin: 0 0 9px !important; }

html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop p {
  max-width: none;
  margin: 0 0 10px !important;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  white-space: nowrap;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story {
  min-height: 94px !important;
  justify-content: space-between !important;
  gap: 32px;
  margin-top: 52px !important;
  border-top: 1px solid var(--ledger-rule) !important;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls {
  width: auto;
  flex: 1 1 auto;
  justify-content: flex-end;
  gap: 8px 26px;
  margin: 0;
  padding: 0;
  border-top: 0;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls a,
html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls .rp-cookie-settings {
  min-height: 44px;
  padding: 0;
  color: var(--ledger-muted);
  text-decoration: none;
}

html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls a:hover,
html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls a:focus-visible,
html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls .rp-cookie-settings:hover,
html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls .rp-cookie-settings:focus-visible {
  color: var(--ledger-rust);
}

/* Quiet utility pages use the same paper and measured rules without adding decoration. */
html[data-ledger-preview] body[data-page-type="privacy"] main,
html[data-ledger-preview] body[data-page-type="cookies"] .policy-main,
html[data-ledger-preview] body[data-page-type="thank_you"] .policy-main {
  width: min(100% - 64px, 800px) !important;
  padding-top: 70px !important;
}

html[data-ledger-preview] body[data-page-type="privacy"] h1,
html[data-ledger-preview] body[data-page-type="cookies"] h1,
html[data-ledger-preview] body[data-page-type="thank_you"] h1 {
  font-size: var(--ledger-type-display) !important;
  line-height: .92 !important;
}

html[data-ledger-preview] .notice-box {
  border-color: var(--ledger-rule) !important;
  border-top-color: var(--ledger-rust) !important;
  background: var(--ledger-panel) !important;
}

@media (max-width: 1040px) {
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .stories,
  html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  :root {
    --ledger-type-display: clamp(3.55rem, 16vw, 5.7rem);
    --ledger-type-card: 1.65rem;
  }

  html[data-ledger-preview] .site-header,
  html[data-ledger-preview] .site-footer,
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .journal-hero,
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .stories,
  html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro,
  html[data-ledger-preview] body[data-page-type="new_listings"] .editorials,
  html[data-ledger-preview] body[data-page-type="join"] .join-page,
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-shell,
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-shell,
  html[data-ledger-preview] body[data-page-type="journal_article"] .site-footer,
  html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer,
  html[data-ledger-preview] body[data-page-type="privacy"] main,
  html[data-ledger-preview] body[data-page-type="cookies"] .policy-main,
  html[data-ledger-preview] body[data-page-type="thank_you"] .policy-main { width: min(100% - 40px, 760px) !important; }

  html[data-ledger-preview] .site-header { min-height: 86px !important; }
  html[data-ledger-preview] .site-header .brand-link img { width: 126px !important; }

  html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer {
    gap: 12px;
  }

  html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer > .site-footer__join {
    font-size: .62rem;
    letter-spacing: .07em;
  }

  html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] {
    width: min(100% - 40px, 760px);
  }

  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .journal-hero {
    grid-template-columns: 1fr !important;
    padding: 52px 0 44px !important;
    gap: 34px !important;
  }

  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) h1 { font-size: var(--ledger-type-display) !important; }
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .stories,
  html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-grid { grid-template-columns: 1fr !important; }
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story,
  html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card { padding: 16px !important; }
  html[data-ledger-preview] body:is([data-page-type="journal_index"], [data-page-type="in_focus"]) .featured-story h3,
  html[data-ledger-preview] body[data-page-type="new_listings"] .editorial-card h3 { font-size: var(--ledger-type-card) !important; }

  html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro { padding: 58px 0 36px !important; }
  html[data-ledger-preview] body[data-page-type="new_listings"] .page-intro h1 { font-size: var(--ledger-type-display) !important; }

  html[data-ledger-preview] body[data-page-type="join"] .join-page { padding-bottom: 42px !important; }
  html[data-ledger-preview] body[data-page-type="join"] .join-header { min-height: 84px !important; }
  html[data-ledger-preview] body[data-page-type="join"] .join-content { display: flex !important; padding-top: 42px !important; }
  html[data-ledger-preview] body[data-page-type="join"] .benefit-rail {
    width: calc(100% + 40px) !important;
    margin-right: -20px !important;
    margin-left: -20px !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  html[data-ledger-preview] body[data-page-type="join"] .archive-image { order: 4; min-height: 360px !important; margin-top: 34px; }
  html[data-ledger-preview] body[data-page-type="join"] .form-frame { order: 3; margin-top: 30px !important; }

  html[data-ledger-preview] body[data-page-type="journal_article"] .article-shell,
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-shell { padding-top: 56px !important; }
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading,
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-heading { padding-bottom: 30px; }
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading h1,
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-heading h1 { font-size: var(--ledger-type-display) !important; }
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-hero,
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-image,
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-hero { padding: 7px; }

  html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop {
    margin-top: 42px !important;
  }

  html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop__layout {
    padding: 20px 0 0;
  }

  html[data-ledger-preview] body[data-page-type="brand_story"] .story-shop a {
    justify-self: start;
  }

  /* The last line, shop panel and footer should read as one closing sequence. */
  html[data-ledger-preview] body[data-page-type="brand_story"] .article-body p:last-child {
    margin-bottom: 0 !important;
  }

  html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story {
    min-height: 0 !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px;
    margin-top: 36px !important;
    padding: 20px 0 18px !important;
  }

  html[data-ledger-preview] body[data-page-type="brand_story"] .site-footer--story .rp-footer-controls {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: clamp(14px, 3vw, 26px);
  }
}

@media (max-width: 470px) {
  html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer {
    min-height: 0 !important;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: center;
    row-gap: 0;
    padding: 16px 0 12px;
  }

  html[data-ledger-preview] body[data-page-type="journal_index"] .site-footer > .site-footer__join {
    margin-left: 0;
  }

  html[data-ledger-preview] body[data-page-type="journal_index"] > .rp-footer-controls[data-rp-footer-controls="v1"] {
    display: flex !important;
    grid-template-columns: none;
    justify-content: flex-start;
    gap: clamp(14px, 3vw, 26px) !important;
  }

  html[data-ledger-preview] .site-header {
    align-items: flex-start !important;
    min-height: 155px !important;
    padding-block: 12px !important;
    gap: 12px !important;
  }

  html[data-ledger-preview] .site-header .brand-link img { width: 108px !important; }

  html[data-ledger-preview] .site-header nav {
    flex: 1 1 auto;
    min-width: 0;
    flex-direction: column;
    align-items: flex-end;
    gap: 0 !important;
    text-align: right;
  }

  html[data-ledger-preview] .site-header nav a {
    justify-content: flex-end;
    min-height: 44px;
    white-space: nowrap;
    font-size: .64rem !important;
    letter-spacing: .08em !important;
  }

  /* On a phone the Join page is one centred, intentional masthead: mark first,
     then three equally measured destinations.  Do not let the navigation become
     a narrow, left-offset column beside a centred logo. */
  html[data-ledger-preview] body[data-page-type="join"] .join-header {
    min-height: 0 !important;
    padding: 34px 0 28px !important;
    text-align: center;
  }

  html[data-ledger-preview] body[data-page-type="join"] .brand-home {
    display: flex !important;
    justify-content: center;
    margin-inline: auto;
  }

  html[data-ledger-preview] body[data-page-type="join"] .brand-mark { width: 132px !important; }

  html[data-ledger-preview] body[data-page-type="join"] .join-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100%, 248px) !important;
    max-width: none !important;
    margin: 34px auto 0 !important;
    gap: 8px !important;
  }

  html[data-ledger-preview] body[data-page-type="join"] .journal-link,
  html[data-ledger-preview] body[data-page-type="join"] .header-link {
    width: 100% !important;
    min-height: 46px !important;
    padding: 0 12px !important;
    justify-content: center !important;
    font-size: .64rem !important;
  }
  html[data-ledger-preview] body[data-page-type="join"] .intro-copy h1 { font-size: clamp(3.25rem, 15vw, 4.1rem) !important; }

  /* Article headlines must break between words, never through a word. The
     smaller phone role preserves the Journal's two-line rhythm for longer
     titles such as “Understanding Blueprints”. */
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading h1 {
    font-size: clamp(2.9rem, 12.8vw, 3.35rem) !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
}

@media (max-width: 340px) {
  /* Preserve the normal 320px title size while allowing browser text zoom to
     grow until the longest approved single word reaches the content edge. */
  html[data-ledger-preview] body[data-page-type="journal_article"] .article-heading h1 {
    font-size: min(2.9rem, 15.4vw) !important;
  }
}
