/* =============================================================
   Silver Current Press — Library Silver
   1920s gentleman's literary library. Oxblood, silver, midnight.
   ============================================================= */

:root {
  /* LIGHT MODE v4 — Pearl Ivory · Saturated Oxblood · Luminous Cobalt · True Silver · Sea-Grass
     The paper is now a near-white pearl, not beige. The header is luminous Prussian-cobalt,
     not near-black. Type weight raised across the board. */
  --paper: #FBF9F2;            /* near-white pearl with warm undertone */
  --paper-alt: #F4EFE2;        /* softer cream secondary */
  --paper-deep: #1F3B6A;       /* NEW — luminous cobalt companion surface */
  --ink: #14110D;              /* deeper for higher contrast */
  --ink-soft: #3D3328;
  --muted: #6B5E4D;

  /* Silver — actually silver, not slate. Brighter for contrast on cream. */
  --silver: #7E8A95;           /* was #9FA3A8 — deeper so it reads on bright paper */
  --silver-bright: #D8DCE0;    /* metallic highlight */
  --silver-dark: #4A5560;      /* was #6E7378 — true silver-charcoal */
  --silver-glint: #F2F4F6;     /* NEW — the sparkle */

  /* Oxblood — saturated, not dried. */
  --oxblood: #7E1A28;          /* was #6B1F2A — more saturated, less brown */
  --oxblood-deep: #5A0E1A;
  --oxblood-bright: #A52838;

  /* Navy — second voice, used for the deep band, the hero, hover accents */
  --navy: #14233B;             /* primary navy */
  --navy-bright: #25406B;      /* link state on dark surfaces */
  --navy-deep: #0B1729;

  /* Sea-grass — third voice, real green, not muddy verdigris */
  --seagrass: #3F7A5C;         /* was #5A8278 — brighter, more chlorophyll */
  --seagrass-deep: #2A5740;
  --seagrass-soft: rgba(63, 122, 92, 0.55);

  /* Aliases kept so old class names keep working */
  --verdigris: var(--seagrass);
  --verdigris-deep: var(--seagrass-deep);
  --verdigris-soft: var(--seagrass-soft);

  --teal-citation: var(--navy);
  --hydra: var(--oxblood);

  --rule: var(--silver);
  --rule-dark: var(--silver-dark);

  /* Surfaces */
  --surface: var(--paper);
  --surface-alt: var(--paper-alt);
  --border: var(--silver);

  /* Header band — luminous Prussian-cobalt, not near-black */
  --header-bg: rgba(31, 59, 106, 0.97);     /* #1F3B6A — luminous cobalt */
  --header-bg-stop: rgba(45, 78, 130, 0.97); /* gradient bottom for shimmer */
  --header-fg: #FBF6E4;                       /* warm ivory text */
  --header-rule: #D9C77F;                     /* champagne rule */

  /* Drop cap */
  --dropcap-color: var(--oxblood);
  --dropcap-border: var(--silver-dark);

  /* Texture opacity — KILLED. It was greying the page. */
  --texture-opacity: 0;

  /* Type */
  --font-display: 'Cormorant Garamond', 'EB Garamond', Georgia, serif;
  --font-body: 'Lora', Georgia, serif;
  --font-sans: 'Inter', system-ui, sans-serif;

  --content-max: 920px;
  --frame-pad: 56px;
}

/* Dark mode v4 — Twilight Library. Lighter, more luminous than v3.
   The paper is a softer indigo-blue, the ink is bright ivory, and type weight is up. */
html[data-theme="dark"] {
  --paper: #1E2D4B;             /* lighter, more luminous indigo (was #0F1A2E) */
  --paper-alt: #2A3D60;
  --paper-deep: #14203A;
  --ink: #FAF3DC;               /* bright warm ivory */
  --ink-soft: #E5DCC0;
  --muted: #B6AC93;

  --silver: #DDE2E8;            /* brighter silver on the luminous indigo */
  --silver-bright: #F4F6F9;
  --silver-dark: #A5ABB3;
  --silver-glint: #FFFFFF;

  --oxblood: #FF6E78;            /* punchier */
  --oxblood-deep: #D8424F;
  --oxblood-bright: #FF8E96;

  --navy: #4670B0;
  --navy-bright: #6E97D6;
  --navy-deep: #1E2D4B;

  --seagrass: #82E3B0;           /* punchier */
  --seagrass-deep: #5DC78D;
  --seagrass-soft: rgba(130, 227, 176, 0.55);

  --verdigris: var(--seagrass);
  --verdigris-deep: var(--seagrass-deep);
  --verdigris-soft: var(--seagrass-soft);

  --teal-citation: var(--navy-bright);
  --hydra: var(--oxblood);

  --rule: var(--silver);
  --rule-dark: var(--silver-bright);

  --surface: var(--paper);
  --surface-alt: var(--paper-alt);
  --border: #3E5377;

  --header-bg: rgba(15, 26, 50, 0.97);
  --header-bg-stop: rgba(30, 45, 75, 0.97);
  --header-fg: #FAF3DC;
  --header-rule: #E0CE85;

  --dropcap-color: var(--oxblood);
  --dropcap-border: var(--silver);

  --texture-opacity: 0;
}

/* Reset --------------------------------------------------------- */
*,*::before,*::after { box-sizing: border-box; }
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  margin: 0;
  padding: 0;
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.7;
  color: var(--ink);
  background-color: var(--paper);
  font-feature-settings: "onum" 1, "liga" 1, "kern" 1;
  position: relative;
  min-height: 100vh;
  transition: background-color 200ms ease, color 200ms ease;
}

/* Subtle leather-grain texture */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: var(--texture-opacity);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='stitch' seed='3'/><feColorMatrix values='0 0 0 0 0.18  0 0 0 0 0.10  0 0 0 0 0.08  0 0 0 0.55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  mix-blend-mode: multiply;
  transition: opacity 200ms ease;
}
html[data-theme="dark"] body::before {
  mix-blend-mode: screen;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='stitch' seed='3'/><feColorMatrix values='0 0 0 0 0.45  0 0 0 0 0.30  0 0 0 0 0.25  0 0 0 0.40 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}

img, svg { max-width: 100%; display: block; }
a { color: var(--ink); text-decoration: none; }
a.gilt-link {
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  transition: color .25s, border-color .25s;
}
a.gilt-link:hover { color: var(--oxblood-bright); border-color: var(--silver-bright); }

p { margin: 0 0 1.1em; }
em, i { font-family: var(--font-display); font-style: italic; }

/* Frame — leather-bound double rule -------------------------------- */
.frame {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: var(--frame-pad);
  z-index: 1;
}
.frame::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid var(--silver);
  pointer-events: none;
  opacity: 0.55;
}
.frame::after {
  content: "";
  position: absolute;
  inset: 24px;
  border: 2px solid var(--silver);
  pointer-events: none;
  opacity: 0.85;
}
.corner {
  position: absolute;
  width: 36px;
  height: 36px;
  pointer-events: none;
  color: var(--silver);
  z-index: 2;
}
.corner.tl { top: 12px; left: 12px; }
.corner.tr { top: 12px; right: 12px; transform: scaleX(-1); }
.corner.bl { bottom: 12px; left: 12px; transform: scaleY(-1); }
.corner.br { bottom: 12px; right: 12px; transform: scale(-1,-1); }

/* Header / Nav — silver band ---------------------------------------- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  background-color: var(--header-bg);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-top: 1px solid var(--silver);
  border-bottom: 1px solid var(--silver);
  box-shadow: 0 1px 0 var(--silver);
  transition: background-color 200ms ease;
}
.site-header .inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 18px 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

/* Stacked wordmark — PRESS matches SILVER CURRENT */
.wordmark-small {
  display: inline-block;
  text-align: center;
  line-height: 1;
  color: var(--ink);
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: 0.02em;
}
.wordmark-small .line1,
.wordmark-small .line2 {
  display: block;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.06em;
  color: var(--ink);
  text-transform: none;
}
.wordmark-small .rule {
  display: block;
  width: 44px;
  height: 1px;
  background: var(--silver);
  margin: 4px auto;
}

.main-nav ul {
  display: flex;
  gap: 32px;
  list-style: none;
  margin: 0;
  padding: 0;
  align-items: center;
}
.main-nav a {
  position: relative;
  display: inline-block;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ink);
  padding-bottom: 4px;
  border-bottom: 1px solid transparent;
  transition: color .2s, border-color .2s;
}
.main-nav a:hover {
  color: var(--oxblood);
  border-bottom-color: var(--silver);
}
.main-nav a.active {
  color: var(--ink);
}
.main-nav a.active::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -10px;
  width: 8px;
  height: 8px;
  transform: translateX(-50%) rotate(45deg);
  border-right: 1.2px solid var(--verdigris);
  border-bottom: 1.2px solid var(--verdigris);
}
html[data-theme="dark"] .main-nav a.active::after {
  border-color: var(--verdigris);
}

/* Theme toggle */
.theme-toggle {
  background: transparent;
  border: 1px solid var(--silver);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--silver-dark);
  cursor: pointer;
  margin-left: 24px;
  transition: color .2s, border-color .2s, background .2s;
  flex-shrink: 0;
}
.theme-toggle:hover {
  color: var(--ink);
  border-color: var(--silver-bright);
  background: rgba(159,163,168,0.08);
}
.theme-toggle svg { width: 16px; height: 16px; display: block; }
.theme-toggle .icon-moon { display: block; }
.theme-toggle .icon-sun { display: none; }
html[data-theme="dark"] .theme-toggle .icon-moon { display: none; }
html[data-theme="dark"] .theme-toggle .icon-sun { display: block; }

/* Mobile nav */
.nav-toggle {
  display: none;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 6px;
  color: var(--silver-dark);
}
.nav-toggle svg { width: 24px; height: 24px; }

/* Layout -------------------------------------------------------- */
main { position: relative; z-index: 1; }
.page {
  max-width: var(--content-max);
  margin: 0 auto;
  padding: 64px 32px 96px;
  position: relative;
}
.page-center { text-align: center; }
section { margin: 72px 0; }

/* Eyebrows / titles --------------------------------------------- */
.eyebrow {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 14px;
}
.roman {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  color: var(--silver-dark);
  letter-spacing: 0.08em;
}

h1.page-title, h2.section-title {
  font-family: var(--font-display);
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 8px;
  line-height: 1.15;
}
h1.page-title {
  font-size: clamp(44px, 6vw, 68px);
  font-style: italic;
  letter-spacing: -0.005em;
}
h2.section-title {
  font-size: clamp(30px, 3.6vw, 42px);
  font-style: italic;
}
.title-rule {
  width: 80px;
  height: 1px;
  background-color: var(--silver);
  margin: 22px 0 36px;
}
.page-center .title-rule { margin-left: auto; margin-right: auto; }

/* Chapter opener — chevron above a title */
.chapter-opener {
  text-align: center;
  margin-bottom: 28px;
}
.chapter-opener .chevron {
  width: 38px;
  height: 22px;
  margin: 0 auto 18px;
  color: var(--silver-dark);
}

/* Frontispiece / hero ------------------------------------------- */
.frontispiece {
  text-align: center;
  padding: 72px 0 40px;
  position: relative;
}
.frontispiece .hero-horizon {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: var(--silver);
  opacity: 0.35;
  pointer-events: none;
  transform: translateY(2px);
}
.frontispiece .hero-columns {
  position: absolute;
  inset: 24px 0 24px 0;
  pointer-events: none;
  display: flex;
  justify-content: space-between;
  z-index: 0;
}
.frontispiece .hero-columns .column {
  width: 32px;
  height: 100%;
  color: var(--silver);
  opacity: 0.45;
}
.frontispiece > * { position: relative; z-index: 1; }

.wordmark-display {
  font-family: var(--font-display);
  font-weight: 700;
  font-style: normal;
  font-size: clamp(60px, 10vw, 116px);
  line-height: 0.95;
  letter-spacing: 0.01em;
  color: var(--ink);
  margin: 0;
  text-align: center;
}
.wordmark-display .line1,
.wordmark-display .line2 {
  display: block;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1em;
  letter-spacing: 0.02em;
  color: var(--ink);
  text-transform: none;
}
.wordmark-display .rule {
  display: block;
  width: 200px;
  height: 1px;
  background: var(--silver);
  margin: 14px auto;
}

.frontispiece .wave {
  margin: 18px auto 0;
  width: 220px;
  height: 30px;
  color: var(--silver-dark);
}
.frontispiece .ornament-sunburst {
  margin: 28px auto 28px;
  width: 140px;
  height: 140px;
  color: var(--silver-dark);
}
.frontispiece .tagline {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ink-soft);
}
.frontispiece .tagline .roman { display: inline-block; margin-right: 14px; font-size: 14px; color: var(--silver-dark); }
.epigraph {
  max-width: 580px;
  margin: 44px auto 0;
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.55;
  color: var(--ink-soft);
}
.sea-epigraph {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 18px;
  color: var(--silver-dark);
  margin: 20px auto 0;
  max-width: 520px;
  letter-spacing: 0.01em;
}

/* Mission statement ---------------------------------------------- */
.mission {
  position: relative;
  text-align: center;
  max-width: 720px;
  margin: 56px auto;
  padding: 44px 24px;
  border-top: 1px solid var(--silver);
  border-bottom: 1px solid var(--silver);
}
.mission::before,
.mission::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 10px;
  height: 10px;
  transform: translateX(-50%) rotate(45deg);
  background: var(--paper);
  border: 1px solid var(--silver);
}
.mission::before { top: -6px; }
.mission::after { bottom: -6px; }

.mission .eyebrow { margin-bottom: 18px; }
.mission .chevron {
  width: 28px;
  height: 18px;
  color: var(--silver-dark);
  margin: 0 auto 14px;
}
.mission .statement {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.55;
  color: var(--ink);
  margin: 0;
}
.mission .wave-after {
  width: 160px;
  height: 22px;
  color: var(--silver-dark);
  margin: 22px auto 0;
}
.mission-side-column {
  position: absolute;
  top: 24px;
  bottom: 24px;
  width: 28px;
  color: var(--silver);
  opacity: 0.40;
  pointer-events: none;
}
.mission-side-column.left { left: -56px; }
.mission-side-column.right { right: -56px; }

/* Divider — engraved double rule with diamond ------------------- */
.divider {
  display: block;
  margin: 56px auto;
  width: 320px;
  height: 18px;
  color: var(--silver);
}

/* Wave divider --------------------------------------------------- */
.wave-divider {
  display: block;
  margin: 48px auto;
  width: 280px;
  height: 26px;
  color: var(--silver-dark);
}

/* Chevron section divider --------------------------------------- */
.chevron-divider {
  display: block;
  margin: 56px auto;
  width: 60px;
  height: 26px;
  color: var(--silver-dark);
}

/* Drop cap — oxblood with silver border ------------------------ */
.drop-cap::first-letter {
  font-family: var(--font-display);
  font-weight: 700;
  float: left;
  font-size: 4.7em;
  line-height: 0.92;
  padding: 6px 14px 0 6px;
  margin: 6px 16px 0 0;
  color: var(--oxblood);
  border: 1px solid var(--silver);
  background: linear-gradient(180deg, rgba(159,163,168,0.04), transparent);
}

/* Three column house qualities --------------------------------- */
.three-col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 56px;
}
.three-col .col {
  text-align: center;
}
.three-col .col .col-chevron {
  width: 26px;
  height: 16px;
  margin: 0 auto 14px;
  color: var(--silver-dark);
}
.three-col .col h3 {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 30px;
  margin: 6px 0 14px;
  color: var(--ink);
}
.three-col .col .roman { font-size: 14px; }
.three-col .col p {
  font-size: 16px;
  color: var(--ink-soft);
  text-align: left;
}

/* Home services teaser ----------------------------------------- */
.services-teaser {
  max-width: 720px;
  margin: 0 auto;
}
.services-table {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 48px;
  margin: 24px 0 28px;
}
.services-table .row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 14px 0;
  border-bottom: 1px solid var(--silver);
}
.services-table .row .label {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 19px;
  color: var(--ink);
}
.services-table .row .rate {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-soft);
  font-feature-settings: "lnum" 1, "tnum" 1;
}
.services-teaser .view-all {
  display: inline-block;
  margin-top: 14px;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  padding-bottom: 3px;
}
.services-teaser .view-all:hover {
  color: var(--oxblood-bright);
  border-color: var(--silver-bright);
}

/* Catalogue listings ------------------------------------------- */
.catalog-entry {
  padding: 32px 0;
  border-bottom: 1px solid var(--silver);
}
.catalog-entry:first-of-type { border-top: 1px solid var(--silver); }
.catalog-entry .title {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 30px;
  color: var(--ink);
  margin: 0 0 6px;
  line-height: 1.2;
}
.catalog-entry .author {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0 0 14px;
}
.catalog-entry .desc {
  max-width: 640px;
  margin: 0 0 14px;
  color: var(--ink-soft);
}
.catalog-entry .meta {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--muted);
  font-feature-settings: "lnum" 1, "tnum" 1;
}
.catalog-entry .meta .dot { color: var(--silver); margin: 0 10px; }
.catalog-entry .order {
  display: inline-block;
  margin-top: 14px;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  padding-bottom: 2px;
}
.catalog-entry .order:hover { color: var(--oxblood-bright); border-color: var(--silver-bright); }

/* Services list ------------------------------------------------ */
.service-row {
  display: grid;
  grid-template-columns: 56px 1fr 220px;
  gap: 32px;
  padding: 28px 0;
  border-bottom: 1px solid var(--silver);
  align-items: baseline;
}
.service-row:first-of-type { border-top: 1px solid var(--silver); }
.service-row .num {
  font-family: var(--font-display);
  font-style: italic;
  color: var(--silver-dark);
  font-size: 20px;
}
.service-row .name {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 26px;
  margin: 0 0 8px;
  line-height: 1.2;
  color: var(--ink);
}
.service-row .desc {
  font-size: 16px;
  color: var(--ink-soft);
  margin: 0;
}
.service-row .price {
  text-align: right;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink);
  font-feature-settings: "lnum" 1, "tnum" 1;
}
.service-row .price .timing {
  display: block;
  margin-top: 6px;
  color: var(--muted);
}
.service-row .service-facts {
  margin: 18px 0 0;
  padding: 16px 18px;
  background: var(--paper-alt);
  border-left: 2px solid var(--silver);
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 8px 18px;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ink);
}
.service-row .service-facts dt {
  font-family: var(--font-sans);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 11.5px;
  color: var(--ink-soft);
  padding-top: 2px;
}
.service-row .service-facts dd {
  margin: 0;
  color: var(--ink-soft);
}
@media (max-width: 720px) {
  .service-row .service-facts {
    grid-template-columns: 1fr;
    gap: 4px 0;
  }
  .service-row .service-facts dt {
    margin-top: 6px;
  }
  .service-row .service-facts dt:first-of-type {
    margin-top: 0;
  }
}

/* Services callout — verdigris-bordered card on paper ----------- */
.rates-callout {
  margin: 48px auto;
  max-width: 680px;
  text-align: center;
  padding: 28px 32px;
  background: var(--paper-alt);
  color: var(--ink);
  border: 1px solid var(--verdigris);
  position: relative;
  box-shadow: inset 0 0 0 1px var(--silver-bright);
}
.rates-callout::before,
.rates-callout::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: 1px solid var(--verdigris);
}
.rates-callout::before { top: 6px; left: 6px; border-right: none; border-bottom: none; }
.rates-callout::after { bottom: 6px; right: 6px; border-left: none; border-top: none; }
html[data-theme="dark"] .rates-callout {
  background: var(--surface-alt);
  border-color: var(--verdigris);
  box-shadow: inset 0 0 0 1px var(--silver-dark);
}
.rates-callout .eyebrow { color: var(--verdigris-deep); margin-bottom: 10px; }
html[data-theme="dark"] .rates-callout .eyebrow { color: var(--verdigris); }
.rates-callout .text {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 18px;
  color: var(--ink);
  margin: 0;
}

/* Pull quote --------------------------------------------------- */
.pullquote {
  text-align: center;
  margin: 64px auto;
  max-width: 720px;
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 34px;
  line-height: 1.4;
  color: var(--ink);
  position: relative;
  padding: 48px 0;
}
.pullquote .chev-top,
.pullquote .chev-bottom {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 56px;
  height: 22px;
  color: var(--silver-dark);
}
.pullquote .chev-top { top: 0; }
.pullquote .chev-bottom { bottom: 0; transform: translateX(-50%) rotate(180deg); }

/* Journal entries --------------------------------------------- */
.journal-cats {
  display: flex;
  justify-content: center;
  gap: 40px;
  list-style: none;
  padding: 0;
  margin: 0 0 56px;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.journal-cats a { color: var(--ink-soft); }
.journal-cats a:hover { color: var(--oxblood); }
.journal-cats .sep { color: var(--silver); }

.journal-entry {
  padding: 32px 0;
  border-bottom: 1px solid var(--silver);
}
.journal-entry:first-of-type { border-top: 1px solid var(--silver); }
.journal-entry h3 {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 28px;
  margin: 0 0 8px;
}
.journal-entry h3 a { color: var(--ink); }
.journal-entry h3 a:hover { color: var(--oxblood); }
.journal-entry .byline {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 12px;
}
.journal-entry .excerpt {
  color: var(--ink-soft);
  margin: 0 0 12px;
  max-width: 640px;
}
.journal-entry .more {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  padding-bottom: 2px;
}
.journal-entry .more:hover { color: var(--oxblood-bright); border-color: var(--silver-bright); }

/* Contact / calling card -------------------------------------- */
.calling-card {
  max-width: 560px;
  margin: 24px auto 0;
  text-align: center;
}
.calling-card .line {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 14px 0;
}
.calling-card .email {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 24px;
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  display: inline-block;
}
.contact-form {
  margin: 56px auto 0;
  max-width: 520px;
  text-align: left;
}
.contact-form label {
  display: block;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px;
}
.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--silver);
  padding: 8px 0 10px;
  font-family: var(--font-body);
  font-size: 17px;
  color: var(--ink);
  margin-bottom: 28px;
  border-radius: 0;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: none;
  border-bottom-color: var(--oxblood);
}
.contact-form textarea { resize: vertical; min-height: 110px; }
.stamp-btn {
  display: inline-block;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  color: #F2EBDA;
  background: var(--oxblood);
  border: 1px solid var(--silver);
  padding: 14px 38px 13px;
  cursor: pointer;
  transition: all .25s;
  box-shadow: inset 0 0 0 2px var(--oxblood);
}
.stamp-btn:hover {
  background: var(--oxblood-deep);
  border-color: var(--silver-bright);
  color: #F2EBDA;
}
html[data-theme="dark"] .stamp-btn {
  background: var(--oxblood);
  color: #F2EBDA;
}
html[data-theme="dark"] .stamp-btn:hover {
  background: var(--oxblood-bright);
}
.contact-closing {
  margin-top: 56px;
  font-family: var(--font-display);
  font-style: italic;
  color: var(--muted);
  font-size: 17px;
  text-align: center;
}

/* Colophon (about page) --------------------------------------- */
.colophon-block {
  text-align: center;
  padding: 48px 0;
  border-top: 1px solid var(--silver);
  border-bottom: 1px solid var(--silver);
  margin-top: 56px;
}
.colophon-block .seal {
  width: 96px;
  height: 96px;
  margin: 0 auto 16px;
  color: var(--oxblood);
}
.colophon-block .seal .ring { stroke: var(--silver); }

/* Catalogue page section heads -------------------------------- */
.cat-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--silver);
  padding-bottom: 10px;
}
.cat-section-head h2 {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 30px;
  margin: 0;
}
.cat-section-head .count {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--muted);
}

/* Forthcoming on home ----------------------------------------- */
.forthcoming-list .catalog-entry { padding: 24px 0; }
.forthcoming-list .catalog-entry .title { font-size: 26px; }

/* Services gutter columns ------------------------------------- */
.services-page-wrap {
  position: relative;
  padding: 0 12px;
}
.services-page-wrap .gutter-column {
  position: absolute;
  top: 40px;
  bottom: 40px;
  width: 22px;
  color: var(--silver);
  opacity: 0.32;
  pointer-events: none;
  z-index: 0;
}
.services-page-wrap .gutter-column.left { left: -36px; }
.services-page-wrap .gutter-column.right { right: -36px; }
@media (max-width: 1040px) {
  .services-page-wrap .gutter-column { display: none; }
}

/* Footer ------------------------------------------------------ */
.site-footer {
  text-align: center;
  padding: 64px 32px 56px;
  border-top: 1px solid var(--silver);
  margin-top: 96px;
  position: relative;
  z-index: 1;
}
.site-footer .footer-orn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin-bottom: 18px;
}
.site-footer .ornament-sunburst {
  width: 44px;
  height: 44px;
  margin: 0;
  color: var(--silver-dark);
}
.site-footer .wave-small {
  width: 60px;
  height: 14px;
  color: var(--silver-dark);
}
.site-footer .colophon {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 19px;
  color: var(--ink);
  margin: 0 0 8px;
}
.site-footer .meta {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 6px 0;
}
.site-footer .meta a {
  color: var(--muted);
  border-bottom: 1px solid var(--silver);
  padding-bottom: 1px;
  margin: 0 6px;
}
.site-footer .meta a:hover { color: var(--ink-soft); border-color: var(--silver-bright); }
.site-footer .printed {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 14px;
  color: var(--muted);
  margin-top: 16px;
}

/* Commonplace Book ------------------------------------------ */
.commonplace-list { list-style: none; padding: 0; margin: 24px 0 0; }
.commonplace-list li {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 10px 0;
  border-bottom: 1px dotted var(--silver);
  color: var(--ink-soft);
}
.commonplace-list li svg {
  flex-shrink: 0;
  width: 18px;
  height: 12px;
  color: var(--verdigris);
}
.commonplace-list li::marker { content: none; }
.commonplace-list li:last-child { border-bottom: none; }

.invitation-card {
  position: relative;
  max-width: 720px;
  margin: 56px auto;
  padding: 44px 48px 40px;
  border: 1px solid var(--oxblood);
  background: var(--paper-alt);
  box-shadow: inset 0 0 0 1px var(--silver-bright);
}
html[data-theme="dark"] .invitation-card {
  background: var(--surface-alt);
  border-color: var(--oxblood);
}
.invitation-card::before {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid var(--silver);
  pointer-events: none;
}
.invitation-card .eyebrow {
  text-align: center;
  color: var(--oxblood);
  margin: 0 0 16px;
}
.invitation-card p {
  font-family: var(--font-body);
  color: var(--ink);
  font-size: 17px;
  line-height: 1.7;
}
.invitation-card p:last-child { margin-bottom: 0; }
.invitation-card .chev {
  width: 36px;
  height: 20px;
  margin: 0 auto 20px;
  color: var(--silver-dark);
  display: block;
}

.terms-note {
  max-width: 720px;
  margin: -20px auto 64px;
  padding: 0 12px;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.01em;
  color: var(--muted);
  text-align: center;
}

.entry {
  max-width: 720px;
  margin: 48px auto;
  padding: 0 12px;
}
.entry .eyebrow { margin-bottom: 10px; color: var(--verdigris-deep); }
html[data-theme="dark"] .entry .eyebrow { color: var(--verdigris); }
.entry .entry-title {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 28px;
  line-height: 1.25;
  color: var(--ink);
  margin: 0 0 10px;
}
.entry .attribution {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0 0 18px;
}
.entry .body {
  font-size: 17px;
  color: var(--ink-soft);
  line-height: 1.75;
}
.entry .body p { margin: 0 0 0.9em; }
.entry .body .signed {
  display: block;
  margin-top: 14px;
  font-family: var(--font-display);
  font-style: italic;
  color: var(--silver-dark);
}

.commonplace-teaser {
  max-width: 720px;
  margin: 0 auto;
}
.commonplace-teaser .invitation-line {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 19px;
  color: var(--ink-soft);
  text-align: center;
  max-width: 580px;
  margin: 0 auto 28px;
}
.commonplace-teaser .preview {
  padding: 28px 0;
  border-top: 1px solid var(--silver);
  border-bottom: 1px solid var(--silver);
  text-align: center;
}
.commonplace-teaser .preview .label {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 10px;
}
.commonplace-teaser .preview .title-line {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 22px;
  color: var(--ink);
  margin: 0 0 8px;
}
.commonplace-teaser .preview .attr {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0 0 16px;
}
.commonplace-teaser .preview .excerpt {
  font-size: 16px;
  color: var(--ink-soft);
  max-width: 560px;
  margin: 0 auto 16px;
  font-style: italic;
  font-family: var(--font-display);
}
.commonplace-teaser .read-link {
  display: inline-block;
  margin-top: 20px;
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--oxblood);
  border-bottom: 1px solid var(--silver);
  padding-bottom: 3px;
  transition: color .18s ease, border-color .18s ease;
}
.commonplace-teaser .read-link .arrow {
  display: inline-block;
  margin-left: 8px;
  color: var(--verdigris-deep);
  font-style: normal;
  transition: transform .18s ease, color .18s ease;
}
html[data-theme="dark"] .commonplace-teaser .read-link .arrow { color: var(--verdigris); }
.commonplace-teaser .read-link:hover {
  color: var(--oxblood-bright);
  border-color: var(--silver-bright);
}
.commonplace-teaser .read-link:hover .arrow {
  transform: translateX(3px);
}

/* Currents page — italic subtitle beneath H1 */
.page-subtitle {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 23px;
  line-height: 1.4;
  color: var(--ink-soft);
  text-align: center;
  max-width: 620px;
  margin: 14px auto 0;
}
html[data-theme="dark"] .page-subtitle { color: var(--ink-soft); }

/* Currents — Fitzgerald epigraph framed */
.currents-epigraph {
  max-width: 680px;
  margin: 48px auto 8px;
  padding: 36px 40px 30px;
  text-align: center;
  border-top: 1px solid var(--silver);
  border-bottom: 1px solid var(--silver);
  position: relative;
}
.currents-epigraph::before,
.currents-epigraph::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 8px;
  height: 8px;
  transform: translateX(-50%) rotate(45deg);
  background: var(--verdigris);
  opacity: 0.7;
}
.currents-epigraph::before { top: -5px; }
.currents-epigraph::after { bottom: -5px; }
.currents-epigraph .quote {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.55;
  color: var(--ink);
  margin: 0 0 16px;
}
.currents-epigraph .attr {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.30em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0;
}
@media (max-width: 720px) {
  .currents-epigraph { padding: 28px 18px 22px; margin: 36px auto 8px; }
  .currents-epigraph .quote { font-size: 19px; }
  .page-subtitle { font-size: 19px; }
}

@media (max-width: 820px) {
  .invitation-card { padding: 32px 22px 28px; }
  .invitation-card::before { inset: 4px; }
  .entry .entry-title { font-size: 24px; }
}

/* Page numbers ---------------------------------------------- */
.page-numeral {
  text-align: center;
  font-family: var(--font-display);
  font-style: italic;
  color: var(--silver-dark);
  font-size: 16px;
  letter-spacing: 0.18em;
  margin: 56px 0 0;
}

/* Scroll fade --------------------------------------------------- */
.reveal {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .6s ease, transform .6s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Mobile nav drawer */
.mobile-drawer {
  display: none;
  background: var(--paper);
  border-bottom: 1px solid var(--silver);
}
.mobile-drawer ul {
  list-style: none;
  margin: 0;
  padding: 16px 24px 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}
.mobile-drawer a {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ink);
}

/* Responsive --------------------------------------------------- */
@media (max-width: 820px) {
  :root { --frame-pad: 28px; }
  .frame::before { inset: 10px; }
  .frame::after { inset: 16px; }
  .corner { width: 24px; height: 24px; }
  .corner.tl, .corner.tr { top: 6px; }
  .corner.bl, .corner.br { bottom: 6px; }
  .corner.tl, .corner.bl { left: 6px; }
  .corner.tr, .corner.br { right: 6px; }
  .site-header .inner {
    padding: 14px 20px;
    gap: 10px;
  }
  .main-nav { display: none; }
  .nav-toggle { display: inline-flex; align-items: center; }
  .mobile-drawer.open { display: block; }
  .theme-toggle { margin-left: 8px; }
  .page { padding: 36px 18px 64px; }
  section { margin: 56px 0; }
  body { font-size: 17px; }
  .three-col { grid-template-columns: 1fr; gap: 36px; }
  .service-row {
    grid-template-columns: 36px 1fr;
    grid-template-rows: auto auto;
    gap: 14px 18px;
  }
  .service-row .price {
    grid-column: 1 / -1;
    text-align: left;
    padding-left: 54px;
  }
  .wordmark-display { font-size: 52px; }
  .wordmark-display .rule { width: 130px; }
  .epigraph { font-size: 19px; }
  .pullquote { font-size: 24px; padding: 36px 0; }
  .mission .statement { font-size: 19px; }
  .frontispiece .ornament-sunburst { width: 100px; height: 100px; }
  .frontispiece .hero-columns,
  .mission-side-column,
  .services-page-wrap .gutter-column { display: none; }
  .frontispiece .hero-horizon { display: none; }
  .services-table { grid-template-columns: 1fr; gap: 0; }
}

@media (max-width: 480px) {
  .frame { padding: 22px; }
  .frame::before, .frame::after { display: none; }
  .corner { display: none; }
  .drop-cap::first-letter {
    font-size: 3.8em;
    padding: 4px 10px 0 4px;
    margin: 4px 12px 0 0;
  }
  .site-header .inner { padding: 12px 16px; }
  .wordmark-small .line1,
  .wordmark-small .line2 { font-size: 16px; }
  .main-nav a.active::after { display: none; }
}

/* ============================================================
   LEGAL PAGES — Privacy, Terms, Submissions, Accessibility, DMCA
   Minimal additions; reuses existing tokens and drop-cap.
============================================================ */
.legal-prose {
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.7;
  color: var(--ink);
  margin-top: 40px;
}
.legal-prose .drop-cap {
  margin-bottom: 1.6em;
}
.legal-prose .legal-h2 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 22px;
  line-height: 1.25;
  color: var(--oxblood);
  margin: 2.2em 0 0.6em;
  letter-spacing: 0.005em;
}
.legal-prose .legal-h2::before {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  background: var(--silver);
  margin-bottom: 14px;
}
.legal-prose p {
  margin: 0 0 1.1em;
}
.legal-prose .legal-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.4em;
}
.legal-prose .legal-list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 0.7em;
}
.legal-prose .legal-list li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 0.7em;
  width: 8px;
  height: 8px;
  border: 1px solid var(--verdigris);
  transform: rotate(45deg);
  background: transparent;
}
.legal-prose a {
  color: var(--oxblood);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 0.5px;
}
.legal-prose a:hover {
  color: var(--oxblood-deep);
  text-decoration-thickness: 1px;
}
.legal-prose strong {
  font-weight: 600;
  color: var(--ink);
}

@media (max-width: 720px) {
  .legal-prose { font-size: 17px; }
  .legal-prose .legal-h2 { font-size: 20px; margin-top: 1.8em; }
}

/* ============================================================
   v3 — POP. Saturated overrides applied at end of cascade.
   ============================================================ */

/* HEADER — flip to deep navy with ivory type. Striking, not retiring. */
.site-header {
  background-color: var(--header-bg) !important;
  border-top: 1px solid var(--header-rule) !important;
  border-bottom: 1px solid var(--header-rule) !important;
  box-shadow: 0 1px 0 var(--header-rule), 0 4px 18px rgba(11, 23, 41, 0.18) !important;
}
.site-header .wordmark-small .line1,
.site-header .wordmark-small .line2 {
  color: var(--header-fg) !important;
}
.site-header .wordmark-small .rule {
  background: linear-gradient(90deg, transparent, var(--silver-glint), transparent) !important;
  height: 1.4px !important;
}
.site-header .main-nav a {
  color: var(--header-fg) !important;
  opacity: 0.92;
}
.site-header .main-nav a:hover {
  color: #FFFFFF !important;
  opacity: 1;
  border-bottom-color: var(--seagrass) !important;
}
.site-header .main-nav a.active {
  color: #FFFFFF !important;
  opacity: 1;
}
.site-header .main-nav a.active::after {
  border-right-color: var(--seagrass) !important;
  border-bottom-color: var(--seagrass) !important;
}
.site-header .theme-toggle {
  color: var(--silver-bright) !important;
  border-color: var(--silver-bright) !important;
  opacity: 0.85;
}
.site-header .theme-toggle:hover {
  color: #FFFFFF !important;
  border-color: #FFFFFF !important;
  opacity: 1;
}
.site-header .nav-toggle { color: var(--silver-bright) !important; }

/* WORDMARK DISPLAY — metallic silver gradient on SILVER CURRENT, oxblood on PRESS.
   Real eye-pull. The hero pops. */
.wordmark-display {
  font-weight: 700 !important;
  letter-spacing: 0.015em !important;
}
.wordmark-display .line1 {
  background: linear-gradient(180deg,
    var(--silver-glint) 0%,
    var(--silver-bright) 18%,
    var(--silver) 50%,
    var(--silver-dark) 78%,
    var(--silver) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--silver-dark);
  text-shadow: 0 1px 0 rgba(255,255,255,0.5);
  filter: drop-shadow(0 2px 1px rgba(74, 85, 96, 0.22));
}
.wordmark-display .line2 {
  color: var(--oxblood) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.35);
}
html[data-theme="dark"] .wordmark-display .line1 {
  background: linear-gradient(180deg,
    #FFFFFF 0%,
    var(--silver-bright) 30%,
    var(--silver) 60%,
    var(--silver-dark) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
html[data-theme="dark"] .wordmark-display .line2 {
  color: var(--oxblood-bright) !important;
}
.wordmark-display .rule {
  background: linear-gradient(90deg,
    transparent 0%,
    var(--silver-dark) 12%,
    var(--silver-glint) 50%,
    var(--silver-dark) 88%,
    transparent 100%) !important;
  height: 2px !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.6);
}

/* FRONTISPIECE — punch the columns and the silver horizon up */
.frontispiece .hero-horizon {
  background: linear-gradient(90deg, transparent, var(--silver) 30%, var(--silver) 70%, transparent) !important;
  opacity: 0.7 !important;
  height: 1.4px !important;
}
.frontispiece .hero-columns .column {
  color: var(--silver-dark) !important;
  opacity: 0.85 !important;
}
.frontispiece .ornament-sunburst {
  color: var(--oxblood) !important;
}
.frontispiece .ornament-sunburst circle:first-of-type { fill: var(--oxblood) !important; }
.frontispiece .wave { color: var(--seagrass) !important; }
.frontispiece .tagline {
  color: var(--navy) !important;
  font-weight: 600 !important;
  letter-spacing: 0.34em !important;
}
.frontispiece .tagline .roman { color: var(--oxblood) !important; }

/* CHAPTER OPENER chevrons — make them oxblood, not faded slate */
.chapter-opener .chevron { color: var(--oxblood) !important; opacity: 1; }
.chapter-opener .chevron polyline:nth-of-type(1) { opacity: 1; }
.chapter-opener .chevron polyline:nth-of-type(2) { stroke: var(--silver-dark); }
.chapter-opener .chevron polyline:nth-of-type(3) { stroke: var(--seagrass); }

/* TITLES — keep the italic Garamond but add weight presence */
h1.page-title {
  font-weight: 700 !important;
  letter-spacing: -0.012em !important;
  color: var(--ink) !important;
}
h2.section-title {
  font-weight: 700 !important;
  color: var(--ink) !important;
}
.title-rule {
  background: linear-gradient(90deg, var(--oxblood), var(--silver-dark), var(--seagrass)) !important;
  height: 2px !important;
  width: 110px !important;
}

/* WAVE DIVIDERS — give them the silver-glint */
.wave-divider {
  color: var(--silver-dark) !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,0.4));
}
.wave-divider path:first-of-type { stroke-width: 1.4 !important; }

/* BODY TYPE — slightly larger, fuller weight for readability */
body {
  font-size: 19px !important;
  line-height: 1.72 !important;
  color: var(--ink) !important;
}
p { color: var(--ink); }

/* LINKS in body text — oxblood with sea-grass underline */
.legal-prose a,
.page a:not(.gilt-link):not(.wordmark-small):not(.nav-toggle):not(.theme-toggle) {
  color: var(--oxblood);
  border-bottom: 1px solid var(--seagrass);
  text-decoration: none;
  transition: color .2s, border-color .2s, background .2s;
  padding-bottom: 1px;
}
.legal-prose a:hover,
.page a:not(.gilt-link):not(.wordmark-small):hover {
  color: var(--oxblood-deep);
  border-bottom-color: var(--oxblood);
  background: rgba(63, 122, 92, 0.08);
}

/* FRAME RULES — silver gets its glint */
.frame::before { opacity: 0.7 !important; border-color: var(--silver-dark) !important; }
.frame::after { opacity: 1 !important; border-color: var(--silver-dark) !important; border-width: 2px !important; }
.corner { color: var(--silver-dark) !important; }

/* DROP CAP — saturated oxblood with silver-glint border */
.drop-cap::first-letter {
  color: var(--oxblood) !important;
  border: 1.5px solid var(--silver-dark) !important;
  background: linear-gradient(180deg, rgba(126, 26, 40, 0.04), transparent) !important;
  text-shadow: 0 2px 0 rgba(255,255,255,0.5);
}

/* CALLOUT — Three Offices columns, section eyebrows, etc. add color life */
.eyebrow {
  color: var(--navy) !important;
  font-weight: 600 !important;
}
.eyebrow .roman { color: var(--oxblood) !important; font-weight: 700 !important; }

/* LEGAL PAGES — keep them readable but pull oxblood h2 stronger */
.legal-prose .legal-h2 { color: var(--oxblood) !important; font-weight: 700 !important; }
.legal-prose .legal-h2::before { background: var(--seagrass) !important; height: 2px !important; width: 36px !important; }
.legal-prose .legal-list li::before { border-color: var(--seagrass) !important; }

/* FOOTER — give it a navy field for closing emphasis */
.site-footer {
  margin-top: 80px !important;
  padding-top: 60px !important;
  padding-bottom: 40px !important;
  border-top: 1px solid var(--silver-dark);
  background: linear-gradient(180deg, transparent 0%, rgba(20, 35, 59, 0.03) 100%);
}
.site-footer .colophon {
  color: var(--ink) !important;
  font-weight: 600 !important;
}
.site-footer .footer-orn { color: var(--seagrass) !important; }
.site-footer .ornament-sunburst { color: var(--oxblood) !important; }
.site-footer .ornament-sunburst circle:first-of-type { fill: var(--oxblood) !important; }
.site-footer a { color: var(--oxblood) !important; border-bottom: 1px solid var(--seagrass); }
.site-footer a:hover { color: var(--oxblood-deep) !important; border-bottom-color: var(--oxblood) !important; }

/* Dark-mode header — already dark; ivory wordmark, ivory nav */
html[data-theme="dark"] .site-header { background-color: var(--header-bg) !important; }
html[data-theme="dark"] .site-header .wordmark-small .line1,
html[data-theme="dark"] .site-header .wordmark-small .line2 { color: #F2EBDA !important; }


/* ============================================================
   v4 — BRIGHTER + THICKER. Paper, header, weights, gradient.
   ============================================================ */

/* HEADER — gradient cobalt band, not a flat near-black */
.site-header {
  background: linear-gradient(180deg, var(--header-bg) 0%, var(--header-bg-stop) 100%) !important;
  border-bottom-color: var(--header-rule) !important;
  box-shadow: 0 1px 0 var(--header-rule),
              0 6px 22px rgba(31, 59, 106, 0.22),
              inset 0 -1px 0 rgba(255,255,255,0.05) !important;
}
.site-header .wordmark-small .line1,
.site-header .wordmark-small .line2 {
  color: var(--header-fg) !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
}
.site-header .wordmark-small .rule {
  background: linear-gradient(90deg, transparent, var(--header-rule), transparent) !important;
  height: 1.6px !important;
  opacity: 0.85;
}
.site-header .main-nav a {
  color: var(--header-fg) !important;
  font-weight: 600 !important;
  opacity: 1 !important;
  letter-spacing: 0.18em !important;
}
.site-header .main-nav a:hover {
  color: var(--header-rule) !important;
}
.site-header .main-nav a.active {
  color: var(--header-rule) !important;
}

/* BODY TYPE — thicker, brighter readability */
body {
  font-size: 19.5px !important;
  line-height: 1.74 !important;
  color: var(--ink) !important;
  font-weight: 500 !important;       /* up from 400 — Lora reads thicker */
}
p, li, .desc, .meta { font-weight: 500 !important; }
.muted, .colophon, .printed { font-weight: 500 !important; }
strong, b { font-weight: 700 !important; }

/* DISPLAY TYPE — page titles, section titles thicker */
h1.page-title { font-weight: 700 !important; letter-spacing: -0.012em !important; }
h2.section-title { font-weight: 700 !important; }
.wordmark-display { font-weight: 700 !important; }
.eyebrow {
  font-weight: 700 !important;
  letter-spacing: 0.26em !important;
}

/* CATALOGUE ENTRIES — titles louder, descriptions more readable */
.catalog-entry .title,
.book-entry .title {
  font-weight: 700 !important;
  color: var(--ink) !important;
}
.catalog-entry .author,
.book-entry .author {
  font-weight: 600 !important;
  color: var(--oxblood) !important;
}
.catalog-entry .desc,
.book-entry .desc { font-weight: 500 !important; color: var(--ink) !important; }
.catalog-entry .meta,
.book-entry .meta { font-weight: 500 !important; }

/* DARK MODE — lift type weight one more notch for legibility on indigo */
html[data-theme="dark"] body { font-weight: 500 !important; color: var(--ink) !important; }
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .desc { color: var(--ink) !important; }
html[data-theme="dark"] h1.page-title,
html[data-theme="dark"] h2.section-title { color: var(--ink) !important; }
html[data-theme="dark"] .wordmark-display .line2 { color: var(--oxblood) !important; }

/* DARK MODE wordmark — brighter silver, brighter oxblood */
html[data-theme="dark"] .wordmark-display .line1 {
  background: linear-gradient(180deg, #FFFFFF 0%, #F2F4F6 35%, var(--silver) 70%, var(--silver-dark) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* SECTION dividers, waves — brighter on dark mode */
html[data-theme="dark"] .wave-divider { color: var(--silver) !important; opacity: 1 !important; }
html[data-theme="dark"] .chapter-opener .chevron polyline:nth-of-type(1) { stroke: var(--oxblood) !important; }
html[data-theme="dark"] .chapter-opener .chevron polyline:nth-of-type(3) { stroke: var(--seagrass) !important; }



/* ============================================================
   v5 — LUMINOSITY, WEIGHT, ART DECO ORNAMENTATION
   ============================================================
   Brief:
   • Thicker rules and ornament strokes throughout
   • Stronger, more readable fonts (especially Services rates)
   • Page H1 visibly larger/bolder than subsequent H2s
   • Additional subtle Art Deco ornamentation
   • Dark mode: violet-evening-sky blues + consistent paper across pages
   • Overall: pop with luminosity, style, color
   ============================================================ */

/* ----- 5.1 LIGHT-MODE PALETTE LIFT — more saturated, luminous ----- */
:root {
  /* Pearl paper, slightly warmer for luminosity */
  --paper: #FCFAF3 !important;
  --paper-alt: #F6F1E4 !important;

  /* Gilt — new Art Deco gold accent for hairlines & ornaments */
  --gilt: #C29A3A;
  --gilt-bright: #E0BC58;
  --gilt-soft: rgba(194, 154, 58, 0.45);

  /* Saturate the core accents */
  --oxblood: #8A1C2C !important;
  --oxblood-deep: #5E0F1C !important;
  --oxblood-bright: #B22A3C !important;

  --navy: #16284A !important;
  --navy-bright: #2A4A7C !important;

  --seagrass: #2F7A55 !important;
  --seagrass-deep: #1F5A3F !important;

  --rule: var(--silver-dark);  /* thicker dividers default to darker silver */
}

/* ----- 5.2 DARK MODE — VIOLET EVENING SKY, UNIFORM PAPER ----- */
html[data-theme="dark"] {
  /* Indigo lifted toward violet — like late dusk with a star still showing */
  --paper: #2A2350 !important;            /* violet-indigo, evening sky */
  --paper-alt: #352C62 !important;
  --paper-deep: #1A1638 !important;

  --ink: #FFF6DE !important;              /* warmer, brighter ivory */
  --ink-soft: #EFE3C2 !important;
  --muted: #C9BFA3 !important;

  --silver: #E8ECF2 !important;
  --silver-bright: #FFFFFF !important;
  --silver-dark: #B5BCC6 !important;

  --gilt: #F2D27A;
  --gilt-bright: #FFE89A;
  --gilt-soft: rgba(242, 210, 122, 0.55);

  --oxblood: #FF8A92 !important;          /* punchier on violet */
  --oxblood-deep: #E55A66 !important;
  --oxblood-bright: #FFA8AE !important;

  --navy: #7E9CD9 !important;
  --navy-bright: #A6BEEC !important;
  --navy-deep: #2A2350 !important;

  --seagrass: #92E8B8 !important;
  --seagrass-deep: #6FCC99 !important;

  --header-bg: rgba(34, 28, 70, 0.97) !important;
  --header-bg-stop: rgba(58, 48, 110, 0.97) !important;
  --header-rule: #F2D27A !important;     /* warm gilt rule against violet */
  --header-fg: #FFF6DE !important;
}

/* Force consistent paper across EVERY page in dark mode */
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .page,
html[data-theme="dark"] .page-shell,
html[data-theme="dark"] .container,
html[data-theme="dark"] .wrap,
html[data-theme="dark"] section {
  background-color: var(--paper) !important;
}
html[data-theme="dark"] body {
  background:
    radial-gradient(1100px 700px at 12% -8%, rgba(126, 156, 217, 0.18), transparent 60%),
    radial-gradient(900px 600px at 92% 8%, rgba(242, 210, 122, 0.10), transparent 65%),
    var(--paper) !important;
  background-attachment: fixed !important;
}

/* Light mode — a whisper of warm luminosity behind the paper */
html[data-theme="light"] body,
html:not([data-theme="dark"]) body {
  background:
    radial-gradient(1100px 700px at 8% -10%, rgba(194, 154, 58, 0.10), transparent 60%),
    radial-gradient(900px 600px at 96% 6%, rgba(22, 40, 74, 0.06), transparent 65%),
    var(--paper) !important;
  background-attachment: fixed !important;
}

/* ----- 5.3 BODY TYPE — thicker, more readable everywhere ----- */
body,
p, li, dd, dt, blockquote, figcaption, td, th,
.desc, .meta, .author, .colophon, .printed, .muted {
  font-weight: 550 !important;            /* Lora variable-friendly; falls back to 600 */
}
@supports not (font-variation-settings: normal) {
  body, p, li, .desc, .meta, .author { font-weight: 600 !important; }
}
body { font-size: 19.5px !important; line-height: 1.75 !important; }
.eyebrow { font-weight: 800 !important; letter-spacing: 0.28em !important; }
strong, b, em strong { font-weight: 800 !important; }

/* ----- 5.4 PAGE-LEVEL HEADING HIERARCHY — H1 visibly dominant ----- */
h1.page-title,
h1.wordmark-display {
  font-size: clamp(48px, 6.6vw, 78px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.04 !important;
  margin-bottom: 0.35em !important;
}
h2, h2.section-title {
  font-size: clamp(26px, 3vw, 34px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.18 !important;
}
h3 {
  font-size: clamp(20px, 2.2vw, 24px) !important;
  font-weight: 700 !important;
}

/* Page subtitle directly below H1 — quieter to let H1 dominate */
.page-subtitle,
.page-title + p,
.page-title + .lede {
  font-size: clamp(17px, 1.6vw, 20px) !important;
  font-weight: 500 !important;
  font-style: italic;
  color: var(--ink-soft) !important;
  letter-spacing: 0.005em !important;
}

/* ----- 5.5 THICKER RULES & ORNAMENT STROKES ----- */
hr,
.divider,
.section-rule,
.wave-divider svg path,
.wave-divider svg line {
  stroke-width: 2.2px !important;
}
.site-header { border-bottom-width: 2.5px !important; }
.site-footer { border-top-width: 2px !important; }
.site-header .wordmark-small .rule { height: 2.4px !important; opacity: 0.95 !important; }

/* Chapter-opener chevrons — thicker tricolour */
.chapter-opener .chevron polyline,
.chevron polyline {
  stroke-width: 2.6px !important;
  fill: none !important;
}
.chapter-opener .chevron polyline:nth-of-type(1) { stroke: var(--oxblood) !important; }
.chapter-opener .chevron polyline:nth-of-type(2) { stroke: var(--silver-dark) !important; }
.chapter-opener .chevron polyline:nth-of-type(3) { stroke: var(--seagrass) !important; }

/* Wave dividers — bolder, slightly more saturated */
.wave-divider svg { stroke-width: 2.4px !important; opacity: 1 !important; }

/* Borders on cards, callouts — thicker */
.rates-callout,
.invitation-card,
.catalog-entry,
.book-entry,
.entry,
.commonplace-teaser {
  border-width: 2px !important;
}

/* ----- 5.6 ART DECO ORNAMENTATION — subtle additions ----- */

/* Gilt double-rule beneath every page H1 */
h1.page-title::after {
  content: "";
  display: block;
  margin: 18px auto 0;
  width: clamp(90px, 12vw, 140px);
  height: 6px;
  border-top: 2.5px solid var(--gilt);
  border-bottom: 1px solid var(--gilt);
  opacity: 0.85;
}
/* Centred H1s get centred rule; left-aligned H1s get left-anchored rule */
.page-title[style*="text-align:center"]::after,
[style*="text-align:center"] > h1.page-title::after {
  margin-left: auto; margin-right: auto;
}
section h2.section-title::after,
h2.section-title:not(.no-rule)::after {
  content: "";
  display: block;
  margin-top: 10px;
  width: 64px;
  height: 3px;
  background: linear-gradient(90deg, var(--oxblood), var(--gilt) 50%, var(--seagrass));
  border-radius: 1.5px;
}

/* Stepped Art Deco corner brackets on catalogue & rates cards */
.rates-callout,
.catalog-entry,
.invitation-card {
  position: relative;
}
.rates-callout::before,
.rates-callout::after,
.catalog-entry::before,
.catalog-entry::after {
  content: "";
  position: absolute;
  width: 22px;
  height: 22px;
  border: 2.5px solid var(--gilt);
  opacity: 0.55;
  pointer-events: none;
}
.rates-callout::before,
.catalog-entry::before {
  top: -2px; left: -2px;
  border-right: none; border-bottom: none;
}
.rates-callout::after,
.catalog-entry::after {
  bottom: -2px; right: -2px;
  border-left: none; border-top: none;
}

/* Subtle radiating sunburst behind page H1 (light + violet glow in dark) */
h1.page-title { position: relative; }
h1.page-title::before {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  width: clamp(280px, 30vw, 420px);
  height: clamp(280px, 30vw, 420px);
  background: radial-gradient(circle at center,
    rgba(194, 154, 58, 0.10) 0%,
    rgba(194, 154, 58, 0.04) 35%,
    transparent 70%);
  z-index: -1;
  pointer-events: none;
}
html[data-theme="dark"] h1.page-title::before {
  background: radial-gradient(circle at center,
    rgba(242, 210, 122, 0.16) 0%,
    rgba(126, 156, 217, 0.10) 40%,
    transparent 72%);
}

/* ----- 5.7 SERVICES PAGE — RATES MUST POP ----- */

/* Rates callout: stronger frame, layered paper, gilt corners (already added above) */
.rates-callout {
  background: linear-gradient(180deg,
    rgba(252, 250, 243, 0.6) 0%,
    rgba(246, 241, 228, 0.95) 100%) !important;
  box-shadow:
    0 1px 0 var(--gilt-soft),
    0 12px 32px rgba(22, 40, 74, 0.10),
    inset 0 0 0 1px rgba(194, 154, 58, 0.18) !important;
  border-color: var(--gilt) !important;
  padding: clamp(28px, 4vw, 42px) clamp(24px, 3.5vw, 40px) !important;
}
html[data-theme="dark"] .rates-callout {
  background: linear-gradient(180deg,
    rgba(53, 44, 98, 0.85) 0%,
    rgba(42, 35, 80, 0.95) 100%) !important;
  box-shadow:
    0 1px 0 var(--gilt-soft),
    0 16px 40px rgba(0, 0, 0, 0.35),
    inset 0 0 0 1px rgba(242, 210, 122, 0.28) !important;
  border-color: var(--gilt) !important;
}

/* Service name + rate — bold, larger, properly weighted */
.rates-callout li,
.rates-callout dt,
.rates-callout dd,
.rates-callout .rate,
.rates-callout .rate-row,
.rates-callout p,
.services-list li,
.rate-list li {
  font-size: 19px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  color: var(--ink) !important;
}

/* The price/rate itself — pop in oxblood, weight 800, slightly larger */
.rates-callout strong,
.rates-callout .price,
.rates-callout .rate-amount,
.rates-callout em strong,
.services-list strong,
.rate-list strong {
  color: var(--oxblood) !important;
  font-weight: 800 !important;
  font-size: 1.06em !important;
  letter-spacing: 0.005em !important;
  font-style: normal !important;
}
html[data-theme="dark"] .rates-callout strong,
html[data-theme="dark"] .rates-callout .price,
html[data-theme="dark"] .services-list strong,
html[data-theme="dark"] .rate-list strong {
  color: var(--oxblood-bright) !important;
}

/* Service-name label (left of price) — full ink, weight 700 */
.rates-callout dt,
.rates-callout .service-name,
.services-list .name {
  font-weight: 700 !important;
  color: var(--ink) !important;
  letter-spacing: 0.005em !important;
}

/* Eyebrow over the rates block — gilt, tracked, weight 800 */
.rates-callout .eyebrow {
  color: var(--gilt) !important;
  font-weight: 800 !important;
}
html[data-theme="dark"] .rates-callout .eyebrow {
  color: var(--gilt-bright) !important;
}

/* ----- 5.8 LINKS — more luminous, slightly thicker underlines ----- */
a {
  text-underline-offset: 3px;
  text-decoration-thickness: 1.5px;
}
a.gilt-link, .desc a, p a, li a {
  color: var(--oxblood) !important;
  border-bottom: 1.5px solid var(--gilt-soft);
  font-weight: 600 !important;
}
a.gilt-link:hover, .desc a:hover, p a:hover, li a:hover {
  color: var(--oxblood-deep) !important;
  border-bottom-color: var(--oxblood) !important;
}
html[data-theme="dark"] a.gilt-link,
html[data-theme="dark"] .desc a,
html[data-theme="dark"] p a,
html[data-theme="dark"] li a {
  color: var(--oxblood-bright) !important;
  border-bottom-color: var(--gilt-soft);
}

/* ----- 5.9 HEADER — keep the cobalt presence but lift in violet mode ----- */
html[data-theme="dark"] .site-header {
  background: linear-gradient(180deg,
    rgba(34, 28, 70, 0.97) 0%,
    rgba(58, 48, 110, 0.97) 100%) !important;
  box-shadow: 0 1px 0 var(--header-rule),
              0 8px 28px rgba(58, 48, 110, 0.42),
              inset 0 -1px 0 rgba(255,255,255,0.06) !important;
}

/* ----- 5.10 BUTTONS & STAMPS — thicker, more luminous ----- */
.stamp-btn, .btn, button[type="submit"] {
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  border-width: 2px !important;
}

/* ----- 5.11 CATALOGUE ENTRIES — gilt rules between, brighter titles ----- */
.catalog-entry + .catalog-entry,
.book-entry + .book-entry {
  border-top: 1.5px solid var(--gilt-soft) !important;
  margin-top: 36px !important;
  padding-top: 36px !important;
}
.catalog-entry .title, .book-entry .title {
  font-size: clamp(24px, 2.6vw, 30px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.005em !important;
}

/* ----- 5.12 SELECTION & FOCUS — gilt accents ----- */
::selection { background: var(--gilt-soft); color: var(--ink); }
html[data-theme="dark"] ::selection { background: var(--gilt-soft); color: var(--ink); }
:focus-visible { outline: 2.5px solid var(--gilt) !important; outline-offset: 3px; }


/* ============================================================
   v6 — REDO. Every item on the user's list.
   1. Wordmark on home must be luminous AND readable
   2. Consistent line-spacing everywhere
   3. Hide all roman-numeral chapter eyebrows + page numerals
   4. H1 visibly larger and bolder than H2 (already begun in v5; reinforce)
   5. Dark mode: unified violet-evening-sky paper on ALL pages
   6. Dark mode: lighter, more purple-violet (evening)
   7. Subtle Art Deco ornament reinforcement
   8. Font weight & readability lifted
   9. Masculine, vintage, exquisite
   ============================================================ */

/* 6.1 — REMOVE roman-numeral chapter eyebrows + page numerals (clutter) ----- */
.roman,
.eyebrow .roman,
.tagline .roman,
span.roman { display: none !important; }

/* If after removal the eyebrow starts with a leading " · " orphan, hide it */
.eyebrow::first-letter { /* no-op safeguard */ }

/* Hide page-numeral footers (e.g. "— VII —") entirely */
.page-numeral { display: none !important; }

/* Clean up "Vol. I · A Literary Gathering Room" → keep it: it's a periodical convention,
   not a chapter number. Leave as-is. The .roman span removals above already
   collapse the leading "VI ·" etc. tokens that READ as random. */

/* 6.2 — HOME WORDMARK: massive, readable, luminous --------- */
/* Light mode: deep navy + champagne-gold inner glow.  Not silver-on-white. */
html[data-theme="light"] .wordmark-display .line1,
html:not([data-theme="dark"]) .wordmark-display .line1 {
  background: linear-gradient(180deg,
    #1B2D52 0%,
    #2A4275 35%,
    #14233B 70%,
    #1B2D52 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #14233B !important;
  text-shadow:
    0 0 24px rgba(217, 199, 127, 0.28),
    0 2px 1px rgba(20, 35, 59, 0.18) !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,0.7)) !important;
  font-weight: 800 !important;
}
html[data-theme="light"] .wordmark-display .line2,
html:not([data-theme="dark"]) .wordmark-display .line2 {
  color: #7E1A28 !important;
  text-shadow:
    0 0 18px rgba(217, 199, 127, 0.22),
    0 2px 1px rgba(126, 26, 40, 0.18) !important;
  font-weight: 800 !important;
}

/* Dark mode: bright champagne wordmark on violet sky */
html[data-theme="dark"] .wordmark-display .line1 {
  background: linear-gradient(180deg,
    #FFF6DE 0%,
    #F2D27A 35%,
    #E0BC58 70%,
    #FFE89A 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #F2D27A !important;
  text-shadow: 0 0 32px rgba(242, 210, 122, 0.35) !important;
  font-weight: 800 !important;
}
html[data-theme="dark"] .wordmark-display .line2 {
  color: #FF8A92 !important;
  text-shadow: 0 0 28px rgba(255, 138, 146, 0.28) !important;
  font-weight: 800 !important;
}

/* Wordmark rule between SILVER CURRENT and PRESS — thicker, gilt */
.wordmark-display .rule {
  background: linear-gradient(90deg,
    transparent 0%,
    var(--gilt) 18%,
    var(--gilt-bright) 50%,
    var(--gilt) 82%,
    transparent 100%) !important;
  height: 3px !important;
  width: clamp(180px, 22vw, 280px) !important;
  margin: 18px auto !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.55) !important;
}

/* 6.3 — CONSISTENT LINE-SPACING ACROSS THE SITE ------------ */
body, p, li, dd, dt, blockquote, .desc, .excerpt, .byline, .quote, .attr {
  line-height: 1.72 !important;
}
h1.page-title, h1.wordmark-display { line-height: 1.04 !important; margin: 0 0 28px !important; }
h2, h2.section-title             { line-height: 1.2 !important;  margin: 32px 0 18px !important; }
h3                               { line-height: 1.3 !important;  margin: 24px 0 12px !important; }
p, ul, ol                        { margin: 0 0 18px !important; }
li                               { margin: 0 0 8px !important; }
.eyebrow                         { line-height: 1.4 !important; margin: 0 0 14px !important; }
.attribution, .byline            { line-height: 1.4 !important; margin: 4px 0 18px !important; }

/* 6.4 — H1 vs H2 hierarchy (reinforce the v5 step) --------- */
h1.page-title {
  font-size: clamp(54px, 7.2vw, 86px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 0.35em !important;
}
h2, h2.section-title {
  font-size: clamp(24px, 2.8vw, 30px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.003em !important;
}
.page-subtitle, .invitation-line, .page-title + p, .page-title + .lede {
  font-size: clamp(17px, 1.7vw, 21px) !important;
  font-weight: 500 !important;
  font-style: italic;
  color: var(--ink-soft) !important;
  margin-top: -4px !important;
}

/* 6.5 — DARK MODE: VIOLET EVENING SKY, UNIFIED ON EVERY PAGE - */
html[data-theme="dark"] {
  /* Lift the indigo into a true purplish-violet evening sky */
  --paper: #312756 !important;            /* lighter, more violet */
  --paper-alt: #3C326A !important;
  --paper-deep: #221B42 !important;

  --ink: #FFF6DE !important;
  --ink-soft: #EEDFB4 !important;
  --muted: #BDB18B !important;

  --silver: #ECEEF4 !important;
  --silver-bright: #FFFFFF !important;
  --silver-dark: #B6BCC8 !important;

  --gilt: #F2D27A !important;
  --gilt-bright: #FFE89A !important;
  --gilt-soft: rgba(242, 210, 122, 0.55) !important;

  --oxblood: #FF8A92 !important;
  --oxblood-deep: #E55A66 !important;
  --oxblood-bright: #FFA8AE !important;

  --navy: #A0B8E8 !important;
  --navy-bright: #BCCEF0 !important;
  --navy-deep: #312756 !important;

  --seagrass: #98EAC0 !important;
  --seagrass-deep: #7AD3A4 !important;

  --header-bg: rgba(40, 32, 82, 0.97) !important;
  --header-bg-stop: rgba(66, 54, 122, 0.97) !important;
  --header-rule: #F2D27A !important;
  --header-fg: #FFF6DE !important;

  --rule: var(--silver-dark);
}

/* CRITICAL — force the violet paper on EVERY container on EVERY page */
html[data-theme="dark"],
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .page,
html[data-theme="dark"] article.page,
html[data-theme="dark"] section,
html[data-theme="dark"] .frame,
html[data-theme="dark"] .invitation-card,
html[data-theme="dark"] .commonplace-teaser,
html[data-theme="dark"] .rates-callout,
html[data-theme="dark"] .currents-epigraph,
html[data-theme="dark"] .entry,
html[data-theme="dark"] .journal-entry,
html[data-theme="dark"] .catalog-entry,
html[data-theme="dark"] .book-entry {
  background-color: transparent !important;
}
html[data-theme="dark"] body {
  background:
    radial-gradient(1200px 800px at 12% -10%, rgba(160, 184, 232, 0.20), transparent 60%),
    radial-gradient(900px 700px at 92% 8%, rgba(242, 210, 122, 0.12), transparent 65%),
    radial-gradient(700px 500px at 50% 110%, rgba(255, 138, 146, 0.10), transparent 65%),
    #312756 !important;
  background-attachment: fixed !important;
}

/* DARK MODE — unify type colors across pages */
html[data-theme="dark"] body,
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .desc,
html[data-theme="dark"] .excerpt,
html[data-theme="dark"] .byline,
html[data-theme="dark"] .attribution,
html[data-theme="dark"] .author,
html[data-theme="dark"] .meta {
  color: var(--ink) !important;
}
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h1.page-title,
html[data-theme="dark"] h2.section-title {
  color: var(--ink) !important;
}
html[data-theme="dark"] .eyebrow {
  color: var(--gilt-bright) !important;
}
html[data-theme="dark"] .colophon,
html[data-theme="dark"] .printed,
html[data-theme="dark"] .meta {
  color: var(--ink-soft) !important;
}

/* 6.6 — ART DECO ORNAMENT REINFORCEMENT -------------------- */

/* Gilt double-rule beneath every page H1 (already in v5; thicken) */
h1.page-title::after {
  margin-top: 22px !important;
  width: clamp(110px, 14vw, 180px) !important;
  height: 8px !important;
  border-top: 3px solid var(--gilt) !important;
  border-bottom: 1.5px solid var(--gilt) !important;
  opacity: 0.95 !important;
}

/* Stronger section-title rule */
h2.section-title::after {
  margin-top: 12px !important;
  width: 80px !important;
  height: 4px !important;
  border-radius: 2px !important;
  background: linear-gradient(90deg, var(--oxblood) 0%, var(--gilt) 50%, var(--seagrass) 100%) !important;
}

/* Corner brackets on cards — slightly bigger, gilt */
.rates-callout::before,
.rates-callout::after,
.catalog-entry::before,
.catalog-entry::after {
  width: 26px !important;
  height: 26px !important;
  border-width: 3px !important;
  opacity: 0.6 !important;
}

/* 6.7 — HOME FRONTISPIECE — give the wordmark room and luminosity */
.frontispiece {
  padding-top: clamp(80px, 12vh, 140px) !important;
  padding-bottom: clamp(48px, 8vh, 80px) !important;
}
.wordmark-display {
  font-size: clamp(72px, 11vw, 132px) !important;
  letter-spacing: 0.005em !important;
}
/* Stronger luminous halo behind the wordmark */
.frontispiece { position: relative; }
.frontispiece::before {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  width: clamp(520px, 60vw, 820px);
  height: clamp(380px, 44vw, 580px);
  background: radial-gradient(ellipse at center,
    rgba(217, 199, 127, 0.18) 0%,
    rgba(217, 199, 127, 0.08) 35%,
    transparent 70%);
  z-index: 0;
  pointer-events: none;
  filter: blur(2px);
}
html[data-theme="dark"] .frontispiece::before {
  background: radial-gradient(ellipse at center,
    rgba(242, 210, 122, 0.22) 0%,
    rgba(160, 184, 232, 0.14) 40%,
    transparent 72%);
}

/* 6.8 — SERVICES RATES (kept from v5; sharpen) ------------- */
.rates-callout strong,
.rates-callout .price,
.rates-callout .rate-amount {
  font-size: 1.08em !important;
  font-weight: 800 !important;
  letter-spacing: 0.005em !important;
}

/* 6.9 — REMOVE THE TAGLINE LEADING NUMERAL ARTIFACT -------- */
.frontispiece .tagline {
  letter-spacing: 0.34em !important;
  font-weight: 600 !important;
}

/* 6.10 — FOOTER on dark mode — match violet, keep gilt links - */
html[data-theme="dark"] .site-footer { background: transparent !important; }
html[data-theme="dark"] .site-footer .colophon { color: var(--ink) !important; }
html[data-theme="dark"] .site-footer a {
  color: var(--gilt-bright) !important;
  border-bottom-color: var(--gilt-soft) !important;
}


/* ============================================================
   v7 — DEEPER GOLD · RICHER RED · LIGHTER UNIFIED VIOLET (DARK)
   Goals:
     A. All gold (gilt) deeper, thicker, shinier with metallic gradient
     B. All red fonts (oxblood) enriched — deeper, more luminous
     C. Dark mode background even LIGHTER, perfectly unified
   ============================================================ */

/* ---------- A.  GOLD: deeper, thicker, shinier ------------- */

/* Redefine gilt tokens in BOTH modes — richer, more saturated */
html, html[data-theme="light"], html:not([data-theme="dark"]) {
  --gilt:        #B8870E !important;   /* deeper antique gold */
  --gilt-bright: #E9C45C !important;   /* glint */
  --gilt-dark:   #7B5B0B !important;   /* shadow side */
  --gilt-soft:   rgba(184, 135, 14, 0.45) !important;
}
html[data-theme="dark"] {
  --gilt:        #E4BC4A !important;   /* deeper luminous gold on violet */
  --gilt-bright: #FFE48E !important;   /* sheen */
  --gilt-dark:   #A37F1F !important;   /* shadow */
  --gilt-soft:   rgba(228, 188, 74, 0.55) !important;
}

/* Reusable metallic-gold gradient — for rules, accents, text */
:root { --gilt-metal:
  linear-gradient(180deg,
    var(--gilt-bright) 0%,
    var(--gilt) 35%,
    var(--gilt-dark) 65%,
    var(--gilt) 100%); }

/* Wordmark rule between SILVER CURRENT and PRESS — thicker, metallic */
.wordmark-display .rule,
.wordmark-small .rule {
  background: var(--gilt-metal) !important;
  height: 4px !important;
  box-shadow:
    0 1px 0 rgba(255, 235, 170, 0.55),
    0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}

/* Page-title double rule — thicker, shinier */
h1.page-title::after {
  height: 12px !important;
  background:
    linear-gradient(180deg, transparent 0%, transparent 32%,
                    var(--gilt-bright) 32%, var(--gilt) 50%, var(--gilt-dark) 60%,
                    transparent 60%, transparent 70%,
                    var(--gilt) 70%, var(--gilt) 78%,
                    transparent 78%) !important;
  border: none !important;
  width: clamp(140px, 16vw, 220px) !important;
  margin-top: 22px !important;
  filter: drop-shadow(0 1px 0 rgba(255, 240, 190, 0.5))
          drop-shadow(0 2px 3px rgba(120, 90, 0, 0.25)) !important;
  opacity: 1 !important;
}

/* Section-title rule — keep tricolor but make the gilt section pop */
h2.section-title::after {
  height: 5px !important;
  background: linear-gradient(90deg,
    var(--oxblood-deep) 0%,
    var(--oxblood) 18%,
    var(--gilt-dark) 32%,
    var(--gilt) 42%,
    var(--gilt-bright) 50%,
    var(--gilt) 58%,
    var(--gilt-dark) 68%,
    var(--seagrass-deep) 82%,
    var(--seagrass) 100%) !important;
  filter: drop-shadow(0 1px 0 rgba(255, 240, 190, 0.4));
}

/* Eyebrows in gilt — slightly brighter, weight up */
.eyebrow {
  color: var(--gilt-dark) !important;
  font-weight: 600 !important;
  letter-spacing: 0.24em !important;
}
html[data-theme="dark"] .eyebrow {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 14px rgba(228, 188, 74, 0.30);
}

/* Stamp / gilt-link / pill — deeper gold border */
.stamp-btn, .gilt-link, .read-link {
  color: var(--gilt-dark) !important;
  border-color: var(--gilt) !important;
}
.stamp-btn:hover, .gilt-link:hover, .read-link:hover {
  color: var(--gilt) !important;
  border-color: var(--gilt-bright) !important;
  box-shadow: 0 0 14px rgba(184, 135, 14, 0.25);
}
html[data-theme="dark"] .stamp-btn,
html[data-theme="dark"] .gilt-link,
html[data-theme="dark"] .read-link {
  color: var(--gilt-bright) !important;
  border-color: var(--gilt) !important;
  text-shadow: 0 0 10px rgba(255, 228, 142, 0.20);
}

/* Header gilt rule (under nav) — thicker */
.site-header { border-bottom-width: 2px !important; }

/* Corner brackets on cards — deeper gold */
.rates-callout::before,
.rates-callout::after,
.catalog-entry::before,
.catalog-entry::after {
  border-color: var(--gilt) !important;
  opacity: 0.85 !important;
  filter: drop-shadow(0 1px 0 rgba(255, 240, 190, 0.4));
}

/* Frame inner gold accent (was silver) — add a thin gold inset */
.frame::after {
  border-color: var(--gilt) !important;
  opacity: 0.55 !important;
}


/* ---------- B.  RED FONTS: deeper, richer oxblood ---------- */

/* Light mode — deeper, more saturated oxblood */
html, html[data-theme="light"], html:not([data-theme="dark"]) {
  --oxblood:        #7A1320 !important;  /* deeper claret */
  --oxblood-deep:   #5A0D17 !important;
  --oxblood-bright: #A02436 !important;
}
/* Dark mode — luminous claret-rose, readable on violet */
html[data-theme="dark"] {
  --oxblood:        #FF7A85 !important;
  --oxblood-deep:   #E55663 !important;
  --oxblood-bright: #FFA1AB !important;
}

/* Wordmark line2 ("PRESS") — deeper, glowing */
html[data-theme="light"] .wordmark-display .line2,
html:not([data-theme="dark"]) .wordmark-display .line2 {
  color: #6E0F1B !important;
  background: linear-gradient(180deg,
    #8E1A2A 0%,
    #7A1320 38%,
    #4E0911 70%,
    #7A1320 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow:
    0 0 18px rgba(184, 135, 14, 0.18),
    0 1px 0 rgba(0, 0, 0, 0.12) !important;
  font-weight: 800 !important;
}
html[data-theme="dark"] .wordmark-display .line2 {
  color: #FF7A85 !important;
  background: linear-gradient(180deg,
    #FFB1B8 0%,
    #FF7A85 40%,
    #E55663 75%,
    #FF7A85 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow:
    0 0 24px rgba(255, 122, 133, 0.32) !important;
  font-weight: 800 !important;
}

/* Small wordmark (header) — line2 in deep claret */
html[data-theme="light"] .site-header .wordmark-small .line2,
html:not([data-theme="dark"]) .site-header .wordmark-small .line2 {
  color: #6E0F1B !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.10);
}
html[data-theme="dark"] .site-header .wordmark-small .line2 {
  color: #FFC7CC !important;
  text-shadow: 0 0 12px rgba(255,160,170,0.25);
}

/* Any element that uses oxblood as color — bump weight + tiny glow */
.oxblood, .text-oxblood, .accent-red, .dropcap,
.tagline strong, .desc strong {
  color: var(--oxblood) !important;
}
.dropcap {
  font-weight: 800 !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.08);
}
html[data-theme="dark"] .dropcap {
  color: var(--oxblood) !important;
  text-shadow: 0 0 14px rgba(255, 122, 133, 0.30);
}

/* Body links — oxblood, deeper */
.page a:not(.gilt-link):not(.wordmark-small):not(.nav-toggle):not(.theme-toggle),
.legal-prose a {
  color: var(--oxblood) !important;
  border-bottom-color: var(--gilt) !important;   /* gilt underline */
}
html[data-theme="dark"] .page a:not(.gilt-link):not(.wordmark-small):not(.nav-toggle):not(.theme-toggle),
html[data-theme="dark"] .legal-prose a {
  color: var(--oxblood-bright) !important;
  border-bottom-color: var(--gilt) !important;
}


/* ---------- C.  DARK MODE: lighter, unified evening sky ---- */

/* Lift the paper to a brighter, airier violet */
html[data-theme="dark"] {
  --paper:       #4A3E7A !important;   /* lighter, airier evening sky */
  --paper-alt:   #56497E !important;
  --paper-deep:  #2F265B !important;

  --header-bg:      rgba(58, 48, 110, 0.96) !important;
  --header-bg-stop: rgba(82, 70, 142, 0.96) !important;
}

/* HARD UNIFY: every container transparent so body shows through.
   Use the highest-specificity sledgehammer to defeat earlier rules. */
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .frame,
html[data-theme="dark"] .page,
html[data-theme="dark"] article.page,
html[data-theme="dark"] section,
html[data-theme="dark"] .mission,
html[data-theme="dark"] .invitation-card,
html[data-theme="dark"] .commonplace-teaser,
html[data-theme="dark"] .rates-callout,
html[data-theme="dark"] .currents-epigraph,
html[data-theme="dark"] .entry,
html[data-theme="dark"] .journal-entry,
html[data-theme="dark"] .catalog-entry,
html[data-theme="dark"] .book-entry,
html[data-theme="dark"] .page-shell,
html[data-theme="dark"] .container,
html[data-theme="dark"] .wrap,
html[data-theme="dark"] .legal-prose,
html[data-theme="dark"] .stack,
html[data-theme="dark"] .grid,
html[data-theme="dark"] .row,
html[data-theme="dark"] .col,
html[data-theme="dark"] .card,
html[data-theme="dark"] .panel {
  background: transparent !important;
  background-color: transparent !important;
}

/* The single source of background color: html + body. */
html[data-theme="dark"] {
  background: #4A3E7A !important;
}
html[data-theme="dark"] body {
  background:
    radial-gradient(1300px 850px at 12% -10%, rgba(190, 210, 248, 0.18), transparent 60%),
    radial-gradient(1000px 700px at 92% 8%,   rgba(255, 228, 142, 0.10), transparent 65%),
    radial-gradient(800px 600px at 50% 110%,  rgba(255, 138, 146, 0.10), transparent 65%),
    #4A3E7A !important;
  background-attachment: fixed !important;
}

/* Mission diamond chips — paper-tinted, not opaque */
html[data-theme="dark"] .mission::before,
html[data-theme="dark"] .mission::after {
  background: rgba(74, 62, 122, 0.95) !important;
  border-color: var(--gilt-dark) !important;
}

/* Diamond/ornament chips on the catalogue corner brackets — already gold via above */

/* Footer matches the sky */
html[data-theme="dark"] .site-footer {
  background: transparent !important;
  border-top: 1px solid var(--gilt-dark) !important;
}

/* Make sure the leather-grain texture in dark mode is gentle */
html[data-theme="dark"] body::before { opacity: 0.10 !important; }


/* ---------- D.  SAFETY: clean light-mode page background --- */
/* Light mode body keeps cream; reinforce since v6/v7 didn't redeclare it */
html[data-theme="light"] body,
html:not([data-theme="dark"]) body {
  background-color: var(--paper) !important;
}


/* ============================================================
   v8 — LUMINOUS POLISH
   Goals (verbatim from user):
     • Light mode background → SOFT light-blue/violet evening sky
       (lighter than dark catalogue, but the same family)
     • Gold + red: shinier AND darker
     • Red ornaments: bolder and thicker
     • All chevrons / lines / ornamentation: pop
     • Services & rates: thicker, bolder
     • Catalogue book descriptions: smaller relative to headings
     • Currents "A Literary Gathering Room": bolder + more luminous
     • Footer fonts (home + all pages): bolder + brighter
     • Wavy lines, straight lines, sunbursts: shinier, deeper, bolder
   ============================================================ */

/* ---------- LIGHT MODE: soft light-blue/violet evening sky ---- */

html, html[data-theme="light"], html:not([data-theme="dark"]) {
  /* Lighter than the dark catalogue's #4A3E7A, in the same blue-violet
     family — a soft periwinkle-ivory dawn. */
  --paper:       #E6E9F4 !important;   /* light blue-violet paper */
  --paper-alt:   #EEF0F8 !important;
  --paper-deep:  #C8CEE3 !important;
}
html[data-theme="light"] body,
html:not([data-theme="dark"]) body {
  background:
    radial-gradient(1300px 850px at 12% -10%, rgba(180, 196, 235, 0.55), transparent 60%),
    radial-gradient(1000px 700px at 92%   8%, rgba(232, 222, 184, 0.32), transparent 65%),
    radial-gradient(800px  600px at 50% 110%, rgba(212, 196, 224, 0.40), transparent 65%),
    #E6E9F4 !important;
  background-attachment: fixed !important;
}

/* Texture in light mode — gentler so the periwinkle reads cleanly */
html[data-theme="light"] body::before,
html:not([data-theme="dark"]) body::before { opacity: 0.10 !important; }

/* Light-mode header — keep the deep navy but blend into the periwinkle */
html[data-theme="light"] .site-header,
html:not([data-theme="dark"]) .site-header {
  background: linear-gradient(180deg, #1B2D52 0%, #243966 100%) !important;
  border-bottom: 2px solid #C2A24B !important;  /* darker gilt */
}


/* ---------- GOLD: shinier AND darker -------------------------- */

html, html[data-theme="light"], html:not([data-theme="dark"]) {
  --gilt:        #9C6F0A !important;   /* darker antique gold */
  --gilt-bright: #E8BE4B !important;   /* glint */
  --gilt-dark:   #5C400A !important;   /* deep shadow */
  --gilt-soft:   rgba(156, 111, 10, 0.55) !important;
}
html[data-theme="dark"] {
  --gilt:        #D9B23A !important;   /* darker, richer gold on violet */
  --gilt-bright: #FFE082 !important;
  --gilt-dark:   #8C6A18 !important;
  --gilt-soft:   rgba(217, 178, 58, 0.60) !important;
}

/* Even shinier metallic — five-stop gradient */
:root { --gilt-metal:
  linear-gradient(180deg,
    var(--gilt-bright) 0%,
    var(--gilt) 30%,
    var(--gilt-dark) 55%,
    var(--gilt) 78%,
    var(--gilt-bright) 100%) !important; }

/* Wordmark rule + page-title rule — thicker still */
.wordmark-display .rule,
.wordmark-small .rule {
  height: 5px !important;
}
h1.page-title::after {
  height: 14px !important;
  width: clamp(160px, 18vw, 240px) !important;
  background:
    linear-gradient(180deg, transparent 0%, transparent 28%,
                    var(--gilt-bright) 28%, var(--gilt) 42%, var(--gilt-dark) 58%, var(--gilt) 72%,
                    transparent 72%, transparent 80%,
                    var(--gilt) 80%, var(--gilt-dark) 90%,
                    transparent 90%) !important;
  filter: drop-shadow(0 0 6px rgba(255, 220, 140, 0.45))
          drop-shadow(0 2px 3px rgba(80, 55, 0, 0.40)) !important;
}


/* ---------- RED: shinier AND darker --------------------------- */

html, html[data-theme="light"], html:not([data-theme="dark"]) {
  --oxblood:        #5A0E1A !important;  /* deeper claret */
  --oxblood-deep:   #3E080F !important;
  --oxblood-bright: #8A1A2A !important;
}
html[data-theme="dark"] {
  --oxblood:        #FF6E7A !important;
  --oxblood-deep:   #D1454F !important;
  --oxblood-bright: #FFA0AB !important;
}

/* PRESS wordmark — deeper, glossier */
html[data-theme="light"] .wordmark-display .line2,
html:not([data-theme="dark"]) .wordmark-display .line2 {
  background: linear-gradient(180deg,
    #8A1A2A 0%,
    #5A0E1A 38%,
    #2E060C 65%,
    #5A0E1A 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow:
    0 0 22px rgba(156, 111, 10, 0.22),
    0 1px 0 rgba(0, 0, 0, 0.18) !important;
  font-weight: 800 !important;
}
html[data-theme="dark"] .wordmark-display .line2 {
  background: linear-gradient(180deg,
    #FFA0AB 0%,
    #FF6E7A 40%,
    #D1454F 75%,
    #FF6E7A 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: 0 0 28px rgba(255, 110, 122, 0.40) !important;
  font-weight: 800 !important;
}

/* Dropcaps — shinier and bolder */
.dropcap, .drop-cap, .lettrine, p.drop-cap::first-letter {
  font-weight: 900 !important;
}
html[data-theme="light"] .dropcap,
html[data-theme="light"] .drop-cap::first-letter {
  color: #5A0E1A !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.10),
               0 0 18px rgba(156, 111, 10, 0.22) !important;
}


/* ---------- ORNAMENTS: bolder, thicker, shinier --------------- */

/* Sunburst — pops with thicker stroke + dual color (oxblood + gilt) */
.ornament-sunburst {
  stroke: var(--oxblood) !important;
  stroke-width: 1.6 !important;
  filter:
    drop-shadow(0 0 6px rgba(156, 111, 10, 0.40))
    drop-shadow(0 0 12px rgba(90, 14, 26, 0.20)) !important;
  width: clamp(72px, 8vw, 96px) !important;
  height: auto !important;
}
html[data-theme="dark"] .ornament-sunburst {
  stroke: var(--oxblood) !important;
  filter:
    drop-shadow(0 0 10px rgba(255, 110, 122, 0.45))
    drop-shadow(0 0 18px rgba(217, 178, 58, 0.25)) !important;
}

/* Wavy lines — thicker + glossy gilt */
.wave, svg.wave, .invitation-card svg.wave, .wave-divider {
  stroke: var(--oxblood) !important;
  stroke-width: 2 !important;
  filter:
    drop-shadow(0 0 5px rgba(156, 111, 10, 0.35))
    drop-shadow(0 1px 0 rgba(255, 240, 190, 0.40)) !important;
}
html[data-theme="dark"] .wave,
html[data-theme="dark"] svg.wave,
html[data-theme="dark"] .wave-divider {
  stroke: var(--gilt-bright) !important;
  stroke-width: 2 !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 224, 130, 0.45))
    drop-shadow(0 0 14px rgba(255, 110, 122, 0.20)) !important;
}

/* Chevrons (both .chevron and .chevron-divider) — thicker oxblood */
.chevron, .chevron-divider, svg.chevron, svg.chevron-divider {
  stroke: var(--oxblood) !important;
  stroke-width: 2 !important;
  filter:
    drop-shadow(0 0 5px rgba(156, 111, 10, 0.35))
    drop-shadow(0 1px 0 rgba(255, 240, 190, 0.35)) !important;
}
html[data-theme="dark"] .chevron,
html[data-theme="dark"] .chevron-divider {
  stroke: var(--oxblood) !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 110, 122, 0.50))
    drop-shadow(0 0 12px rgba(217, 178, 58, 0.25)) !important;
}

/* Columns (the slim Deco pilasters flanking the wordmark) — gilt */
svg.column, .column.left, .column.right,
.mission-side-column {
  stroke: var(--gilt-dark) !important;
  stroke-width: 1.4 !important;
  filter:
    drop-shadow(0 0 4px rgba(156, 111, 10, 0.30))
    drop-shadow(0 1px 0 rgba(255, 240, 190, 0.35)) !important;
  opacity: 0.95 !important;
}
html[data-theme="dark"] svg.column,
html[data-theme="dark"] .mission-side-column {
  stroke: var(--gilt) !important;
  filter:
    drop-shadow(0 0 6px rgba(217, 178, 58, 0.40)) !important;
}

/* Corner glyphs — gilt + drop shadow */
.corner {
  color: var(--gilt) !important;
  filter:
    drop-shadow(0 0 4px rgba(156, 111, 10, 0.35))
    drop-shadow(0 1px 0 rgba(255, 240, 190, 0.40)) !important;
  opacity: 1 !important;
}
html[data-theme="dark"] .corner {
  color: var(--gilt-bright) !important;
}

/* Tricolor rule under invitation-line: thicker */
.invitation-line + .tricolor,
.tricolor-rule,
hr.tricolor {
  height: 4px !important;
  border: none !important;
  background: linear-gradient(90deg,
    var(--oxblood-deep) 0%,
    var(--oxblood) 18%,
    var(--gilt-dark) 32%,
    var(--gilt) 50%,
    var(--gilt-bright) 60%,
    var(--gilt) 70%,
    var(--seagrass-deep) 88%,
    var(--seagrass) 100%) !important;
  filter: drop-shadow(0 0 4px rgba(156, 111, 10, 0.35)) !important;
}

/* Universal: any short hr inside .page gets the gilt-metal treatment */
.page hr:not(.tricolor-rule) {
  border: none !important;
  height: 2px !important;
  background: var(--gilt-metal) !important;
  filter: drop-shadow(0 1px 0 rgba(255, 240, 190, 0.4)) !important;
  opacity: 0.85 !important;
}


/* ---------- SERVICES & RATES: thicker, bolder ----------------- */

.rates-callout, .rates-callout *,
.rates-table, .rates-table *,
.rate-row, .rate-row * {
  font-weight: 600 !important;
}
.rates-callout strong,
.rates-callout .price,
.rates-callout .rate-amount,
.rate-row .price,
.rate-row .amount,
.rate-row dt,
.rates-table th,
.rates-table .price {
  font-weight: 800 !important;
  font-size: 1.10em !important;
  letter-spacing: 0.005em !important;
  color: var(--oxblood) !important;
}
html[data-theme="dark"] .rates-callout strong,
html[data-theme="dark"] .rates-callout .price,
html[data-theme="dark"] .rate-row .price,
html[data-theme="dark"] .rate-row .amount {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 8px rgba(255, 224, 130, 0.30);
}
.rates-callout h2, .rates-callout h3,
.rates-table caption {
  font-weight: 800 !important;
}
/* The service-name column reads heavier */
.rate-row dt,
.rate-row .service,
.rates-table td:first-child {
  font-weight: 700 !important;
  font-size: 1.04em !important;
}


/* ---------- CATALOGUE: shrink book descriptions --------------- */

.catalog-entry .desc,
.catalog-entry p.desc,
.book-entry .desc,
.book-entry p.desc {
  font-size: 16px !important;
  line-height: 1.62 !important;
  font-weight: 400 !important;
  color: var(--ink-soft) !important;
  max-width: 56ch !important;
}
html[data-theme="dark"] .catalog-entry .desc,
html[data-theme="dark"] .book-entry .desc {
  color: var(--ink-soft) !important;
}

/* Book titles in catalogue — confident, larger than desc */
.catalog-entry h3,
.book-entry h3,
.catalog-entry .book-title {
  font-size: clamp(22px, 2.4vw, 28px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.18 !important;
  margin: 0 0 6px !important;
}
.catalog-entry .meta,
.book-entry .meta {
  font-size: 12.5px !important;
  letter-spacing: 0.18em !important;
  font-weight: 600 !important;
  color: var(--gilt-dark) !important;
  text-transform: uppercase;
}
html[data-theme="dark"] .catalog-entry .meta,
html[data-theme="dark"] .book-entry .meta {
  color: var(--gilt-bright) !important;
}


/* ---------- CURRENTS eyebrow: bolder, more luminous ----------- */

.eyebrow, .currents-epigraph .eyebrow,
p.eyebrow {
  font-weight: 700 !important;
  letter-spacing: 0.26em !important;
  font-size: 13px !important;
}
html[data-theme="light"] .eyebrow,
html:not([data-theme="dark"]) .eyebrow {
  color: var(--gilt-dark) !important;
  text-shadow: 0 1px 0 rgba(255, 240, 200, 0.50);
}
html[data-theme="dark"] .eyebrow {
  color: var(--gilt-bright) !important;
  text-shadow:
    0 0 12px rgba(255, 224, 130, 0.45),
    0 0 22px rgba(217, 178, 58, 0.20) !important;
}


/* ---------- FOOTER (home + all pages): bolder, brighter ------- */

.site-footer,
.site-footer .colophon,
.site-footer p,
.tagline,
.frontispiece .tagline,
.page-footer,
.colophon {
  font-weight: 700 !important;
  letter-spacing: 0.30em !important;
}
html[data-theme="light"] .tagline,
html:not([data-theme="dark"]) .tagline,
html[data-theme="light"] .site-footer .colophon,
html:not([data-theme="dark"]) .site-footer .colophon,
html[data-theme="light"] .colophon,
html:not([data-theme="dark"]) .colophon {
  color: #1B2D52 !important;          /* deep navy, bright on periwinkle */
  text-shadow: 0 1px 0 rgba(255,255,255,0.55);
}
html[data-theme="dark"] .tagline,
html[data-theme="dark"] .site-footer .colophon,
html[data-theme="dark"] .colophon {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 14px rgba(255, 224, 130, 0.35);
}

/* Footer separators ("·") pick up gilt */
.site-footer .sep, .site-footer .dot { color: var(--gilt) !important; }


/* ---------- FRAME & MAIN TYPE: slight overall darken in light - */

/* Light-mode body type: deeper ink so it reads on periwinkle paper */
html[data-theme="light"] body,
html:not([data-theme="dark"]) body {
  color: #0E1A36 !important;          /* near-midnight ink */
}
html[data-theme="light"] p,
html:not([data-theme="dark"]) p,
html[data-theme="light"] li,
html:not([data-theme="dark"]) li,
html[data-theme="light"] .desc,
html:not([data-theme="dark"]) .desc {
  color: #1A2548 !important;
}
html[data-theme="light"] h1,
html:not([data-theme="dark"]) h1,
html[data-theme="light"] h2,
html:not([data-theme="dark"]) h2,
html[data-theme="light"] h3,
html:not([data-theme="dark"]) h3,
html[data-theme="light"] h1.page-title,
html:not([data-theme="dark"]) h1.page-title {
  color: #0B1633 !important;          /* deep midnight headings */
  text-shadow: 0 1px 0 rgba(255,255,255,0.40);
}

/* Frame rules: deeper gilt instead of silver in light mode */
html[data-theme="light"] .frame::before,
html:not([data-theme="dark"]) .frame::before {
  border-color: rgba(156, 111, 10, 0.55) !important;
  opacity: 0.85 !important;
}
html[data-theme="light"] .frame::after,
html:not([data-theme="dark"]) .frame::after {
  border-color: var(--gilt) !important;
  opacity: 1 !important;
}

/* SILVER CURRENT wordmark line1 in light mode — bring back navy gloss
   that reads on light periwinkle (the v6 override was tuned for cream) */
html[data-theme="light"] .wordmark-display .line1,
html:not([data-theme="dark"]) .wordmark-display .line1 {
  background: linear-gradient(180deg,
    #1B2D52 0%,
    #243966 35%,
    #0B1633 70%,
    #1B2D52 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow:
    0 0 22px rgba(217, 199, 127, 0.30),
    0 2px 1px rgba(11, 22, 51, 0.25) !important;
  font-weight: 800 !important;
}


/* ============================================================
   v8.1 — MASTHEAD: every header reads "SILVER CURRENT PRESS"
   New markup: <a class="wordmark-small wordmark-single">
                  <span class="full">SILVER CURRENT PRESS</span>
               </a>
   ============================================================ */

.wordmark-single {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
  line-height: 1 !important;
}
.wordmark-single .full {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  font-size: clamp(15px, 1.5vw, 18px) !important;
  letter-spacing: 0.30em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Light mode — deep navy, with a faint gilt halo */
html[data-theme="light"] .wordmark-single .full,
html:not([data-theme="dark"]) .wordmark-single .full {
  color: #F2EBDA !important;          /* cream on navy header */
  text-shadow:
    0 0 10px rgba(217, 199, 127, 0.30),
    0 1px 0 rgba(0,0,0,0.20) !important;
}
/* Dark mode — luminous gilt-ivory */
html[data-theme="dark"] .wordmark-single .full {
  color: #FFE9B6 !important;
  text-shadow:
    0 0 12px rgba(255, 224, 130, 0.40),
    0 0 22px rgba(217, 178, 58, 0.18) !important;
}

/* Hide any vestigial .line1/.rule/.line2 inside .wordmark-single (defensive) */
.wordmark-single .line1,
.wordmark-single .line2,
.wordmark-single .rule { display: none !important; }


/* ============================================================
   v8.2 — catalogue weight balance + footer typography
   Issues found in deployed v8:
     • Book descriptions still read as heavy as titles
     • Footer fonts dimmed (faded blue-violet) on light periwinkle paper
   Markup recap: .catalog-entry > .title (p) > .author > .desc > .meta
   ============================================================ */

/* CATALOGUE — correct selectors -------------------------------- */

/* Book TITLE row — italic serif, confidently large, weight 700 */
.catalog-entry .title,
.catalog-entry p.title,
.book-entry .title,
.book-entry p.title {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-weight: 700 !important;
  font-size: clamp(24px, 2.6vw, 30px) !important;
  letter-spacing: -0.005em !important;
  line-height: 1.18 !important;
  margin: 0 0 4px !important;
}
html[data-theme="light"] .catalog-entry .title,
html:not([data-theme="dark"]) .catalog-entry .title {
  color: #0B1633 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.40);
}
html[data-theme="dark"] .catalog-entry .title {
  color: #FFF6DE !important;
  text-shadow: 0 0 16px rgba(255, 246, 222, 0.18);
}

/* Author byline — small, gilt-dark, uppercase tracking */
.catalog-entry .author,
.book-entry .author {
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.20em !important;
  text-transform: uppercase !important;
  color: var(--gilt-dark) !important;
  margin: 8px 0 14px !important;
}
html[data-theme="dark"] .catalog-entry .author,
html[data-theme="dark"] .book-entry .author {
  color: var(--gilt-bright) !important;
}

/* Description — DEFINITIVELY lighter than the title.
   Override the universal "p { font-weight:500 !important }" rule. */
.catalog-entry .desc,
.catalog-entry p.desc,
.book-entry .desc,
.book-entry p.desc,
html[data-theme="light"] .catalog-entry .desc,
html[data-theme="light"] .catalog-entry p.desc,
html:not([data-theme="dark"]) .catalog-entry .desc,
html[data-theme="dark"] .catalog-entry .desc,
html[data-theme="dark"] .book-entry .desc {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;          /* down from 500 */
  font-style: normal !important;
  font-size: 15.5px !important;          /* small, calm */
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
  max-width: 60ch !important;
  margin: 0 0 14px !important;
}
html[data-theme="light"] .catalog-entry .desc,
html:not([data-theme="dark"]) .catalog-entry .desc {
  color: #2E3A5C !important;             /* deep ink-blue, calm */
}
html[data-theme="dark"] .catalog-entry .desc {
  color: rgba(255, 246, 222, 0.78) !important;
}

/* Meta line (format · status) — tiny tracking gilt */
.catalog-entry .meta,
.book-entry .meta {
  font-family: var(--font-sans) !important;
  font-weight: 600 !important;
  font-size: 11.5px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin: 0 0 10px !important;
}
html[data-theme="light"] .catalog-entry .meta,
html:not([data-theme="dark"]) .catalog-entry .meta {
  color: #5A4B14 !important;              /* darker gilt */
}
html[data-theme="dark"] .catalog-entry .meta {
  color: var(--gilt-bright) !important;
}
.catalog-entry .meta .dot,
.book-entry .meta .dot { margin: 0 8px; color: var(--gilt); }

/* Inquire link in book entries — gilt pill restraint */
.catalog-entry a.order,
.book-entry a.order {
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  font-size: 11.5px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--gilt) !important;
  padding-bottom: 2px !important;
  color: var(--oxblood) !important;
}
html[data-theme="dark"] .catalog-entry a.order {
  color: var(--gilt-bright) !important;
}


/* ---------- FOOTER TYPOGRAPHY ------------------------------ */
/* Bring the footer up: ink-dark in light mode, gilt in dark mode.
   The previous override pinned colophon color to var(--ink-soft);
   we need a confident, brighter footer voice. */

.site-footer {
  padding: 36px 0 48px !important;
  border-top: 2px solid var(--gilt) !important;
}
.site-footer .colophon,
.site-footer p,
.site-footer .footer-line,
.site-footer .footer-tagline {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
}
.site-footer .footer-meta,
.site-footer .legal-row,
.site-footer .domain {
  font-family: var(--font-sans) !important;
  font-style: normal !important;
  font-weight: 700 !important;
  letter-spacing: 0.20em !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
}

/* LIGHT MODE — deep navy ink, sharp on periwinkle */
html[data-theme="light"] .site-footer,
html:not([data-theme="dark"]) .site-footer {
  color: #0B1633 !important;
}
html[data-theme="light"] .site-footer .colophon,
html:not([data-theme="dark"]) .site-footer .colophon,
html[data-theme="light"] .site-footer p,
html:not([data-theme="dark"]) .site-footer p {
  color: #0B1633 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.55);
}
html[data-theme="light"] .site-footer .footer-meta,
html:not([data-theme="dark"]) .site-footer .footer-meta,
html[data-theme="light"] .site-footer .legal-row,
html:not([data-theme="dark"]) .site-footer .legal-row,
html[data-theme="light"] .site-footer .domain,
html:not([data-theme="dark"]) .site-footer .domain {
  color: #1B2D52 !important;
}
html[data-theme="light"] .site-footer a,
html:not([data-theme="dark"]) .site-footer a {
  color: #5A0E1A !important;             /* deep claret links */
  border-bottom-color: var(--gilt) !important;
  font-weight: 700 !important;
}

/* DARK MODE — luminous gilt on violet */
html[data-theme="dark"] .site-footer { color: var(--gilt-bright) !important; }
html[data-theme="dark"] .site-footer .colophon,
html[data-theme="dark"] .site-footer p {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 14px rgba(255, 224, 130, 0.35);
}
html[data-theme="dark"] .site-footer .footer-meta,
html[data-theme="dark"] .site-footer .legal-row,
html[data-theme="dark"] .site-footer .domain {
  color: #FFE9B6 !important;
}
html[data-theme="dark"] .site-footer a {
  color: var(--oxblood-bright) !important;
  border-bottom-color: var(--gilt) !important;
}

/* The "PRIVATE PREVIEW · NOT YET PUBLISHED" line — keep visible */
.site-footer .private-note,
.site-footer .preview-note,
.site-footer .privacy-note {
  font-weight: 800 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}
html[data-theme="light"] .site-footer .private-note,
html:not([data-theme="dark"]) .site-footer .private-note {
  color: #5A0E1A !important;
}
html[data-theme="dark"] .site-footer .private-note {
  color: var(--oxblood-bright) !important;
}

/* Footer wavy lines flanking the sunburst — deeper, shinier */
.site-footer svg, .site-footer .wave-mini {
  stroke-width: 1.8 !important;
}
html[data-theme="light"] .site-footer svg,
html:not([data-theme="dark"]) .site-footer svg {
  stroke: #1B2D52 !important;
  filter: drop-shadow(0 0 4px rgba(156, 111, 10, 0.30)) !important;
}
html[data-theme="dark"] .site-footer svg {
  stroke: var(--gilt-bright) !important;
  filter: drop-shadow(0 0 8px rgba(255, 224, 130, 0.40)) !important;
}

/* Home-page bottom tagline ("PUBLISHERS OF LITERARY FICTION · ...") */
.frontispiece .tagline {
  font-size: clamp(13px, 1.2vw, 15px) !important;
  font-weight: 800 !important;
  letter-spacing: 0.34em !important;
  text-transform: uppercase !important;
}
html[data-theme="light"] .frontispiece .tagline,
html:not([data-theme="dark"]) .frontispiece .tagline {
  color: #0B1633 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.55);
}
html[data-theme="dark"] .frontispiece .tagline {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 14px rgba(255, 224, 130, 0.40);
}

/* ============================================================
   v8.3 — TRADITIONAL TYPOGRAPHIC HIERARCHY
   Issues found in v8.2 audit (_qa_v83):
   • Journal "Forthcoming." set in 26px display italic reads
     heavier than the H1 above and competes with the section-title.
   • Body <p> across all pages is being forced to weight 600 by
     the universal rule at line 1998 (and 500 at line 1837),
     flattening the H1>H2>H3>body hierarchy.
   • .desc / .meta / .author / lede paragraphs read at the same
     visual weight as their headings.
   Fix: assert a strict hierarchy scale. Body prose returns to
   400-450 weight, smaller size, softer color, with generous
   leading. Eyebrows and section titles dominate.
   Headings outrank body in both size AND weight in every context.
   ============================================================ */

/* ---- 1. Body prose: lighten and shrink, override blanket bolds ---- */
body,
p,
li,
.desc,
.meta,
.author,
.lede,
.invitation-line,
.prose p,
main p,
section p,
article p {
  font-weight: 430 !important;
  letter-spacing: 0.005em !important;
  line-height: 1.72 !important;
}

/* Dark mode body — slightly heavier for legibility on violet but still light vs headings */
html[data-theme="dark"] body,
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .desc,
html[data-theme="dark"] .meta,
html[data-theme="dark"] .author,
html[data-theme="dark"] .lede,
html[data-theme="dark"] .invitation-line,
html[data-theme="dark"] main p,
html[data-theme="dark"] section p,
html[data-theme="dark"] article p {
  font-weight: 470 !important;
}

/* Body paragraph sizing — make smaller than any heading */
main p,
section p,
article p,
.prose p,
.lede,
.invitation-line {
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
}

/* Strong/emphasis inside body — modest bold, not heavy */
p strong, p b, li strong, li b,
.desc strong, .desc b {
  font-weight: 650 !important;
}

/* ---- 2. Eyebrows: small, bold-ish, luminous — clearly an annotation above ---- */
.eyebrow {
  font-size: clamp(11.5px, 0.8vw, 13px) !important;
  font-weight: 640 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

/* ---- 3. H1 page titles: dominate ---- */
h1.page-title,
.page-title {
  font-size: clamp(54px, 6.4vw, 86px) !important;
  font-weight: 760 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.012em !important;
}

/* ---- 4. H2 section titles ("Forthcoming", "In Preparation", etc.): clear second tier ---- */
h2.section-title,
.section-title {
  font-size: clamp(30px, 2.8vw, 40px) !important;
  font-weight: 720 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.005em !important;
}

/* Special-case Journal "Forthcoming." — currently inline 26px italic display.
   Promote to a proper section-title weight/size while preserving italic display feel. */
.journal-detail > p[style*="Forthcoming"],
main p[style*="font-style: italic"][style*="26px"] {
  font-size: clamp(34px, 3.2vw, 46px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  color: var(--oxblood) !important;
  margin: 18px 0 22px !important;
}

/* ---- 5. H3 / subsection ---- */
h3,
.subsection-title,
.catalog-entry .title,
.book-entry .title {
  font-weight: 720 !important;
}
h3 {
  font-size: clamp(20px, 1.6vw, 26px) !important;
  line-height: 1.2 !important;
}

/* ---- 6. Catalogue entries: tighten hierarchy ---- */
.catalog-entry .title,
.book-entry .title {
  font-size: clamp(24px, 2vw, 30px) !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
}
.catalog-entry .author,
.book-entry .author {
  font-size: clamp(14px, 1vw, 16px) !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: 0.04em !important;
}
.catalog-entry .desc,
.book-entry .desc {
  font-size: clamp(14.5px, 1vw, 16px) !important;
  font-weight: 420 !important;
  line-height: 1.7 !important;
}
html[data-theme="dark"] .catalog-entry .desc,
html[data-theme="dark"] .book-entry .desc {
  font-weight: 460 !important;
}
.catalog-entry .meta,
.book-entry .meta {
  font-size: clamp(12px, 0.85vw, 13.5px) !important;
  font-weight: 560 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* ---- 7. Services & rates: keep the deep oxblood emphasis but cap size sensibly ---- */
.services-section .service-name,
.rate-line .service,
.rate-line .price {
  font-weight: 740 !important;
}
.services-section p,
.services-description {
  font-weight: 440 !important;
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
}

/* ---- 8. Currents page — "a literary gathering room" eyebrow already handled by .eyebrow above ---- */

/* ---- 9. Lists (commonplace, etc.): body weight ---- */
.commonplace-list li,
ul.prose li,
ol.prose li {
  font-weight: 430 !important;
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
  line-height: 1.72 !important;
}
html[data-theme="dark"] .commonplace-list li,
html[data-theme="dark"] ul.prose li,
html[data-theme="dark"] ol.prose li {
  font-weight: 470 !important;
}
.commonplace-list li strong {
  font-weight: 680 !important;
}

/* ---- 10. Footer typography: keep distinct from body — small caps, medium weight, bright ---- */
footer p,
.site-footer p,
footer .footer-line,
.site-footer .footer-line {
  font-size: clamp(12px, 0.85vw, 13.5px) !important;
  font-weight: 560 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.7 !important;
}

/* ---- 11. Wordmark masthead — keep prominent but don't compete with page H1 ---- */
.wordmark-small .full {
  font-weight: 720 !important;
}

/* ---- 12. Home page invitation / lede ---- */
.invitation,
.invitation p,
.home-intro p,
.home-intro .lede {
  font-weight: 440 !important;
  font-size: clamp(16px, 1.15vw, 19px) !important;
  line-height: 1.7 !important;
}
html[data-theme="dark"] .invitation p,
html[data-theme="dark"] .home-intro p {
  font-weight: 480 !important;
}

/* ---- 13. Roman numerals on eyebrows — keep oxblood, modest weight (already 700, allow) ---- */

/* ---- 14. Override the legacy blanket 600 rule explicitly for safety ---- */
@media (min-width: 0px) {
  body p:not(.eyebrow):not(.section-title):not(.page-title):not(.title):not(.wordmark-small),
  body li:not(.eyebrow),
  body .desc,
  body .lede,
  body .invitation-line {
    font-weight: 430 !important;
  }
  html[data-theme="dark"] body p:not(.eyebrow):not(.section-title):not(.page-title):not(.title):not(.wordmark-small),
  html[data-theme="dark"] body li:not(.eyebrow),
  html[data-theme="dark"] body .desc,
  html[data-theme="dark"] body .lede,
  html[data-theme="dark"] body .invitation-line {
    font-weight: 470 !important;
  }
}

/* END v8.3 */

/* ============================================================
   v8.4 — DECISIVE HIERARCHY RESET (final)
   The site has accumulated several blanket "p { font-weight: 600 !important }"
   rules and inline font-weight/font-size attributes that flatten the
   visual ladder. v8.4 wins specificity with html.*-mode selectors and
   neutralizes inline overrides via attribute selectors.
   
   Strict ladder (light mode weights):
     H1 page-title .... 760  · 54-86px
     H2 section-title . 720  · 30-42px
     H3 ............... 700  · 21-26px
     eyebrow .......... 640  · 12-13px small caps
     body p / li / .desc 420 · 15.5-17px
     .meta / footer .... 540 · 12-13px small caps
     italic display .... 500  (Forthcoming. as section-mark, but kept distinct)
   ============================================================ */

/* 1. NUCLEAR override of blanket weight rules. Both themes.
   `html body` raises specificity so the inline style attribute is the
   only thing that can still win — which is why we also strip inline below. */
html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .commonplace-list li,
html body .commonplace-list li span,
html body main p,
html body section p,
html body article p,
html body .home-intro p,
html body .invitation p {
  font-weight: 420 !important;
  letter-spacing: 0.004em !important;
  line-height: 1.72 !important;
}
html[data-theme="dark"] body p,
html[data-theme="dark"] body li,
html[data-theme="dark"] body .desc,
html[data-theme="dark"] body .lede,
html[data-theme="dark"] body .invitation-line,
html[data-theme="dark"] body .commonplace-list li,
html[data-theme="dark"] body .commonplace-list li span,
html[data-theme="dark"] body main p,
html[data-theme="dark"] body section p,
html[data-theme="dark"] body article p,
html[data-theme="dark"] body .home-intro p,
html[data-theme="dark"] body .invitation p {
  font-weight: 460 !important;
}

/* 2. Body sizing — clearly smaller than any heading */
html body main p,
html body section p,
html body article p,
html body .lede,
html body .invitation p,
html body .invitation-line {
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
}

/* 3. Color: body softer than heading ink */
html body p,
html body .lede,
html body .desc,
html body .commonplace-list li {
  color: var(--ink-soft) !important;
}
html body p strong,
html body .lede strong,
html body .desc strong,
html body .commonplace-list li strong {
  color: var(--ink) !important;
  font-weight: 650 !important;
}

/* 4. Eyebrows — annotation tier */
html body .eyebrow {
  font-size: clamp(11.5px, 0.8vw, 13px) !important;
  font-weight: 640 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--oxblood) !important;
}
html[data-theme="dark"] body .eyebrow {
  color: var(--oxblood-bright) !important;
}

/* 5. H1 — dominate */
html body h1.page-title,
html body .page-title {
  font-size: clamp(54px, 6.4vw, 86px) !important;
  font-weight: 760 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.012em !important;
  color: var(--gilt) !important;
}
html[data-theme="dark"] body h1.page-title {
  color: var(--gilt-bright) !important;
}

/* 6. H2 section titles — second tier, always visibly bigger and bolder than the p below */
html body h2.section-title,
html body .section-title {
  font-size: clamp(30px, 2.8vw, 40px) !important;
  font-weight: 720 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.005em !important;
  color: var(--gilt) !important;
}
html[data-theme="dark"] body h2.section-title {
  color: var(--gilt-bright) !important;
}

/* 6b. Forthcoming-mark (Journal H2 styled in display italic but still dominant) */
html body h2.forthcoming-mark {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(38px, 3.4vw, 50px) !important;
  font-weight: 700 !important;
  color: var(--oxblood) !important;
  margin: 12px 0 22px !important;
  line-height: 1.05 !important;
}
html[data-theme="dark"] body h2.forthcoming-mark {
  color: var(--oxblood-bright) !important;
}

/* 6c. Quarterly-letter section-mark (Journal subscribe block) */
html body h2.quarterly-letter-mark {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(28px, 2.4vw, 36px) !important;
  font-weight: 700 !important;
  margin: 0 0 14px !important;
}

/* 6d. Index page "Forthcoming." tag — smaller, NOT a heading, but heavier than body */
html body .forthcoming-tag {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
  font-weight: 600 !important;
  color: var(--oxblood) !important;
  letter-spacing: 0.005em !important;
}
html[data-theme="dark"] body .forthcoming-tag {
  color: var(--oxblood-bright) !important;
}

/* 7. H3 / subsection titles */
html body h3,
html body .subsection-title {
  font-size: clamp(21px, 1.7vw, 26px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* 8. Catalogue entries — strict ladder: title > author > desc > meta */
html body .catalog-entry .title,
html body .book-entry .title {
  font-size: clamp(26px, 2.1vw, 32px) !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
  color: var(--gilt) !important;
}
html[data-theme="dark"] body .catalog-entry .title,
html[data-theme="dark"] body .book-entry .title {
  color: var(--gilt-bright) !important;
}
html body .catalog-entry .author,
html body .book-entry .author {
  font-size: clamp(14px, 1vw, 16px) !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: 0.04em !important;
  color: var(--ink-soft) !important;
}
html body .catalog-entry .author span,
html body .book-entry .author span {
  font-weight: 450 !important;
}
html body .catalog-entry .desc,
html body .book-entry .desc {
  font-size: clamp(14.5px, 1vw, 16px) !important;
  font-weight: 420 !important;
  line-height: 1.7 !important;
  color: var(--ink-soft) !important;
}
html[data-theme="dark"] body .catalog-entry .desc,
html[data-theme="dark"] body .book-entry .desc {
  font-weight: 460 !important;
}
html body .catalog-entry .meta,
html body .book-entry .meta {
  font-size: clamp(12px, 0.85vw, 13.5px) !important;
  font-weight: 560 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
}

/* 9. Services & rates — keep deep oxblood emphasis but balanced */
html body .services-section .service-name,
html body .rate-line .service,
html body .rate-line .price {
  font-weight: 720 !important;
  font-size: clamp(17px, 1.3vw, 20px) !important;
}
html body .services-section p,
html body .services-description,
html body .services-section .service-blurb {
  font-weight: 430 !important;
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
  line-height: 1.72 !important;
}

/* 10. Commonplace list (Journal "In Preparation") — body weight, bold lead */
html body .commonplace-list li {
  font-weight: 430 !important;
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
  line-height: 1.72 !important;
  color: var(--ink-soft) !important;
}
html[data-theme="dark"] body .commonplace-list li {
  font-weight: 470 !important;
}
html body .commonplace-list li strong {
  font-weight: 680 !important;
  color: var(--ink) !important;
}
html[data-theme="dark"] body .commonplace-list li strong {
  color: var(--gilt-bright) !important;
}

/* 11. Footer — small-caps annotation tier */
html body footer p,
html body .site-footer p,
html body footer .footer-line,
html body .site-footer .footer-line {
  font-size: clamp(12px, 0.85vw, 13.5px) !important;
  font-weight: 540 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.7 !important;
}

/* 12. Masthead — prominent but not heavier than page H1 */
html body .wordmark-small .full {
  font-weight: 720 !important;
}

/* 13. Home invitation lede */
html body .invitation,
html body .invitation p,
html body .home-intro p {
  font-weight: 440 !important;
  font-size: clamp(16px, 1.15vw, 19px) !important;
  line-height: 1.72 !important;
  color: var(--ink-soft) !important;
}

/* 14. Neutralize inline font-weight attributes on prose paragraphs */
html body p[style*="font-weight: 500"]:not(.section-title):not(.title):not(.eyebrow):not(.forthcoming-tag),
html body p[style*="font-weight:500"]:not(.section-title):not(.title):not(.eyebrow):not(.forthcoming-tag),
html body p[style*="font-weight: 600"]:not(.section-title):not(.title):not(.eyebrow):not(.forthcoming-tag),
html body p[style*="font-weight:600"]:not(.section-title):not(.title):not(.eyebrow):not(.forthcoming-tag) {
  font-weight: 420 !important;
}

/* 15. Italic display paragraphs (subscribe-section subhead etc.) — keep italic but light */
html body p[style*="font-style: italic"]:not(.section-title):not(.forthcoming-tag):not(.eyebrow),
html body p[style*="font-style:italic"]:not(.section-title):not(.forthcoming-tag):not(.eyebrow) {
  font-weight: 440 !important;
}

/* 16. Inline sized paragraphs that aren't headings — clamp to body scale */
html body p[style*="font-size: 26px"]:not(.section-title),
html body p[style*="font-size:26px"]:not(.section-title),
html body p[style*="font-size: 22px"]:not(.section-title):not(.forthcoming-tag),
html body p[style*="font-size:22px"]:not(.section-title):not(.forthcoming-tag) {
  font-size: clamp(15.5px, 1.05vw, 17px) !important;
}

/* 17. Quote-like prose (about page colophon) — keep italic display but body weight */
html body .colophon[style*="italic"] {
  font-weight: 500 !important;
  font-size: clamp(18px, 1.4vw, 22px) !important;
}

/* END v8.4 */

/* ============================================================
   v8.5 — TIGHTEN SUNBURST SECTIONS, VERTICAL CENTERING
   The home frontispiece and several page-tops had ~140-200px
   of dead space above the wordmark/sunburst block. Trim it and
   vertically center the title cluster within its container.
   ============================================================ */

/* Home frontispiece — collapse the big top gap and vertically center */
.frontispiece {
  padding-top: clamp(24px, 4vh, 56px) !important;
  padding-bottom: clamp(32px, 6vh, 64px) !important;
  min-height: clamp(560px, 78vh, 820px);
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Tighten the sunburst's own vertical margins within the frontispiece */
.frontispiece .ornament-sunburst {
  margin: 18px auto 14px !important;
}

/* Tighten wave margin so the cluster reads as one centered unit */
.frontispiece .wave {
  margin: 12px auto 8px !important;
}

/* Tagline + epigraph: small breathing room, no big gulf */
.frontispiece .tagline {
  margin-top: 14px !important;
}
.frontispiece .epigraph,
.frontispiece .sea-epigraph {
  margin-top: 28px !important;
}

/* Page-level: the .page wrapper on the home article should not add
   another big top padding above the frontispiece */
.page > .frontispiece:first-child,
article.page > .frontispiece:first-child {
  margin-top: -32px;
}

/* Other pages where a sunburst opens the page (catalogue, about,
   currents, contact, journal): tighten the space above the ornament. */
.page-ornament,
.opening-ornament,
section.page-header > .ornament-sunburst,
section > .ornament-sunburst:first-child {
  margin-top: 12px !important;
}

/* In-content ornament clusters (chevron + sunburst + wave repeating
   between page sections): pull the cluster tighter and ensure it
   centers within its section by removing top auto-margin gulfs */
section .ornament-sunburst {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

/* Section margins overall: tighten when first or last child */
section:first-child {
  margin-top: 24px !important;
}

/* Mobile: reduce min-height so the frontispiece doesn't push content */
@media (max-width: 720px) {
  .frontispiece {
    min-height: clamp(420px, 65vh, 600px);
    padding-top: clamp(16px, 3vh, 32px) !important;
  }
}

/* Footer sunburst — already lives inside .footer-orn; tighten its top
   margin so the footer ornament cluster sits closer */
.site-footer .ornament-sunburst {
  margin-top: 14px !important;
  margin-bottom: 14px !important;
}

/* END v8.5 */

/* ============================================================
   v8.6 — LIFT HEADINGS (instead of shrinking body)
   The user wants headings to read more pronounced so the body
   prose reads in its proper subordinate place. Increase scale,
   weight, color intensity, and tighten line-height of every
   heading tier. Keep body unchanged.
   ============================================================ */

/* H1 page titles — bigger, bolder, more luminous */
html body h1.page-title,
html body .page-title {
  font-size: clamp(64px, 7.8vw, 108px) !important;
  font-weight: 800 !important;
  line-height: 1.0 !important;
  letter-spacing: -0.018em !important;
  margin-bottom: 18px !important;
}
html[data-theme="dark"] body h1.page-title,
html[data-theme="dark"] body .page-title {
  color: var(--gilt-bright) !important;
  text-shadow: 0 0 18px rgba(255, 224, 130, 0.18);
}

/* H2 section titles — substantially bigger, bolder */
html body h2.section-title,
html body .section-title {
  font-size: clamp(38px, 3.6vw, 56px) !important;
  font-weight: 780 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.012em !important;
  margin-top: 14px !important;
  margin-bottom: 18px !important;
}

/* Journal "Forthcoming." italic display — promote */
html body h2.forthcoming-mark {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(52px, 5.2vw, 76px) !important;
  font-weight: 760 !important;
  line-height: 1.0 !important;
  color: var(--oxblood) !important;
  margin: 18px 0 28px !important;
}
html[data-theme="dark"] body h2.forthcoming-mark {
  color: var(--oxblood-bright) !important;
}

/* Quarterly-letter subhead */
html body h2.quarterly-letter-mark {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(38px, 3.4vw, 52px) !important;
  font-weight: 760 !important;
}

/* H3 / subsection / catalogue titles — also bumped */
html body h3,
html body .subsection-title {
  font-size: clamp(26px, 2.1vw, 34px) !important;
  font-weight: 760 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.005em !important;
}

html body .catalog-entry .title,
html body .book-entry .title {
  font-size: clamp(32px, 2.8vw, 44px) !important;
  font-weight: 760 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.008em !important;
  margin-bottom: 6px !important;
}

/* Services service-name titles */
html body .services-section .service-name,
html body .rate-line .service {
  font-size: clamp(22px, 1.8vw, 28px) !important;
  font-weight: 780 !important;
  letter-spacing: -0.005em !important;
}

/* Eyebrows — make them more pronounced too: larger, brighter, more tracking */
html body .eyebrow {
  font-size: clamp(13px, 0.95vw, 15px) !important;
  font-weight: 720 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
}

/* Wordmark / masthead in nav — keep proportional to new H1 weight */
html body .wordmark-small .full {
  font-weight: 760 !important;
  letter-spacing: 0.18em !important;
}

/* Home frontispiece wordmark — make it commanding */
html body .wordmark-display {
  font-size: clamp(82px, 12vw, 156px) !important;
  font-weight: 780 !important;
  letter-spacing: 0.005em !important;
  line-height: 0.98 !important;
}
html body .wordmark-display .line1,
html body .wordmark-display .line2 {
  font-weight: 780 !important;
}

/* Tagline below wordmark on home — keep small caps but a hair more present */
html body .frontispiece .tagline {
  font-size: clamp(13px, 0.95vw, 15px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.36em !important;
}

/* Title rule underneath H1 — thicker, more luminous to match larger heading */
html body .title-rule {
  height: 4px !important;
  width: clamp(120px, 14vw, 200px) !important;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--gilt) 20%,
    var(--gilt-bright) 50%,
    var(--gilt) 80%,
    transparent 100%) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.05);
  margin-top: 8px !important;
  margin-bottom: 18px !important;
}

/* Page numeral roman ornament — slightly larger so it doesn't fall flat
   next to bigger headings */
html body .page-numeral {
  font-size: clamp(15px, 1.1vw, 17px) !important;
  letter-spacing: 0.32em !important;
  font-weight: 600 !important;
}

/* END v8.6 */

/* ============================================================
   v8.6b — EXPLICIT NO-BOLD GUARD ON PARAGRAPH TEXT
   Regardless of any heading boost above, paragraph prose must
   stay at book-typography light weight. This block wins last.
   ============================================================ */

/* Universal: every prose paragraph stays light */
html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .epigraph,
html body .sea-epigraph,
html body .commonplace-list li,
html body .commonplace-list li span,
html body main p,
html body section p,
html body article p,
html body .invitation p,
html body .home-intro p,
html body .prose p {
  font-weight: 400 !important;
}
html[data-theme="dark"] body p,
html[data-theme="dark"] body li,
html[data-theme="dark"] body .desc,
html[data-theme="dark"] body .lede,
html[data-theme="dark"] body .invitation-line,
html[data-theme="dark"] body .epigraph,
html[data-theme="dark"] body .sea-epigraph,
html[data-theme="dark"] body .commonplace-list li,
html[data-theme="dark"] body .commonplace-list li span,
html[data-theme="dark"] body main p,
html[data-theme="dark"] body section p,
html[data-theme="dark"] body article p,
html[data-theme="dark"] body .invitation p,
html[data-theme="dark"] body .home-intro p,
html[data-theme="dark"] body .prose p {
  font-weight: 430 !important;
}

/* Inline emphasis inside paragraphs — modest, not heavy */
html body p strong,
html body p b,
html body li strong,
html body li b,
html body .desc strong,
html body .lede strong,
html body .commonplace-list li strong {
  font-weight: 600 !important;
}

/* Eyebrows, titles, meta keep their assigned weights — re-assert
   they are NOT subject to the 400 rule above */
html body .eyebrow,
html body h1, html body h2, html body h3,
html body .page-title, html body .section-title,
html body .catalog-entry .title, html body .book-entry .title,
html body .wordmark-display, html body .wordmark-small,
html body .meta {
  /* heading/meta weights already set in v8.6 — no override needed,
     this rule just keeps them out of the 400 sweep */
}

/* The single override for non-p .meta lines and small-caps annotations */
html body .meta,
html body .catalog-entry .meta,
html body .book-entry .meta {
  font-weight: 540 !important;
}

/* END v8.6b */

/* ============================================================
   v8.6c — TRIM PARAGRAPH SIZE
   Book typography: 14-15.5px body, never bigger. Keep weight 400.
   ============================================================ */

html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .invitation p,
html body .home-intro p,
html body .commonplace-list li,
html body .commonplace-list li span,
html body main p,
html body section p,
html body article p,
html body .prose p {
  font-size: clamp(14px, 0.95vw, 15.5px) !important;
  line-height: 1.74 !important;
  font-weight: 400 !important;
}

/* Catalogue descriptions: even smaller — they're caption-like under the title */
html body .catalog-entry .desc,
html body .book-entry .desc {
  font-size: clamp(13.5px, 0.9vw, 15px) !important;
  font-weight: 400 !important;
  line-height: 1.72 !important;
}

/* Services rate-description text */
html body .services-section p,
html body .services-section .service-blurb,
html body .services-description {
  font-size: clamp(14px, 0.95vw, 15.5px) !important;
  font-weight: 400 !important;
}

/* Currents kicker italic — keep slightly larger than body but smaller than before */
html body .currents-kicker,
html body main section p[style*="A drawing-room"] {
  font-size: clamp(17px, 1.3vw, 21px) !important;
  font-weight: 400 !important;
  font-style: italic !important;
}

/* Home epigraph / sea-epigraph — italic display, slightly smaller */
html body .epigraph,
html body .sea-epigraph {
  font-size: clamp(15px, 1.1vw, 18px) !important;
  font-weight: 400 !important;
}

/* Dark mode: same sizes, weight 420 for legibility */
html[data-theme="dark"] body p,
html[data-theme="dark"] body li,
html[data-theme="dark"] body .desc,
html[data-theme="dark"] body .lede,
html[data-theme="dark"] body .commonplace-list li,
html[data-theme="dark"] body main p,
html[data-theme="dark"] body section p,
html[data-theme="dark"] body article p {
  font-weight: 420 !important;
}

/* END v8.6c */

/* ============================================================
   v8.7 — UNIFIED TIER SHADES + SIZES
   Audit found body prose rendering in four different colors and
   three different families, eyebrow/meta in two different golds,
   and the footer p inheriting an 18px display size.

   Traditional book typography ladder:
     H1 page-title ... gilt-deep   #7A5408   800  64-108px
     H2 section ...... oxblood     #5A0E1A   760  38-56px
     H3 / cat-title .. ink         #0B1633   740  26-44px
     eyebrow ......... gilt-bright #B07A1A   720  13-15px caps
     author / byline . ink-soft    #2E3A5C   500  13-14px italic
     body p .......... ink-soft    #2E3A5C   400  14-15.5px Lora
     meta ............ muted-gold  #8A6E1F   540  12-13px caps
     footer p ........ ink-soft    #2E3A5C   540  12-13px caps
   ============================================================ */

/* H1 — gilt deep, biggest */
html body h1.page-title,
html body .page-title {
  color: #7A5408 !important;
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
}
html[data-theme="dark"] body h1.page-title {
  color: #FFE082 !important;
}

/* H2 — oxblood, second tier, including forthcoming-mark */
html body h2.section-title,
html body .section-title,
html body h2.forthcoming-mark {
  color: #5A0E1A !important;
  font-family: var(--font-display) !important;
  font-weight: 760 !important;
}
html[data-theme="dark"] body h2.section-title,
html[data-theme="dark"] body h2.forthcoming-mark {
  color: #FF8A95 !important;
}

/* H3 + catalog/book titles — ink (darkest neutral), tied tier */
html body h3,
html body .subsection-title,
html body .catalog-entry .title,
html body .book-entry .title {
  color: #0B1633 !important;
  font-family: var(--font-display) !important;
  font-weight: 740 !important;
}
html[data-theme="dark"] body h3,
html[data-theme="dark"] body .catalog-entry .title,
html[data-theme="dark"] body .book-entry .title {
  color: #EDE3C2 !important;
}

/* Eyebrows — single gilt shade, sans, small caps */
html body .eyebrow {
  color: #B07A1A !important;
  font-family: var(--font-sans) !important;
  font-weight: 720 !important;
  font-size: clamp(12.5px, 0.9vw, 14px) !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
}
html[data-theme="dark"] body .eyebrow {
  color: #FFD466 !important;
}

/* Author/byline italic — one consistent shade */
html body .catalog-entry .author,
html body .book-entry .author,
html body .byline {
  color: #2E3A5C !important;
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  font-size: clamp(13px, 0.95vw, 15px) !important;
  letter-spacing: 0.02em !important;
}
html[data-theme="dark"] body .catalog-entry .author,
html[data-theme="dark"] body .book-entry .author,
html[data-theme="dark"] body .byline {
  color: #D8CFAE !important;
}

/* BODY PROSE — single shade, single family (Lora), light weight */
html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .invitation p,
html body .home-intro p,
html body .epigraph,
html body .sea-epigraph,
html body .commonplace-list li,
html body main p,
html body section p,
html body article p,
html body .prose p,
html body .services-section p,
html body .services-section .service-blurb {
  color: #2E3A5C !important;
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: clamp(14px, 0.95vw, 15.5px) !important;
  line-height: 1.74 !important;
}
html[data-theme="dark"] body p,
html[data-theme="dark"] body li,
html[data-theme="dark"] body .desc,
html[data-theme="dark"] body .lede,
html[data-theme="dark"] body .commonplace-list li,
html[data-theme="dark"] body main p,
html[data-theme="dark"] body section p,
html[data-theme="dark"] body article p {
  color: #E8E2CC !important;
  font-weight: 420 !important;
}

/* Italic display paragraphs (epigraphs) — keep Cormorant for italics
   but match the body shade */
html body .epigraph,
html body .sea-epigraph,
html body p.epigraph,
html body p.sea-epigraph {
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-size: clamp(15px, 1.1vw, 18px) !important;
  color: #2E3A5C !important;
  font-weight: 400 !important;
}
html[data-theme="dark"] body .epigraph,
html[data-theme="dark"] body .sea-epigraph {
  color: #E8E2CC !important;
}

/* Inline strong/em — modest emphasis, same shade */
html body p strong,
html body p b,
html body li strong,
html body li b,
html body .lede strong,
html body .commonplace-list li strong {
  color: #0B1633 !important;
  font-weight: 600 !important;
}
html[data-theme="dark"] body p strong,
html[data-theme="dark"] body li strong,
html[data-theme="dark"] body .commonplace-list li strong {
  color: #FFE082 !important;
}

/* META — single muted-gold shade, small caps */
html body .meta,
html body .catalog-entry .meta,
html body .book-entry .meta,
html body .colophon,
html body .printed {
  color: #8A6E1F !important;
  font-family: var(--font-sans) !important;
  font-weight: 540 !important;
  font-size: clamp(11.5px, 0.85vw, 13px) !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
html[data-theme="dark"] body .meta,
html[data-theme="dark"] body .catalog-entry .meta,
html[data-theme="dark"] body .colophon,
html[data-theme="dark"] body .printed {
  color: #D4B65A !important;
}

/* Footer paragraphs — match meta tier (small caps, body-shade, modest) */
html body footer p,
html body .site-footer p,
html body footer .footer-line,
html body .site-footer .footer-line {
  color: #2E3A5C !important;
  font-family: var(--font-sans) !important;
  font-weight: 540 !important;
  font-size: clamp(12px, 0.85vw, 13.5px) !important;
  letter-spacing: 0.08em !important;
  line-height: 1.7 !important;
}
html[data-theme="dark"] body footer p,
html[data-theme="dark"] body .site-footer p,
html[data-theme="dark"] body footer .footer-line,
html[data-theme="dark"] body .site-footer .footer-line {
  color: #E8E2CC !important;
}

/* Tagline (frontispiece) — match eyebrow tier */
html body .frontispiece .tagline {
  color: #B07A1A !important;
  font-family: var(--font-sans) !important;
  font-weight: 720 !important;
  font-size: clamp(12.5px, 0.9vw, 14px) !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
}
html[data-theme="dark"] body .frontispiece .tagline {
  color: #FFD466 !important;
}

/* Catalog entry desc — body tier */
html body .catalog-entry .desc,
html body .book-entry .desc {
  color: #2E3A5C !important;
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: clamp(13.5px, 0.92vw, 15px) !important;
  line-height: 1.72 !important;
}
html[data-theme="dark"] body .catalog-entry .desc,
html[data-theme="dark"] body .book-entry .desc {
  color: #E8E2CC !important;
  font-weight: 420 !important;
}

/* Services service-name — H3 tier */
html body .services-section .service-name,
html body .rate-line .service {
  color: #0B1633 !important;
  font-family: var(--font-display) !important;
  font-weight: 740 !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
}
html[data-theme="dark"] body .services-section .service-name,
html[data-theme="dark"] body .rate-line .service {
  color: #EDE3C2 !important;
}

/* Price callout — eyebrow gilt tier */
html body .rate-line .price,
html body .rates-callout .price,
html body .rates-callout strong {
  color: #B07A1A !important;
  font-family: var(--font-sans) !important;
  font-weight: 720 !important;
  font-size: clamp(15px, 1.1vw, 18px) !important;
  letter-spacing: 0.08em !important;
}
html[data-theme="dark"] body .rate-line .price,
html[data-theme="dark"] body .rates-callout .price {
  color: #FFD466 !important;
}

/* END v8.7 */

/* ============================================================
   v8.8 — REMOVE FRONTISPIECE WORDMARK RULE + UNIFY LEADING
   • Hide the gold horizontal rule between "SILVER CURRENT" and
     "PRESS" on the home frontispiece — reads odd.
   • Make sure SILVER CURRENT and PRESS stack with equal leading
     to each other.
   • Apply consistent leading across each tier so the typographic
     ladder reads evenly.
   ============================================================ */

/* 1. Remove the gold line between wordmark lines */
html body .wordmark-display .rule,
html body .frontispiece .wordmark-display .rule {
  display: none !important;
}

/* 2. Wordmark stack — equal leading between SILVER CURRENT and PRESS */
html body .wordmark-display {
  line-height: 1.04 !important;
}
html body .wordmark-display .line1,
html body .wordmark-display .line2 {
  display: block !important;
  line-height: 1.04 !important;
  margin: 0 !important;
}
/* Add a small consistent gap between the two lines using margin
   rather than the deleted rule */
html body .wordmark-display .line2 {
  margin-top: 6px !important;
}

/* 3. UNIFIED LEADING ladder — same line-height within each tier
      headings tight, body generous and uniform */

/* Heading tier leading */
html body h1.page-title,
html body .page-title,
html body .wordmark-display {
  line-height: 1.04 !important;
}
html body h2.section-title,
html body .section-title,
html body h2.forthcoming-mark,
html body h2.quarterly-letter-mark {
  line-height: 1.1 !important;
}
html body h3,
html body .subsection-title,
html body .catalog-entry .title,
html body .book-entry .title,
html body .services-section .service-name,
html body .rate-line .service {
  line-height: 1.18 !important;
}

/* Body tier leading — uniform 1.74 across every prose element */
html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .invitation p,
html body .home-intro p,
html body .epigraph,
html body .sea-epigraph,
html body .commonplace-list li,
html body .catalog-entry .desc,
html body .book-entry .desc,
html body main p,
html body section p,
html body article p {
  line-height: 1.74 !important;
}

/* Meta/footer/eyebrow/tagline tier leading — caps lines, slightly tighter */
html body .eyebrow,
html body .meta,
html body .catalog-entry .meta,
html body .book-entry .meta,
html body footer p,
html body .site-footer p,
html body .frontispiece .tagline,
html body .catalog-entry .author,
html body .book-entry .author,
html body .colophon,
html body .printed {
  line-height: 1.5 !important;
}

/* Consistent spacing between stacked paragraphs */
html body main p + p,
html body section p + p,
html body article p + p,
html body .prose p + p {
  margin-top: 16px !important;
}

/* Consistent spacing between heading and the paragraph that follows */
html body h1.page-title + p,
html body h2.section-title + p,
html body h2.forthcoming-mark + p,
html body h3 + p {
  margin-top: 18px !important;
}

/* END v8.8 */

/* v8.8b — wordmark sizing so SILVER CURRENT fits on a single line.
   Without the dividing rule the lines can collapse; need to size for
   ~14 chars of CURRENT GARAMOND fitting comfortably in the column. */
html body .wordmark-display {
  font-size: clamp(54px, 7.6vw, 96px) !important;
  letter-spacing: 0.02em !important;
  line-height: 1.05 !important;
}
html body .wordmark-display .line1,
html body .wordmark-display .line2 {
  display: block !important;
  white-space: nowrap !important;
  line-height: 1.05 !important;
  font-size: 1em !important;
}
html body .wordmark-display .line2 {
  margin-top: 4px !important;
}

/* Make sure the frontispiece container gives the wordmark wide enough room */
html body .frontispiece {
  padding-left: clamp(20px, 4vw, 60px) !important;
  padding-right: clamp(20px, 4vw, 60px) !important;
}

/* ============================================================
   v8.9 — FOOTER HEADING (".colophon")
   The "Silver Current Press · Philadelphia · Established MMXXVI"
   line is the footer's heading. It should read DARKER, larger,
   and bolder than the URL / copyright / printed-by / privacy lines
   below it — proper traditional colophon hierarchy.
   ============================================================ */

html body footer .colophon,
html body .site-footer .colophon {
  color: #0B1633 !important;
  font-family: var(--font-sans) !important;
  font-weight: 720 !important;
  font-size: clamp(13.5px, 1vw, 15.5px) !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  line-height: 1.5 !important;
  margin-top: 8px !important;
  margin-bottom: 14px !important;
}
html[data-theme="dark"] body footer .colophon,
html[data-theme="dark"] body .site-footer .colophon {
  color: #FFE082 !important;
}

/* Lines BELOW the colophon — URL, copyright, printed-by, privacy
   nav, "Private preview" — all subordinate and lighter */
html body footer .meta,
html body .site-footer .meta,
html body footer .printed,
html body .site-footer .printed,
html body footer p:not(.colophon),
html body .site-footer p:not(.colophon) {
  color: #5A6B8C !important;
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  font-size: clamp(11.5px, 0.85vw, 13px) !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  line-height: 1.6 !important;
}
html[data-theme="dark"] body footer .meta,
html[data-theme="dark"] body .site-footer .meta,
html[data-theme="dark"] body footer .printed,
html[data-theme="dark"] body .site-footer .printed,
html[data-theme="dark"] body footer p:not(.colophon),
html[data-theme="dark"] body .site-footer p:not(.colophon) {
  color: #B8B3A0 !important;
}

/* Footer links — same subordinate shade, but slightly more contrast on hover */
html body footer a,
html body .site-footer a {
  color: #5A6B8C !important;
  text-decoration: none !important;
  border-bottom: 1px dotted rgba(90, 107, 140, 0.4);
}
html body footer a:hover,
html body .site-footer a:hover {
  color: #0B1633 !important;
  border-bottom-color: currentColor;
}
html[data-theme="dark"] body footer a,
html[data-theme="dark"] body .site-footer a {
  color: #B8B3A0 !important;
}
html[data-theme="dark"] body footer a:hover,
html[data-theme="dark"] body .site-footer a:hover {
  color: #FFE082 !important;
}

/* END v8.9 */

/* ============================================================
   v9.0 — UNIFIED HIERARCHY + COLOR DISCIPLINE (final pass)

   Color palette (light mode):
     INK ............... #0B1633   darkest — heading caps
     INK-MID ........... #1E2A4D   bylines (darker than body, lighter than titles)
     INK-BODY .......... #2E3A5C   body prose
     INK-SOFT .......... #50607F   subordinate notes
     GILT-DEEP ......... #7A5408   H1 page titles
     GILT-MID .......... #B07A1A   eyebrows, taglines, prices
     OXBLOOD-DEEP ...... #5A0E1A   H2 (Forthcoming, Editorial Offices etc.)
     OXBLOOD-PLUM ...... #4A2233   unified ornament shade (red+blue mixed)

   Dark mode equivalents adjusted at end of block.
   ============================================================ */

:root {
  --tier-ink:      #0B1633;
  --tier-ink-mid:  #1E2A4D;
  --tier-ink-body: #2E3A5C;
  --tier-ink-soft: #50607F;
  --tier-gilt-deep: #7A5408;
  --tier-gilt-mid:  #B07A1A;
  --tier-oxblood:   #5A0E1A;
  --tier-ornament:  #4A2233; /* unified plum/red-blue for chevrons & sunbursts */
}
html[data-theme="dark"] {
  --tier-ink:      #FFE9B0;
  --tier-ink-mid:  #E8DCB0;
  --tier-ink-body: #E8E2CC;
  --tier-ink-soft: #B8B3A0;
  --tier-gilt-deep: #FFE082;
  --tier-gilt-mid:  #FFD466;
  --tier-oxblood:   #FF8A95;
  --tier-ornament:  #FFB066;
}

/* ===== HOME FRONTISPIECE WORDMARK — slightly smaller ===== */
html body .wordmark-display {
  font-size: clamp(48px, 6.6vw, 82px) !important;
  letter-spacing: 0.02em !important;
}
html body .wordmark-display .rule { display: none !important; }

/* ===== H1 PAGE TITLES ===== */
html body h1.page-title,
html body .page-title {
  color: var(--tier-gilt-deep) !important;
  font-size: clamp(58px, 6.8vw, 92px) !important;
  font-weight: 800 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.014em !important;
}

/* ===== H2 SECTION TITLES (unified shade and size) ===== */
/* "Forthcoming." on journal and "About the Journal" + every section
   title across the site read at the same tier */
html body h2.section-title,
html body .section-title,
html body h2.forthcoming-mark,
html body h2.quarterly-letter-mark {
  color: var(--tier-oxblood) !important;
  font-family: var(--font-display) !important;
  font-weight: 780 !important;
  font-size: clamp(36px, 3.4vw, 52px) !important;
  font-style: italic !important;
  line-height: 1.08 !important;
  letter-spacing: -0.008em !important;
}
/* "Forthcoming." matches "The Silver Current Journal" tier (italic display) */
html body h2.forthcoming-mark {
  font-size: clamp(40px, 3.8vw, 58px) !important;
}

/* ===== H3 / CATALOGUE TITLES / SERVICE NAMES (one tier) ===== */
html body h3,
html body .subsection-title,
html body .catalog-entry .title,
html body .book-entry .title,
html body .service-row .name,
html body .services-section .service-name,
html body .rate-line .service {
  color: var(--tier-ink) !important;
  font-family: var(--font-display) !important;
  font-weight: 760 !important;
  font-size: clamp(26px, 2.2vw, 36px) !important;
  font-style: italic !important;
  line-height: 1.16 !important;
  letter-spacing: -0.004em !important;
}

/* ===== "WHY THESE RATES" CALLOUT — proper heading + body ===== */
html body .rates-callout {
  border-color: var(--tier-gilt-mid) !important;
}
html body .rates-callout .eyebrow,
html body .rates-callout p.eyebrow {
  color: var(--tier-gilt-deep) !important;
  font-family: var(--font-sans) !important;
  font-weight: 800 !important;
  font-size: clamp(15px, 1.15vw, 18px) !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}
html body .rates-callout .text,
html body .rates-callout p.text {
  color: var(--tier-ink-body) !important;
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: clamp(13px, 0.9vw, 14.5px) !important;
  line-height: 1.74 !important;
}

/* ===== EYEBROWS — same shade, same size, everywhere ===== */
html body .eyebrow {
  color: var(--tier-gilt-mid) !important;
  font-family: var(--font-sans) !important;
  font-weight: 720 !important;
  font-size: clamp(12.5px, 0.9vw, 14px) !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
}

/* ===== AUTHOR / BYLINE — darker than body, lighter than titles ===== */
html body .catalog-entry .author,
html body .book-entry .author,
html body .byline {
  color: var(--tier-ink-mid) !important;
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: clamp(15px, 1.1vw, 17.5px) !important;
  letter-spacing: 0.02em !important;
}

/* ===== EPIGRAPHS — darker, larger, one shade ===== */
/* Home: "A current of letters drawn from the literary deep" + "An independent house..." */
/* Catalogue: "A complete record of titles in print and forthcoming..." */
html body .epigraph,
html body .sea-epigraph,
html body p.epigraph,
html body p.sea-epigraph {
  color: var(--tier-ink-mid) !important;
  font-family: var(--font-display) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  font-size: clamp(19px, 1.5vw, 25px) !important;
  line-height: 1.5 !important;
}
html body .sea-epigraph {
  font-size: clamp(20px, 1.6vw, 26px) !important;
}

/* ===== "What you will find here" + sibling lines on Currents — darker body ===== */
html body .currents-epigraph p,
html body .currents-epigraph li,
html body section[aria-label*="Epigraph"] p,
html body section[aria-label*="Epigraph"] li {
  color: var(--tier-ink-mid) !important;
  font-weight: 500 !important;
}

/* ===== BODY PROSE ===== */
html body p,
html body li,
html body .desc,
html body .lede,
html body .invitation-line,
html body .invitation p,
html body .home-intro p,
html body .commonplace-list li,
html body main p,
html body section p,
html body article p,
html body .prose p,
html body .service-row .desc,
html body .services-section p,
html body .catalog-entry .desc {
  color: var(--tier-ink-body) !important;
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: clamp(14px, 0.95vw, 15.5px) !important;
  line-height: 1.74 !important;
}

/* Service row desc — slightly smaller (the prose under each service name) */
html body .service-row .desc {
  font-size: clamp(13.5px, 0.92vw, 15px) !important;
}

/* ===== "ENTER THE CURRENTS" + similar read-links — darker ===== */
html body a.read-link,
html body a.gilt-link {
  color: var(--tier-gilt-deep) !important;
  font-weight: 720 !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(13px, 0.95vw, 15px) !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}
html body a.read-link:hover,
html body a.gilt-link:hover {
  color: var(--tier-oxblood) !important;
}

/* ===== PRICES — gilt-mid tier, prominent ===== */
html body .service-row .price,
html body .rate-line .price,
html body .rates-callout .price {
  color: var(--tier-gilt-deep) !important;
  font-family: var(--font-sans) !important;
  font-weight: 780 !important;
  font-size: clamp(16px, 1.2vw, 19px) !important;
  letter-spacing: 0.06em !important;
}
html body .service-row .price .timing,
html body .rate-line .timing {
  display: block !important;
  color: var(--tier-ink-soft) !important;
  font-weight: 500 !important;
  font-size: clamp(11px, 0.8vw, 12.5px) !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-top: 4px !important;
}

/* ===== ORNAMENTS — unified plum shade (red+blue mix) ===== */
/* Chevrons, sunbursts, waves, dividers all use one ornament color. */
html body .chevron-divider,
html body .chevron-divider svg,
html body .wave-divider,
html body .wave-divider svg,
html body .ornament-sunburst,
html body .wave-small,
html body svg.chevron-divider,
html body svg.wave-divider,
html body svg.ornament-sunburst,
html body svg.wave-small,
html body .title-rule {
  color: var(--tier-ornament) !important;
}
html body .chevron-divider polyline,
html body .chevron-divider line,
html body .chevron-divider path {
  stroke: var(--tier-ornament) !important;
  stroke-width: 1.4 !important;
  opacity: 1 !important;
}
html body .chevron-divider polyline:nth-of-type(2),
html body .chevron-divider line:nth-of-type(2) {
  opacity: 0.8 !important;
}
html body .chevron-divider polyline:nth-of-type(3),
html body .chevron-divider line:nth-of-type(3) {
  opacity: 0.55 !important;
}

/* All chevrons same size */
html body .chevron-divider,
html body svg.chevron-divider {
  width: 60px !important;
  height: 26px !important;
  display: block !important;
  margin: 16px auto !important;
}

/* Sunburst unified */
html body .ornament-sunburst,
html body svg.ornament-sunburst {
  color: var(--tier-ornament) !important;
}
html body .ornament-sunburst circle,
html body .ornament-sunburst line {
  stroke: var(--tier-ornament) !important;
}
html body .ornament-sunburst circle:first-of-type {
  fill: var(--tier-ornament) !important;
}

/* Waves unified */
html body .wave-divider path,
html body svg.wave-divider path,
html body .wave-small path,
html body svg.wave-small path,
html body .frontispiece .wave path {
  stroke: var(--tier-ornament) !important;
  stroke-width: 1.4 !important;
}

/* Title rule gold gradient — replace with unified plum line */
html body .title-rule {
  background: linear-gradient(90deg,
    transparent 0%,
    var(--tier-ornament) 18%,
    var(--tier-ornament) 50%,
    var(--tier-ornament) 82%,
    transparent 100%) !important;
  height: 2.5px !important;
  width: clamp(140px, 16vw, 220px) !important;
  margin: 14px auto !important;
}

/* ===== FOOTER COLOPHON HEADING — bigger, bolder, darker ===== */
html body footer .colophon,
html body .site-footer .colophon {
  color: var(--tier-ink) !important;
  font-family: var(--font-sans) !important;
  font-weight: 800 !important;
  font-size: clamp(15px, 1.15vw, 18px) !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.5 !important;
  margin-top: 12px !important;
  margin-bottom: 16px !important;
}

/* Footer body lines (URL, copyright, privacy, printed-by, preview) */
html body footer .meta,
html body .site-footer .meta,
html body footer .printed,
html body .site-footer .printed,
html body footer p:not(.colophon),
html body .site-footer p:not(.colophon) {
  color: var(--tier-ink-soft) !important;
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  font-size: clamp(11.5px, 0.85vw, 13px) !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  line-height: 1.6 !important;
}

/* ===== STAMP-BTN / SUBMIT BOX — fix the "atrocious" dark look ===== */
/* Was: dark oxblood bg + small cream caps. Now: parchment cream bg,
   deep oxblood text, gilt border — readable and elegant. */
html body .stamp-btn,
html body button.stamp-btn,
html body a.stamp-btn {
  background: #F2EBDA !important;
  color: var(--tier-oxblood) !important;
  border: 2px solid var(--tier-gilt-mid) !important;
  box-shadow: inset 0 0 0 1px rgba(176, 122, 26, 0.25),
              0 2px 8px rgba(74, 34, 51, 0.12) !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-style: italic !important;
  font-size: clamp(16px, 1.2vw, 19px) !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding: 16px 42px 15px !important;
  text-decoration: none !important;
}
html body .stamp-btn:hover,
html body button.stamp-btn:hover,
html body a.stamp-btn:hover {
  background: #FFFCF0 !important;
  color: var(--tier-oxblood) !important;
  border-color: var(--tier-gilt-deep) !important;
  box-shadow: inset 0 0 0 1px var(--tier-gilt-deep),
              0 4px 14px rgba(122, 84, 8, 0.22) !important;
}
html[data-theme="dark"] body .stamp-btn,
html[data-theme="dark"] body button.stamp-btn,
html[data-theme="dark"] body a.stamp-btn {
  background: rgba(255, 248, 220, 0.96) !important;
  color: #5A0E1A !important;
  border-color: var(--tier-gilt-deep) !important;
}
html[data-theme="dark"] body .stamp-btn:hover {
  background: #FFFCF0 !important;
  color: #5A0E1A !important;
}

/* END v9.0 */

/* ==================================================================
   POST-LAUNCH PATCH — 2026-05-28
   Fixes: 1) About pilasters overflowing below mission section
          2) Correspondence wordmark overflowing 560px container
   ================================================================== */
/* ====================================================================
   Silver Current Press — post-launch fix patch
   Date: 2026-05-28
   Two issues:
   1. ABOUT page — gold pilaster columns flanking the Mission section
      extend BELOW the section and overlap the drop-cap paragraphs
      that follow. Caused by SVG offsetParent semantics — SVG elements
      with position:absolute + top/bottom don't constrain to a
      position:relative parent the way HTML elements do.
   2. CORRESPONDENCE page — the large "SILVER CURRENT" wordmark on
      the calling-card overflows its 560px container by ~136px. The
      part beyond the container has no background gradient applied
      (because background-clip:text only covers the box), so the
      trailing letters "NT" appear as faded transparent ghosts.
   ==================================================================== */


/* ---- Fix 1 — pin the pilaster height to the mission section ---- */
/* Replace top/bottom positioning with explicit height. This ensures
   the SVG cannot extend beyond the Mission section regardless of
   how the browser computes containing blocks for SVG. */
.mission-side-column {
  top: 24px !important;
  bottom: auto !important;
  height: calc(100% - 48px) !important;
}


/* ---- Fix 2 — size the calling-card wordmark to fit its container ---- */
/* The calling-card holds a wordmark that overflows on viewports >900px.
   Restrict the font-size with !important so it wins against the
   site-wide HOME FRONTISPIECE rule (which is the size champion). */
.calling-card .wordmark-display,
.calling-card.reveal .wordmark-display {
  font-size: clamp(38px, 4.8vw, 64px) !important;
  letter-spacing: 0.02em !important;
}
.calling-card .wordmark-display .line1,
.calling-card .wordmark-display .line2 {
  font-size: 1em !important;
  letter-spacing: inherit !important;
}
.calling-card .wordmark-display .rule {
  width: clamp(120px, 18vw, 180px) !important;
}

/* ====================================================================
   POST-LAUNCH PATCH v2 — 2026-05-28
   Centers all page-subtitle / epigraph / lede lines that had
   text-align:center + max-width but margin-left/right:0px.
   ==================================================================== */
.page-subtitle,
.epigraph,
.invitation-line,
.excerpt,
.forthcoming-tag,
.terms-note,
.contact-closing,
.section-intro,
.section-lede,
.journal-cadence,
.frontispiece .invitation,
.frontispiece .lede,
header.chapter-opener > p,
.calling-card > p {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Catch-all: any centered text block with constrained width gets margin auto.
   Scoped to <main> so we don't touch headers/footers. */
main p[class*="lede"],
main p[class*="subtitle"],
main p[class*="epigraph"],
main p[class*="invitation"],
main p[class*="excerpt"] {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Final safety net — any centered <p> with a max-width inside main gets margin auto */
main p {
  margin-left: auto;
  margin-right: auto;
}

/* Final-final patch — the typography rebuild at line 2422 has
   "p, ul, ol { margin: 0 0 18px !important; }" which kills all
   auto-centering on paragraphs. Override here with a more
   specific selector + !important so centered max-width paragraphs
   in <main> sit visually centered. */
main p[style*="auto"],
main p[style*="margin"][style*="max-width"] {
  margin-left: auto !important;
  margin-right: auto !important;
}
.page-subtitle,
.epigraph,
.invitation-line,
.excerpt,
.forthcoming-tag,
.terms-note,
.contact-closing {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Catch-all: any centered p with max-width inside main, restored */
main p {
  margin-left: auto !important;
  margin-right: auto !important;
}
