/* Right Hand DMS woodblock design system — tokens + base.
   Source of truth: design-mockups/rhd-woodblock (site.css, Components.dc.html).
   Everything is scoped to .rhd: wrap a tree in <RhdRoot> (or add class="rhd") to opt in,
   so the logged-in app keeps its current look until it is moved over screen by screen.
   Tailwind can use the same tokens via the @theme block in styles/main.css. */
.rhd {
  --paper: #f3eada;
  --paper-2: #e8dac0;
  --card: #fbf6ec;
  --ink: #2a1c12;
  --ink-2: #5c4837;
  --rule: #cdb998;
  --amber: #a64f17;
  --on-amber: #fff8ee;
  --ai: #1f3350;
  --on-ai: #f3eada;
  --beni: #b23a28;
  --ok: #47652f;
  --hl: #f4cf8f;
  --shadow: #2a1c12;
  /* App tone washes for banners and tags (design-mockups/app-rebuild/site.css). */
  --amber-wash: #f1e2d2;
  --beni-wash: #f2dfd4;
  --ok-wash: #e5e5d5;
  --ai-wash: #e1dfd9;
  --backdrop: rgba(42, 28, 18, 0.5);
  color-scheme: light;
  --seigaiha: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2748%27 height=%2724%27%3E%3Cg fill=%27none%27 stroke=%27%23fff%27 stroke-opacity=%27.16%27 stroke-width=%271.4%27%3E%3Cpath d=%27M0 24a24 24 0 0 1 48 0M8 24a16 16 0 0 1 32 0M16 24a8 8 0 0 1 16 0M-24 12a24 24 0 0 1 48 0M-16 12a16 16 0 0 1 32 0M-8 12a8 8 0 0 1 16 0M24 12a24 24 0 0 1 48 0M32 12a16 16 0 0 1 32 0M40 12a8 8 0 0 1 16 0%27/%3E%3C/g%3E%3C/svg%3E");
  --grain: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27240%27 height=%27240%27%3E%3Cfilter id=%27n%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.85%27 numOctaves=%272%27 stitchTiles=%27stitch%27/%3E%3CfeColorMatrix values=%270 0 0 0 .35 0 0 0 0 .24 0 0 0 0 .12 0 0 0 .08 0%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url%28%23n%29%27/%3E%3C/svg%3E");
  --wood: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27600%27 height=%27300%27%3E%3Cfilter id=%27w%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.004 .09%27 numOctaves=%273%27 seed=%277%27 stitchTiles=%27stitch%27/%3E%3CfeColorMatrix values=%270 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .11 -.02%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url%28%23w%29%27/%3E%3C/svg%3E");
}
.rhd[data-theme="dark"],
.rhd .rhd-invert {
  --paper: #16110d;
  --paper-2: #241b14;
  --card: #1e1712;
  --ink: #f0e5d1;
  --ink-2: #c4b197;
  --rule: #4a3b2d;
  --amber: #e38a4b;
  --on-amber: #1a120c;
  --ai: #18243a;
  --on-ai: #f0e5d1;
  --beni: #e26a54;
  --ok: #9dbd7e;
  --hl: #6e4b1e;
  --shadow: #000;
  --amber-wash: #3e291b;
  --beni-wash: #3d241d;
  --ok-wash: #2a2f20;
  --ai-wash: #1b2230;
  --backdrop: rgba(0, 0, 0, 0.6);
  color-scheme: dark;
}
.rhd[data-theme="dark"] .rhd-invert {
  --paper: #f3eada;
  --paper-2: #e8dac0;
  --card: #fbf6ec;
  --ink: #2a1c12;
  --ink-2: #5c4837;
  --rule: #cdb998;
  --amber: #a64f17;
  --on-amber: #fff8ee;
  --ai: #1f3350;
  --on-ai: #f3eada;
  --beni: #b23a28;
  --ok: #47652f;
  --hl: #f4cf8f;
  --shadow: #2a1c12;
  /* App tone washes for banners and tags (design-mockups/app-rebuild/site.css). */
  --amber-wash: #f1e2d2;
  --beni-wash: #f2dfd4;
  --ok-wash: #e5e5d5;
  --ai-wash: #e1dfd9;
  --backdrop: rgba(42, 28, 18, 0.5);
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  .rhd:not([data-theme="light"]) {
    --paper: #16110d;
    --paper-2: #241b14;
    --card: #1e1712;
    --ink: #f0e5d1;
    --ink-2: #c4b197;
    --rule: #4a3b2d;
    --amber: #e38a4b;
    --on-amber: #1a120c;
    --ai: #18243a;
    --on-ai: #f0e5d1;
    --beni: #e26a54;
    --ok: #9dbd7e;
    --hl: #6e4b1e;
    --shadow: #000;
    --amber-wash: #3e291b;
    --beni-wash: #3d241d;
    --ok-wash: #2a2f20;
    --ai-wash: #1b2230;
    --backdrop: rgba(0, 0, 0, 0.6);
    color-scheme: dark;
  }
  .rhd:not([data-theme="light"]) .rhd-invert {
    --paper: #f3eada;
    --paper-2: #e8dac0;
    --card: #fbf6ec;
    --ink: #2a1c12;
    --ink-2: #5c4837;
    --rule: #cdb998;
    --amber: #a64f17;
    --on-amber: #fff8ee;
    --ai: #1f3350;
    --on-ai: #f3eada;
    --beni: #b23a28;
    --ok: #47652f;
    --hl: #f4cf8f;
    --shadow: #2a1c12;
    /* App tone washes for banners and tags (design-mockups/app-rebuild/site.css). */
    --amber-wash: #f1e2d2;
    --beni-wash: #f2dfd4;
    --ok-wash: #e5e5d5;
    --ai-wash: #e1dfd9;
    --backdrop: rgba(42, 28, 18, 0.5);
    color-scheme: light;
  }
}
/* .rhd-invert is the opposite theme of the page around it (dark on a light page, light on a
   dark one, following the toggle or the OS). Marketing pages put app UI in it so screens
   stand off the page instead of blending into it. Inherited color is re-read in the scope. */
.rhd .rhd-invert {
  color: var(--ink);
}
.rhd,
.rhd * {
  box-sizing: border-box;
}
.rhd {
  min-height: 100vh;
  line-height: normal;
  background-color: var(--paper);
  color: var(--ink);
  font-family: "IBM Plex Sans", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
.rhd {
  background-image: var(--grain);
}
.rhd a {
  color: var(--amber);
  /* Tailwind's preflight strips link underlines; the design keeps the browser default. */
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.rhd a:hover {
  color: var(--beni);
}
.rhd summary {
  list-style: none;
  cursor: pointer;
}
.rhd summary::-webkit-details-marker {
  display: none;
}
.rhd details[open] .rhd-plus {
  transform: rotate(45deg);
}
.rhd input,
.rhd select,
.rhd textarea,
.rhd button {
  font: inherit;
  color: inherit;
}

/* The app's base styles (index.html, styles/main.css) give every heading a fixed ink color,
   tighter tracking and line-height 1.18, and the body 15px type. The design assumes browser
   defaults — headings inherit their section's color (e.g. light text on the indigo band). */
.rhd {
  font-size: 16px;
}
.rhd :is(h1, h2, h3, h4, h5, h6) {
  color: inherit;
  letter-spacing: normal;
  line-height: normal;
}

/* Right Hand DMS woodblock components. Values are the design's, verbatim
   (design-mockups/rhd-woodblock/Components.dc.html + the page drops). */

/* ---------- type ---------- */
.rhd .rhd-mincho {
  font-family: "Shippori Mincho B1", serif;
}
.rhd .rhd-mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-display {
  margin: 0;
  font:
    800 clamp(38px, 5.6vw, 68px) / 1.04 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.015em;
  text-wrap: balance;
}
.rhd .rhd-h1 {
  margin: 0;
  font:
    800 clamp(34px, 4.6vw, 54px) / 1.06 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .rhd-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .rhd-h3 {
  margin: 0;
  font:
    700 28px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-lead {
  margin: 0;
  font:
    400 clamp(17px, 1.6vw, 20px) / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  text-wrap: pretty;
}
.rhd .rhd-body {
  margin: 0;
  font:
    400 16px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-small {
  margin: 0;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-caps {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-caps--tight {
  letter-spacing: 0.14em;
}

/* ---------- layout ---------- */
.rhd .rhd-container {
  max-width: 1240px;
  margin: 0 auto;
  padding-left: clamp(16px, 4vw, 40px);
  padding-right: clamp(16px, 4vw, 40px);
}
.rhd .rhd-section {
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(56px, 8vw, 104px);
}
.rhd .rhd-rule-bottom {
  border-bottom: 1.5px solid var(--ink);
}

/* ---------- stamps: hanko, section label, grade, frame no. ---------- */
.rhd .rhd-hanko {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  background: var(--beni);
  color: var(--paper);
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  line-height: 1;
  transform: rotate(-3deg);
}
.rhd .rhd-hanko--plain {
  transform: none;
}
.rhd .rhd-stamp {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--paper);
  background: var(--beni);
  padding: 5px 6px;
  border-radius: 2px;
}
.rhd .rhd-stamp--sm {
  font-size: 14px;
  padding: 6px 7px;
}
.rhd .rhd-label {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-label--tight {
  gap: 8px;
}
.rhd .rhd-grade {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-frame-no {
  font:
    600 15px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 6px 9px;
  border: 1.5px dashed var(--beni);
}

/* ---------- buttons ---------- */
.rhd .rhd-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 15px 22px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  font:
    600 16px / 1 "IBM Plex Sans",
    sans-serif;
  text-decoration: none;
  cursor: pointer;
  color: var(--ink);
  background: transparent;
}
.rhd .rhd-btn--sm {
  padding: 12px 18px;
  font-size: 15px;
}
.rhd .rhd-btn--md {
  padding: 14px 20px;
  font-size: 15px;
}
.rhd .rhd-btn--block {
  display: flex;
  width: 100%;
}
.rhd .rhd-btn--primary {
  background: var(--amber);
  color: var(--on-amber);
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-btn--paper {
  background: var(--paper);
  color: var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-btn--onColor {
  color: inherit;
  border-color: currentColor;
}
.rhd .rhd-btn--primary:hover,
.rhd .rhd-btn--paper:hover {
  color: inherit;
  transform: translate(1px, 1px);
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-btn--primary:hover {
  color: var(--on-amber);
}
.rhd .rhd-btn--secondary:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .rhd-btn--onColor:hover {
  color: inherit;
}

/* ---------- cards / panels ---------- */
.rhd .rhd-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
}
.rhd .rhd-card--shadow-sm {
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-card--shadow {
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-card--shadow-lg {
  box-shadow: 8px 8px 0 var(--shadow);
}

/* ---------- chips & pills ---------- */
.rhd .rhd-chip {
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  padding: 6px 8px;
  border: 1px solid var(--rule);
  border-radius: 2px;
}
.rhd .rhd-chip--ink {
  border-color: var(--ink);
}
.rhd .rhd-doc {
  display: inline-flex;
  gap: 7px;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .rhd-doc__k {
  font-family: "Shippori Mincho B1", serif;
  color: var(--beni);
}
.rhd .rhd-doc--missing {
  border: 1.5px dashed var(--beni);
  background: transparent;
  color: var(--beni);
}
.rhd .rhd-pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 9px;
  border-radius: 20px;
  border: 1px solid transparent;
}
.rhd .rhd-pill--watching {
  border-color: var(--rule);
  color: var(--ink-2);
}
.rhd .rhd-pill--bidding {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-pill--won {
  background: var(--ok);
  color: var(--paper);
}
.rhd .rhd-pill--importing {
  background: var(--ai);
  color: var(--on-ai);
}
.rhd .rhd-pill--owned {
  border-color: var(--ink);
}
.rhd .rhd-pill--sold {
  background: var(--ink);
  color: var(--paper);
}

/* ---------- cost line ---------- */
.rhd .rhd-cost-line {
  border: 1.5px solid var(--ink);
  background: var(--card);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding: 10px 14px;
}
.rhd .rhd-cost-line__label {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-cost-line__amount {
  font:
    500 14px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-cost-line__basis {
  font:
    400 11.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-cost-line__source {
  font:
    500 11.5px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
  text-align: right;
}

/* ---------- annotated step & timeline station ---------- */
.rhd .rhd-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.rhd .rhd-step__k {
  font:
    700 36px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-step__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .rhd-step__title {
  font:
    600 18px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-step__text {
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-callout {
  color: var(--beni);
  font-weight: 600;
}
.rhd .rhd-station {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
}
.rhd .rhd-station--done {
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-station--next {
  border: 2px solid var(--ink);
}
.rhd .rhd-station-link {
  flex: 1;
  height: 3px;
  background-image: repeating-linear-gradient(90deg, var(--ink) 0 10px, transparent 10px 16px);
}

/* ---------- FAQ accordion ---------- */
.rhd .rhd-faq {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1px solid var(--rule);
}
.rhd .rhd-faq + .rhd-faq {
  border-top: 0;
}
.rhd .rhd-faq__q {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq__a {
  margin: 0 0 14px;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-faq--lg .rhd-faq__q {
  padding: 18px 0;
  font:
    600 17px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq--lg .rhd-faq__a {
  margin: 0 0 18px;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq--lg .rhd-plus {
  font-size: 22px;
}
.rhd .rhd-plus {
  font:
    400 20px / 1 "IBM Plex Mono",
    monospace;
  color: var(--amber);
  transition: transform 0.2s;
}

/* ---------- form fields ---------- */
.rhd .rhd-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-field__hint {
  font-weight: 400;
  color: var(--ink-2);
  font-size: 12px;
  margin-top: -4px;
}
.rhd .rhd-input {
  height: 48px;
  padding: 0 12px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  font:
    400 16px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .rhd-input--quiet {
  border-color: var(--rule);
}
.rhd .rhd-input--mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd select.rhd-input {
  padding: 0 10px;
}
.rhd textarea.rhd-input {
  height: auto;
  min-height: 96px;
  padding: 10px 12px;
  resize: vertical;
}
.rhd .rhd-input:focus {
  outline: 3px solid var(--hl);
}
.rhd .rhd-toggle-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: 0;
  padding: 0;
  margin: 0;
}
.rhd .rhd-toggle {
  min-height: 44px;
  padding: 0 14px;
  border: 1.5px solid var(--rule);
  background: transparent;
  color: var(--ink);
  border-radius: 2px;
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-toggle[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}

/* ---------- bands (indigo wood / amber seigaiha) ---------- */
.rhd .rhd-band-ai {
  background: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
}
.rhd .rhd-band-amber {
  background: var(--amber);
  background-image: var(--seigaiha);
  color: var(--on-amber);
}
.rhd .rhd-seigaiha-strip {
  height: 28px;
  background-image: var(--seigaiha);
}

/* ---------- logo ---------- */
.rhd .rhd-logo {
  display: flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
  color: var(--ink);
  flex-shrink: 0;
}
.rhd .rhd-logo__word {
  font:
    700 19px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0.01em;
}
.rhd .rhd-logo__dms {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.06em;
  border: 1.5px solid var(--ink);
  padding: 3px 5px 2px;
  border-radius: 2px;
  margin-left: 2px;
}

/* ---------- mock browser window (product UI close-ups) ---------- */
.rhd .rhd-window {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  border-radius: 4px;
  overflow: hidden;
}
.rhd .rhd-window__bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-bottom: 1.5px solid var(--ink);
  background: var(--paper-2);
}
.rhd .rhd-window__dots {
  display: flex;
  gap: 5px;
}
.rhd .rhd-window__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1.5px solid var(--ink);
}
.rhd .rhd-window__url {
  flex: 1;
  min-width: 0;
  background: var(--card);
  border: 1px solid var(--rule);
  border-radius: 2px;
  padding: 5px 10px;
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* ---------- seal (rotated ring stamp: 受付, 近日, 先行) ---------- */
.rhd .rhd-seal {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  color: var(--beni);
  border: 2.5px solid var(--beni);
  border-radius: 50%;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  line-height: 1;
  transform: rotate(-10deg);
}

/* ---------- screen-reader-only text ---------- */
.rhd .rhd-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ---------- screenshot (a real app screen in a window frame) ---------- */
.rhd .rhd-shot {
  margin: 0;
  min-width: 0;
}
.rhd .rhd-shot__img {
  display: block;
  width: 100%;
  height: auto;
  background: var(--paper-2);
}
/* With both themes given, each theme shows its own: the explicit toggle first, else the OS. */
.rhd .rhd-shot__img--dark {
  display: none;
}
.rhd[data-theme="dark"] .rhd-shot__img--light {
  display: none;
}
.rhd[data-theme="dark"] .rhd-shot__img--dark {
  display: block;
}
@media (prefers-color-scheme: dark) {
  .rhd:not([data-theme="light"]) .rhd-shot__img--light {
    display: none;
  }
  .rhd:not([data-theme="light"]) .rhd-shot__img--dark {
    display: block;
  }
}
/* A cropped excerpt: the screen's own card edge, no browser chrome. */
.rhd .rhd-shot__crop {
  border: 1.5px solid var(--ink);
  border-radius: 3px;
  overflow: hidden;
  background: var(--paper);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-shot__caption {
  margin-top: 14px;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- audience card (who it's for, its promise, the way in) ---------- */
.rhd .rhd-audience {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 28px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  border-radius: 4px;
  box-shadow: 6px 6px 0 var(--shadow);
  min-width: 0;
}
.rhd .rhd-audience__head {
  display: flex;
  align-items: center;
  gap: 14px;
}
.rhd .rhd-audience__k {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  border-radius: 3px;
  color: var(--beni);
  font:
    800 24px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-audience__who {
  font:
    500 12px / 1.3 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-audience__title {
  margin: 4px 0 0;
  font:
    800 26px / 1.15 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .rhd-audience__promise {
  margin: 0;
  font:
    400 17px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .rhd-audience__points {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
  font:
    400 15px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-audience__points li {
  display: flex;
  gap: 10px;
}
.rhd .rhd-audience__points li::before {
  content: "✓";
  color: var(--ok);
  font-weight: 700;
}
.rhd .rhd-audience__foot {
  margin-top: auto;
  padding-top: 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
}
.rhd .rhd-audience__aside {
  font:
    500 13px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
@media (max-width: 600px) {
  .rhd .rhd-audience {
    padding: 22px 18px;
    box-shadow: 4px 4px 0 var(--shadow);
  }
  .rhd .rhd-audience__title {
    font-size: 22px;
  }
}

/* Right Hand DMS — signed-in app components.
   Source of truth: design-mockups/app-rebuild (App-Components.dc.html, App-Sidebar.dc.html and
   the Screen-*.dc.html screens). Everything is scoped to .rhd like the marketing library;
   class names are rhd-* so pages compose them, page-only layout goes in the page's own CSS. */

/* ---------- shell ---------- */
.rhd.rhd-app {
  display: flex;
  align-items: stretch;
  min-height: 100vh;
}
.rhd .rhd-side {
  position: sticky;
  top: 0;
  flex: 0 0 236px;
  width: 236px;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background-color: var(--paper-2);
  background-image: var(--grain);
  border-right: 1.5px solid var(--ink);
}
.rhd .rhd-side__brand {
  height: 64px;
  flex: none;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-bottom: 1.5px solid var(--ink);
  text-decoration: none;
  color: var(--ink);
}
.rhd .rhd-side__brand:hover {
  color: var(--ink);
}
.rhd .rhd-brand-mark {
  width: 30px;
  height: 30px;
  flex: none;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 19px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 3px;
  box-shadow:
    inset 0 0 0 2px var(--beni),
    inset 0 0 0 3.5px var(--paper);
  transform: rotate(-3deg);
}
.rhd .rhd-brand-name {
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  white-space: nowrap;
}
.rhd .rhd-brand-name b {
  font:
    600 11.5px "IBM Plex Mono",
    monospace;
  letter-spacing: 0.06em;
  border: 1.5px solid var(--ink);
  padding: 2px 4px 1px;
  border-radius: 2px;
}
.rhd .rhd-side__nav {
  flex: 1;
  overflow-y: auto;
  padding: 16px 12px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .rhd-side__group {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.rhd .rhd-side__group-label {
  padding: 0 10px 6px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-side__item {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 38px;
  padding: 0 10px;
  border: 1.5px solid transparent;
  border-radius: 2px;
  text-decoration: none;
  color: var(--ink);
  font:
    500 14px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-side__item:hover {
  color: var(--ink);
  background: var(--card);
  border-color: var(--rule);
}
.rhd .rhd-side__item[aria-current="page"] {
  border-color: var(--ink);
  background: var(--card);
  box-shadow: 3px 3px 0 var(--shadow);
  font-weight: 600;
}
.rhd .rhd-side__k {
  width: 28px;
  flex: none;
  font:
    700 11px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-side__label {
  flex: 1;
}
.rhd .rhd-count {
  min-width: 22px;
  height: 20px;
  padding: 0 6px;
  display: inline-grid;
  place-items: center;
  background: var(--ink);
  color: var(--paper);
  font:
    600 11px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 10px;
}
.rhd .rhd-count--hot {
  background: var(--beni);
}
/* Amber = waiting on you to do something (a sheet to fetch); beni stays "new". */
.rhd .rhd-count--amber {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-side__foot {
  flex: none;
  border-top: 1.5px solid var(--ink);
  padding: 14px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .rhd-side__user {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.rhd .rhd-avatar {
  width: 34px;
  height: 34px;
  flex: none;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--ink);
  background: var(--card);
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  text-transform: uppercase;
}
.rhd .rhd-side__who {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.rhd .rhd-side__name {
  font:
    600 13.5px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-side__role {
  font:
    400 12px / 1.2 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rhd .rhd-side__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.rhd .rhd-theme-btn {
  width: 34px;
  height: 34px;
  border: 1.5px solid var(--rule);
  background: transparent;
  border-radius: 2px;
  cursor: pointer;
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .rhd-linkbtn {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--amber);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  font:
    500 13.5px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-linkbtn:hover {
  color: var(--beni);
}

/* phone bar + drawer */
.rhd .rhd-phonebar {
  display: none;
}
.rhd .rhd-main {
  flex: 1 1 600px;
  min-width: 0;
  padding: 32px 40px 72px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.rhd .rhd-main__inner {
  width: 100%;
  max-width: 1420px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}
@media (max-width: 760px) {
  .rhd.rhd-app {
    flex-direction: column;
  }
  .rhd .rhd-side--desk {
    display: none;
  }
  .rhd .rhd-phonebar {
    position: sticky;
    top: 0;
    z-index: 40;
    height: 56px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 10px 0 14px;
    background-color: var(--paper);
    background-image: var(--grain);
    border-bottom: 1.5px solid var(--ink);
  }
  .rhd .rhd-phonebar .rhd-brand-mark {
    width: 28px;
    height: 28px;
    font-size: 18px;
  }
  .rhd .rhd-phonebar .rhd-brand-name {
    font-size: 15px;
  }
  .rhd .rhd-main {
    padding: 22px 16px 48px;
  }
}
.rhd .rhd-phonebar__btns {
  margin-left: auto;
  display: flex;
  gap: 6px;
}
.rhd .rhd-phonebar .rhd-theme-btn {
  width: 44px;
  height: 44px;
  font-size: 15px;
}
.rhd .rhd-menu-btn {
  height: 44px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  border-radius: 2px;
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
  cursor: pointer;
}
.rhd .rhd-menu-btn .rhd-count {
  min-width: 20px;
  height: 18px;
  font-size: 10.5px;
}
.rhd .rhd-drawer {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: flex;
}
.rhd .rhd-drawer__panel {
  width: 300px;
  max-width: 84%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--paper-2);
  background-image: var(--grain);
  border-right: 1.5px solid var(--ink);
  box-shadow: 6px 0 0 var(--shadow);
}
.rhd .rhd-drawer__head {
  height: 56px;
  flex: none;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 10px 0 14px;
  border-bottom: 1.5px solid var(--ink);
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-drawer__head .rhd-brand-mark {
  width: 28px;
  height: 28px;
  font-size: 18px;
}
.rhd .rhd-drawer__head .rhd-menu-btn {
  margin-left: auto;
}
.rhd .rhd-drawer__nav {
  flex: 1;
  overflow: auto;
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .rhd-drawer__group-label {
  padding: 12px 6px 4px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-drawer__item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 6px;
  border-bottom: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 15.5px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-drawer__item .rhd-side__k {
  width: 30px;
  font-size: 12px;
}
.rhd .rhd-drawer__here {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .rhd-drawer__foot {
  flex: none;
  border-top: 1.5px solid var(--ink);
  padding: 12px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-drawer__scrim {
  flex: 1;
  background: var(--backdrop);
  border: 0;
  cursor: pointer;
}

/* ---------- page header ---------- */
.rhd .rhd-ph {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: flex-end;
  justify-content: space-between;
  padding-bottom: 22px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-ph--card {
  padding: 24px 28px;
  background: var(--card);
  border: 1.5px solid var(--ink);
}
.rhd .rhd-ph__mark {
  position: absolute;
  right: 220px;
  top: -70px;
  font:
    800 230px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  opacity: 0.045;
  pointer-events: none;
  user-select: none;
}
.rhd .rhd-ph__copy {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  max-width: 760px;
}
.rhd .rhd-ph__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-ktag {
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--paper);
  background: var(--beni);
  padding: 5px 6px;
  border-radius: 2px;
  white-space: nowrap;
}
.rhd .rhd-ktag--sm {
  font-size: 13px;
  padding: 4px 5px;
}
.rhd .rhd-eyebrow {
  font:
    600 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-ph__title {
  margin: 0;
  font:
    800 40px / 1.02 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.01em;
}
.rhd .rhd-ph__sub {
  margin: 0;
  font:
    400 16px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-ph__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.rhd .rhd-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  font:
    500 13px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
@media (max-width: 760px) {
  .rhd .rhd-ph__title {
    font-size: 32px;
  }
  .rhd .rhd-ph__mark {
    right: -20px;
    top: -40px;
    font-size: 160px;
  }
}

/* section heading inside a page (Mincho 24px + optional link on the right) */
.rhd .rhd-sh {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px 16px;
}
.rhd .rhd-sh__title {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-sh__count {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-sh__aside {
  font:
    500 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- buttons ---------- */
.rhd .rhd-b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 17px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--card);
  color: var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
  font:
    600 14.5px / 1 "IBM Plex Sans",
    sans-serif;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
.rhd .rhd-b:hover {
  color: var(--ink);
  background: var(--paper);
}
.rhd .rhd-b:active:not(:disabled) {
  transform: translate(2px, 2px);
  box-shadow: 1px 1px 0 var(--shadow);
}
.rhd .rhd-b--primary {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-b--primary:hover {
  background: var(--amber);
  color: var(--on-amber);
  filter: brightness(1.06);
}
.rhd .rhd-b--danger {
  background: var(--beni);
  color: #fff8ee;
}
.rhd .rhd-b--danger:hover {
  background: var(--beni);
  color: #fff8ee;
  filter: brightness(1.06);
}
.rhd .rhd-b--paper {
  background: var(--paper);
  border-color: var(--rule);
  box-shadow: none;
}
.rhd .rhd-b--paper:hover {
  background: var(--paper-2);
}
.rhd .rhd-b--ghost {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--amber);
}
.rhd .rhd-b--ghost:hover {
  background: var(--amber-wash);
  color: var(--amber);
}
.rhd .rhd-b--lg {
  padding: 13px 18px;
  font-size: 15px;
}
.rhd .rhd-b--sm {
  padding: 8px 11px;
  font-size: 13px;
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-b--sm.rhd-b--paper,
.rhd .rhd-b--sm.rhd-b--ghost {
  box-shadow: none;
}
.rhd .rhd-b--xs {
  padding: 6px 10px;
  font-size: 12.5px;
  box-shadow: none;
}
.rhd .rhd-b--block {
  display: flex;
  width: 100%;
}
.rhd .rhd-b--flat {
  box-shadow: none;
}
.rhd .rhd-b:disabled,
.rhd .rhd-b[aria-disabled="true"] {
  background: var(--paper-2);
  color: var(--ink-2);
  border: 1.5px dashed var(--rule);
  box-shadow: none;
  cursor: not-allowed;
  filter: none;
}
/* Busy (aria-busy: working, not "not now"): the button keeps its border, fill and shadow, so a
   row of buttons stays one size while one of them runs; only the label dims. */
.rhd .rhd-b[aria-busy="true"]:disabled {
  background: var(--card);
  color: var(--ink-2);
  border: 1.5px solid var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
  cursor: progress;
}
.rhd .rhd-b--primary[aria-busy="true"]:disabled {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-b--sm[aria-busy="true"]:disabled {
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-b--paper[aria-busy="true"]:disabled,
.rhd .rhd-b--ghost[aria-busy="true"]:disabled,
.rhd .rhd-b--xs[aria-busy="true"]:disabled,
.rhd .rhd-b--flat[aria-busy="true"]:disabled {
  box-shadow: none;
}
.rhd .rhd-b__dot {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--amber);
  animation: rhd-pulse 1.4s ease-in-out infinite;
}
.rhd .rhd-b__mono {
  font-family: "IBM Plex Mono", monospace;
}
@keyframes rhd-pulse {
  50% {
    opacity: 0.35;
  }
}
.rhd .rhd-b-note {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.rhd .rhd-b-note > span {
  font:
    400 11.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- tags & status marks ---------- */
.rhd .rhd-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border: 1px solid var(--rule);
  border-radius: 2px;
  color: var(--ink-2);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.rhd .rhd-tag--round {
  border-radius: 20px;
  padding: 6px 10px;
}
.rhd .rhd-tag--plain {
  letter-spacing: 0;
  text-transform: none;
  font-size: 12px;
}
.rhd .rhd-tag--ok {
  border-color: var(--ok);
  color: var(--ok);
  background: var(--ok-wash);
}
.rhd .rhd-tag--okSolid {
  border-color: var(--ok);
  color: var(--paper);
  background: var(--ok);
}
/* Tag text leans a fifth toward the ink so it stays 4.5:1 on its own wash, light and dark. */
.rhd .rhd-tag--amber {
  border-color: var(--amber);
  color: color-mix(in srgb, var(--amber) 80%, var(--ink));
  background: var(--amber-wash);
}
.rhd .rhd-tag--amberSolid {
  border-color: var(--amber);
  color: var(--on-amber);
  background: var(--amber);
}
.rhd .rhd-tag--beni {
  border-color: var(--beni);
  color: color-mix(in srgb, var(--beni) 80%, var(--ink));
  background: var(--beni-wash);
}
.rhd .rhd-tag--beniLine {
  border-color: var(--beni);
  color: var(--beni);
}
.rhd .rhd-tag--ai {
  border-color: var(--ai);
  color: var(--ink);
  background: var(--ai-wash);
}
.rhd .rhd-tag--aiSolid {
  border-color: var(--ai);
  color: var(--on-ai);
  background: var(--ai);
}
.rhd .rhd-tag--ink {
  border-color: var(--ink);
  color: var(--ink);
}
.rhd .rhd-tag--inkSolid {
  border-color: var(--ink);
  color: var(--paper);
  background: var(--ink);
}
.rhd .rhd-tag--muted {
  border-color: var(--paper-2);
  color: var(--ink-2);
  background: var(--paper-2);
}
.rhd .rhd-tag--dashed {
  border-style: dashed;
}
.rhd .rhd-tag--strike {
  text-decoration: line-through;
}
.rhd .rhd-tag__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}
.rhd .rhd-tag__dot--amber {
  background: var(--amber);
}

/* site badge (JCD / JDM / PCJ) */
.rhd .rhd-site {
  display: inline-block;
  font:
    600 11px / 1 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.06em;
  padding: 4px 5px 3px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  color: var(--ink);
  background: var(--card);
  white-space: nowrap;
}
.rhd .rhd-site--internal {
  font-weight: 500;
  border: 1px dashed var(--ink-2);
  color: var(--ink-2);
  padding: 4px 6px 3px;
  letter-spacing: 0;
  background: transparent;
}

/* grade stamp — R / RA in amber */
.rhd .rhd-gm {
  width: 40px;
  height: 40px;
  flex: none;
  display: inline-grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-gm--long {
  font-size: 14px;
}
.rhd .rhd-gm--repair {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-gm--sm {
  width: 28px;
  height: 28px;
  border-width: 1.5px;
  font-size: 11px;
}
.rhd .rhd-gm--lg {
  width: 52px;
  height: 52px;
  font-size: 19px;
}

/* recommendation + match meter */
.rhd .rhd-rec {
  display: inline-flex;
  align-items: center;
  padding: 6px 9px;
  border: 1px solid var(--rule);
  border-radius: 2px;
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  white-space: nowrap;
}
.rhd .rhd-rec--bid {
  background: var(--ok);
  border-color: var(--ok);
  color: var(--paper);
}
.rhd .rhd-rec--caution {
  background: var(--amber-wash);
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-rec--avoid {
  background: var(--beni-wash);
  border-color: var(--beni);
  color: var(--beni);
}
.rhd .rhd-match {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  border: 1px solid var(--ink);
  border-radius: 2px;
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  white-space: nowrap;
}
.rhd .rhd-match--weak {
  border-color: var(--rule);
  color: var(--ink-2);
}
.rhd .rhd-match__bar {
  position: relative;
  width: 26px;
  height: 4px;
  background: var(--paper-2);
}
.rhd .rhd-match__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: var(--ok);
}
.rhd .rhd-match--partial .rhd-match__fill {
  background: var(--amber);
}
.rhd .rhd-match--poor .rhd-match__fill {
  background: var(--beni);
}

/* frame number highlight (app size) */
.rhd .rhd-frame {
  display: inline-block;
  font:
    600 13px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  color: var(--ink);
  padding: 5px 8px;
  border: 1.5px dashed var(--beni);
  white-space: nowrap;
}
.rhd .rhd-mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-muted {
  color: var(--ink-2);
}
.rhd .rhd-code {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  padding: 3px 7px;
  background: var(--hl);
  border: 1px dashed var(--rule);
  color: var(--ink);
}

/* ---------- stage stepper ---------- */
.rhd .rhd-stepper {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  padding: 24px 20px 18px;
}
.rhd .rhd-stepper__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  row-gap: 14px;
}
.rhd .rhd-stepper--home .rhd-stepper__grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.rhd .rhd-stepper__stop {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
}
.rhd .rhd-stepper__line {
  position: absolute;
  top: 21px;
  left: calc(50% + 26px);
  right: calc(-50% + 26px);
  height: 3px;
  background: var(--ink);
}
.rhd .rhd-stepper__line--todo {
  height: 0;
  border-top: 2px dashed var(--rule);
  background: none;
}
.rhd .rhd-stepper__dot {
  position: relative;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font:
    700 17px / 1 "Shippori Mincho B1",
    serif;
  background: var(--ink);
  color: var(--paper);
  border: 2px solid var(--ink);
}
.rhd .rhd-stepper__dot--now {
  background: var(--beni);
  border-color: var(--ink);
  box-shadow: 0 0 0 4px var(--beni-wash);
}
.rhd .rhd-stepper__dot--todo {
  background: var(--card);
  color: var(--ink-2);
  border-color: var(--rule);
}
.rhd .rhd-stepper__label {
  font:
    600 12.5px / 1.2 "IBM Plex Sans",
    sans-serif;
  text-align: center;
}
.rhd .rhd-stepper__label--todo {
  color: var(--ink-2);
}
.rhd .rhd-stepper__when {
  font:
    400 11px / 1.2 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  text-align: center;
}
.rhd .rhd-stepper__own {
  grid-column: 3 / -1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  padding: 0 8%;
}
.rhd .rhd-stepper__own-bracket {
  height: 8px;
  border: 1.5px solid var(--beni);
  border-bottom: 0;
}
.rhd .rhd-stepper__own-label {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--beni);
}
.rhd .rhd-stepper__own-label b {
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0;
}
@media (max-width: 760px) {
  .rhd .rhd-stepper {
    padding: 16px 10px 14px;
  }
  .rhd .rhd-stepper__dot {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }
  .rhd .rhd-stepper__line {
    top: 16px;
    left: calc(50% + 20px);
    right: calc(-50% + 20px);
  }
  .rhd .rhd-stepper__label {
    font-size: 11px;
  }
  .rhd .rhd-stepper__when {
    display: none;
  }
  .rhd .rhd-stepper__own {
    grid-column: 2 / -1;
    padding: 0 4%;
  }
  .rhd .rhd-stepper__own-label {
    gap: 5px;
    font-size: 9.5px;
    letter-spacing: 0.08em;
    white-space: nowrap;
  }
}

/* ---------- panels ---------- */
.rhd .rhd-panel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  min-width: 0;
}
.rhd .rhd-panel--flat {
  box-shadow: none;
}
.rhd .rhd-panel__band {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 16px;
  background-color: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  font:
    600 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.rhd .rhd-panel__band-k {
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0;
}
.rhd .rhd-panel__band-aside {
  margin-left: auto;
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  opacity: 0.85;
}
.rhd .rhd-panel__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 14px 18px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-panel__title {
  margin: 0;
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  font:
    700 19px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-panel__body {
  padding: 16px 18px;
}
.rhd .rhd-panel__foot {
  padding: 12px 18px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-rows > * + * {
  border-top: 1px solid var(--rule);
}

/* figures strip */
.rhd .rhd-figs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-fig {
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.rhd .rhd-fig + .rhd-fig {
  border-left: 1.5px solid var(--ink);
}
.rhd .rhd-fig__label {
  font:
    600 10.5px / 1.2 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-fig__value {
  font:
    600 30px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .rhd-fig__note {
  font:
    400 13px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
@media (max-width: 760px) {
  .rhd .rhd-figs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .rhd .rhd-fig + .rhd-fig {
    border-left: 0;
  }
  .rhd .rhd-fig:nth-child(even) {
    border-left: 1.5px solid var(--ink);
  }
  .rhd .rhd-fig:nth-child(n + 3) {
    border-top: 1.5px solid var(--ink);
  }
  .rhd .rhd-fig__value {
    font-size: 26px;
  }
}

/* key/value list */
.rhd .rhd-kv {
  display: grid;
  grid-template-columns: minmax(110px, auto) 1fr;
  gap: 8px 16px;
  margin: 0;
  font:
    400 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-kv dt {
  color: var(--ink-2);
}
.rhd .rhd-kv dd {
  margin: 0;
  min-width: 0;
}

/* ---------- form controls ---------- */
.rhd .rhd-f {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
  font:
    600 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-f__hint {
  font:
    400 12px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-f__err {
  font:
    500 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}
.rhd .rhd-in {
  width: 100%;
  height: 44px;
  padding: 0 12px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  font:
    400 15px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd textarea.rhd-in {
  height: auto;
  padding: 10px 12px;
  line-height: 1.5;
  resize: vertical;
}
.rhd .rhd-in--sm {
  height: 36px;
  font-size: 14px;
}
.rhd .rhd-in--mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-in:focus {
  outline: 2px solid var(--amber);
  outline-offset: 1px;
}
.rhd .rhd-in[aria-invalid="true"] {
  border-color: var(--beni);
  background: var(--beni-wash);
}
.rhd .rhd-in:disabled {
  background: var(--paper-2);
  color: var(--ink-2);
  border-style: dashed;
  border-color: var(--rule);
}
.rhd .rhd-sel {
  position: relative;
  display: flex;
}
.rhd .rhd-sel select {
  appearance: none;
  padding-right: 34px;
}
.rhd .rhd-sel__arrow {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 11px;
  pointer-events: none;
}
.rhd .rhd-affix {
  display: flex;
  height: 44px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-affix--sm {
  height: 36px;
}
.rhd .rhd-affix__pre {
  min-width: 38px;
  padding: 0 8px;
  display: grid;
  place-items: center;
  border-right: 1px solid var(--rule);
  font:
    600 15px "IBM Plex Mono",
    monospace;
  color: var(--amber);
}
.rhd .rhd-affix input {
  flex: 1;
  min-width: 0;
  padding: 0 10px;
  border: 0;
  background: transparent;
  font:
    600 15px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-affix:focus-within {
  outline: 2px solid var(--amber);
  outline-offset: 1px;
}
.rhd .rhd-affix input:focus {
  outline: none;
}

/* segmented toggle */
.rhd .rhd-seg {
  display: inline-flex;
  align-self: flex-start;
  flex-wrap: wrap;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--paper);
}
.rhd .rhd-seg__opt {
  min-width: 58px;
  height: 38px;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--rule);
  background: transparent;
  color: var(--ink);
  font:
    600 13.5px / 1 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-seg__opt:last-child {
  border-right: 0;
}
.rhd .rhd-seg__opt[aria-pressed="true"] {
  background: var(--ink);
  color: var(--paper);
}

/* choice cards ("For: my shop / a customer") */
.rhd .rhd-choices {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 6px;
  padding: 5px;
  margin: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  min-width: 0;
}
.rhd .rhd-choice {
  padding: 11px 12px;
  border: 1px solid var(--rule);
  background: transparent;
  text-align: left;
  cursor: pointer;
  color: var(--ink);
  border-radius: 0;
}
.rhd .rhd-choice[aria-pressed="true"] {
  border: 2px solid var(--amber);
  padding: 10px 11px;
  background: var(--paper);
}
.rhd .rhd-choice__title {
  display: block;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-choice__desc {
  display: block;
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* chip filters with counts */
.rhd .rhd-fchips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.rhd .rhd-fchip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 32px;
  padding: 0 11px;
  border: 1.5px solid var(--rule);
  background: transparent;
  color: var(--ink);
  font:
    600 13px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  cursor: pointer;
  white-space: nowrap;
}
.rhd .rhd-fchip[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-fchip--mono {
  height: 30px;
  padding: 0 10px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12.5px;
}
.rhd .rhd-fchip--repair {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-fchip--repair[aria-pressed="true"] {
  background: var(--amber);
  border-color: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-fchip__n {
  font:
    500 11.5px / 1 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}

/* checkbox + switch */
.rhd .rhd-check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font:
    500 14px / 1.4 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-check input {
  appearance: none;
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  cursor: pointer;
}
.rhd .rhd-check input:checked {
  background: var(--ink);
}
.rhd .rhd-check input:checked::after {
  content: "✓";
  color: var(--paper);
  font:
    700 12px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-check input:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .rhd-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ink);
  cursor: pointer;
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  text-align: left;
}
.rhd .rhd-switch__track {
  position: relative;
  flex: none;
  width: 42px;
  height: 24px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-switch__knob {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 17px;
  height: 17px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  border-radius: 1px;
  transition: left 0.15s;
}
.rhd .rhd-switch[aria-checked="true"] .rhd-switch__track {
  background: var(--ok);
}
.rhd .rhd-switch[aria-checked="true"] .rhd-switch__knob {
  left: 20px;
  background: var(--paper);
}
.rhd .rhd-switch:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* combobox (shared Combobox component) */
.rhd .rhd-combo {
  position: relative;
}
.rhd .rhd-combo__list {
  position: absolute;
  z-index: 30;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  max-height: 320px;
  overflow: auto;
  margin: 0;
  padding: 4px;
  list-style: none;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-combo__group {
  padding: 8px 10px 6px;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-combo__opt {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 10px;
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  cursor: pointer;
}
.rhd .rhd-combo__opt[aria-selected="true"],
.rhd .rhd-combo__opt:hover {
  background: var(--paper-2);
}
.rhd .rhd-combo__hint {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-combo__empty {
  padding: 9px 10px;
  font:
    400 13.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-tokens {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  min-height: 44px;
  padding: 6px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-tokens input {
  flex: 1;
  min-width: 80px;
  border: 0;
  background: transparent;
  font:
    400 14px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .rhd-tokens input:focus {
  outline: none;
}
.rhd .rhd-token {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 28px;
  padding: 0 4px 0 9px;
  background: var(--card);
  border: 1px solid var(--ink);
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .rhd-token button {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  background: none;
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  cursor: pointer;
}

/* inline amount entry (Bid ¥) */
.rhd .rhd-amount {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: stretch;
}
.rhd .rhd-amount .rhd-affix {
  height: 36px;
  border-color: var(--amber);
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-amount .rhd-affix__pre {
  font-size: 14px;
}
.rhd .rhd-amount .rhd-affix input {
  width: 110px;
  font-size: 14px;
}
.rhd .rhd-amount__x {
  width: 36px;
  padding: 0;
  background: var(--paper);
  border: 1.5px solid var(--rule);
  font:
    500 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  color: var(--ink);
  cursor: pointer;
}

/* ---------- tabs (ledger index tabs) ---------- */
.rhd .rhd-tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1.5px solid var(--ink);
  padding-left: 4px;
  overflow-x: auto;
}
.rhd .rhd-tab {
  position: relative;
  top: 1.5px;
  flex: none;
  height: 42px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--rule);
  border-bottom: 1.5px solid var(--ink);
  background: var(--paper-2);
  color: var(--ink);
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px 2px 0 0;
  cursor: pointer;
  text-decoration: none;
}
.rhd .rhd-tab:hover {
  color: var(--ink);
}
.rhd .rhd-tab[aria-selected="true"] {
  border-color: var(--ink);
  border-bottom-color: var(--card);
  background: var(--card);
  font-weight: 600;
}
.rhd .rhd-tab__n {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-tabpanel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  border-top: 0;
  padding: 16px 18px;
}

/* ---------- lot card & result card ---------- */
.rhd .rhd-lot {
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .rhd-photo {
  position: relative;
  aspect-ratio: 4 / 3;
  background: repeating-linear-gradient(135deg, var(--paper-2) 0 8px, var(--card) 8px 16px);
  display: grid;
  place-items: center;
  overflow: hidden;
}
.rhd .rhd-photo > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rhd .rhd-photo__none {
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-lot .rhd-photo {
  border-bottom: 1.5px solid var(--ink);
  overflow: visible;
}
.rhd .rhd-lot .rhd-photo > img {
  overflow: hidden;
}
.rhd .rhd-photo__when {
  position: absolute;
  left: 8px;
  top: 8px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 7px;
  background: var(--ai);
  color: var(--on-ai);
  border-radius: 2px;
}
.rhd .rhd-photo__when--past {
  background: var(--paper-2);
  color: var(--ink-2);
  border: 1px solid var(--rule);
}
.rhd .rhd-photo__site {
  position: absolute;
  right: 8px;
  top: 8px;
}
.rhd .rhd-photo__grade {
  position: absolute;
  right: 10px;
  bottom: -14px;
  background: var(--card);
}
.rhd .rhd-photo__count {
  position: absolute;
  left: 8px;
  bottom: 8px;
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  padding: 4px 6px;
  background: var(--card);
  border: 1px solid var(--rule);
}
.rhd .rhd-photo__new {
  position: absolute;
  left: -8px;
  top: -8px;
  font:
    700 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 7px;
  background: var(--beni);
  color: #fff8ee;
  transform: rotate(-4deg);
}
.rhd .rhd-lot__body {
  padding: 14px 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.rhd .rhd-lot__title {
  font:
    600 15.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
  text-decoration: none;
}
.rhd a.rhd-lot__title:hover {
  color: var(--amber);
}
.rhd .rhd-lot__mono {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-lot__meta {
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-lot__price {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid var(--rule);
}
.rhd .rhd-lot__yen {
  font:
    600 17px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-lot__assess {
  font:
    600 12px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-lot__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 14px 14px;
}
.rhd .rhd-lot__actions .rhd-b {
  flex: 1;
}

.rhd .rhd-result {
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .rhd-result__top {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 16px;
}
.rhd .rhd-result__photo {
  position: relative;
  flex: 0 0 180px;
  aspect-ratio: 4 / 3;
  border: 1.5px solid var(--ink);
}
.rhd .rhd-result__info {
  flex: 1 1 260px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.rhd .rhd-result__title {
  font:
    600 17px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-result__why {
  margin: 0;
  padding: 0 16px 14px;
  font:
    400 14px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  text-wrap: pretty;
}
.rhd .rhd-bidrange {
  display: grid;
  grid-template-columns: repeat(var(--cells, 3), 1fr);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1px solid var(--rule);
}
.rhd .rhd-bidrange__cell {
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.rhd .rhd-bidrange__cell + .rhd-bidrange__cell {
  border-left: 1px solid var(--rule);
}
.rhd .rhd-bidrange__cell--target {
  background: var(--amber-wash);
}
.rhd .rhd-bidrange__label {
  font:
    600 10.5px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__cell--target .rhd-bidrange__label {
  color: var(--amber);
}
.rhd .rhd-bidrange__cell--max {
  background: var(--ai-wash);
}
.rhd .rhd-bidrange__cell--max .rhd-bidrange__label {
  color: var(--ai);
}
@media (max-width: 760px) {
  .rhd .rhd-bidrange[data-cells="4"] {
    grid-template-columns: repeat(2, 1fr);
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell:nth-child(3) {
    border-left: none;
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell:nth-child(n + 3) {
    border-top: 1px solid var(--rule);
  }
}
.rhd .rhd-bidrange__yen {
  font:
    600 16px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-bidrange__usd {
  font:
    400 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__profit {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__profit[data-tone="ok"] {
  color: var(--ok, var(--ink));
}
.rhd .rhd-bidrange__profit[data-tone="loss"] {
  color: var(--beni);
}
.rhd .rhd-bidrange__cell--muted .rhd-bidrange__yen {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__badge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  padding: 8px 16px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__badge + .rhd-bidrange {
  border-top-width: 1.5px;
}
@media (max-width: 760px) {
  /* An empty range (one cell spanning three) + max bid: stack them. */
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell[data-span="3"] {
    grid-column: 1 / -1 !important;
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell[data-span="3"] + .rhd-bidrange__cell {
    grid-column: 1 / -1;
    border-left: none;
    border-top: 1px solid var(--rule);
  }
}
.rhd .rhd-result__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 12px 16px;
}
.rhd .rhd-result__start {
  margin-right: auto;
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-result__start b {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.rhd .rhd-thumb {
  width: 44px;
  height: 33px;
  padding: 0;
  border: 1px solid var(--rule);
  background: repeating-linear-gradient(135deg, var(--paper-2) 0 5px, var(--card) 5px 10px);
  overflow: hidden;
  cursor: pointer;
}
.rhd .rhd-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.rhd .rhd-thumb--more {
  width: auto;
  padding: 0 8px;
  display: grid;
  place-items: center;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  background: transparent;
}

/* ---------- data table ---------- */
.rhd .rhd-table {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  overflow-x: auto;
}
.rhd .rhd-table table {
  width: 100%;
  border-collapse: collapse;
}
.rhd .rhd-table th {
  padding: 12px 16px;
  text-align: left;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--ink-2);
  background: var(--paper-2);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-table--ai th {
  background-color: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  border-bottom: 0;
}
.rhd .rhd-table th button {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
}
.rhd .rhd-table td {
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    400 14px / 1.35 "IBM Plex Sans",
    sans-serif;
  vertical-align: middle;
}
.rhd .rhd-table tbody tr:hover {
  background: var(--paper);
}
.rhd .rhd-table tbody tr[data-href] {
  cursor: pointer;
}
.rhd .rhd-table .num {
  text-align: right;
  font:
    500 13.5px "IBM Plex Mono",
    monospace;
  white-space: nowrap;
}
.rhd .rhd-table th.num {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
}
.rhd .rhd-table tfoot td {
  padding: 12px 16px;
  border-top: 1.5px solid var(--ink);
  border-bottom: 0;
  background: var(--paper-2);
  font:
    600 13.5px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-table tfoot .rhd-table__foot-label {
  font:
    600 12px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.rhd .rhd-table__car {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.rhd .rhd-table__car b {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-table__car span {
  font:
    500 11.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
/* stacked rows on phones: pages render .rhd-stack instead of the table under 760px */
.rhd .rhd-stack {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-stack__row {
  padding: 12px 14px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .rhd-stack__head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.rhd .rhd-stack__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 14px;
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-stack__grid > span {
  display: flex;
  justify-content: space-between;
  gap: 6px;
}
.rhd .rhd-stack__grid b {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-stack__foot {
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-desk-only {
  display: block;
}
.rhd .rhd-phone-only {
  display: none;
}
@media (max-width: 760px) {
  .rhd .rhd-desk-only {
    display: none;
  }
  .rhd .rhd-phone-only {
    display: block;
  }
}

/* ---------- banners, progress, toasts, empty, skeleton ---------- */
.rhd .rhd-banner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  padding: 12px 16px;
  background: var(--ai-wash);
  border: 1.5px solid var(--ai);
  color: var(--ink);
}
.rhd .rhd-banner--warn {
  background: var(--amber-wash);
  border-color: var(--amber);
}
.rhd .rhd-banner--error {
  background: var(--beni-wash);
  border-color: var(--beni);
}
.rhd .rhd-banner--ok {
  background: var(--ok-wash);
  border-color: var(--ok);
}
.rhd .rhd-banner__k {
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-banner--warn .rhd-banner__k {
  color: var(--amber);
}
.rhd .rhd-banner--error .rhd-banner__k {
  color: var(--beni);
}
.rhd .rhd-banner--ok .rhd-banner__k {
  color: var(--ok);
}
.rhd .rhd-banner__text {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  font:
    500 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-banner__title {
  font:
    600 14.5px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-banner__body {
  font-weight: 400;
  font-size: 13.5px;
  color: var(--ink-2);
}
.rhd .rhd-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rhd .rhd-progress {
  height: 14px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  position: relative;
}
.rhd .rhd-progress__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background-color: var(--amber);
  background-image: var(--seigaiha);
  transition: width 0.4s;
}
.rhd .rhd-tally {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--rule);
  border: 1px solid var(--rule);
}
.rhd .rhd-tally__cell {
  background: var(--card);
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.rhd .rhd-tally__n {
  font:
    600 18px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-tally__label {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

.rhd .rhd-toasts {
  position: fixed;
  z-index: 120;
  right: 20px;
  bottom: max(20px, env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: min(420px, calc(100vw - 32px));
}
.rhd .rhd-toast {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: var(--card);
  border: 1.5px solid var(--ok);
  box-shadow: 4px 4px 0 var(--shadow);
  border-radius: 2px;
  color: var(--ink);
}
.rhd .rhd-toast--ink {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
  box-shadow: 4px 4px 0 var(--amber);
}
.rhd .rhd-toast--error {
  border-color: var(--beni);
}
.rhd .rhd-toast__k {
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ok);
}
.rhd .rhd-toast--ink .rhd-toast__k {
  color: var(--hl);
}
.rhd .rhd-toast--error .rhd-toast__k {
  color: var(--beni);
}
.rhd .rhd-toast__text {
  flex: 1;
  font:
    500 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-toast__act {
  padding: 0;
  background: none;
  border: 0;
  color: var(--amber);
  font:
    600 13.5px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-toast--ink .rhd-toast__act {
  color: var(--hl);
}
/* 44pt targets for the toast's buttons (HIG). */
.rhd .rhd-toast__act,
.rhd .rhd-toast__x {
  min-height: 44px;
  min-width: 44px;
}
.rhd .rhd-toast__x {
  margin: -12px -8px -12px 0;
  padding: 0;
  background: none;
  border: 0;
  color: var(--ink-2);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}
.rhd .rhd-toast--ink .rhd-toast__x {
  color: var(--paper);
}
.rhd .rhd-toast {
  animation: rhd-toast-in 0.18s ease-out;
}
@keyframes rhd-toast-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .rhd .rhd-toast {
    animation: none;
  }
}
@media (max-width: 600px) {
  .rhd .rhd-toasts {
    left: 16px;
    right: 16px;
    max-width: none;
  }
}

.rhd .rhd-empty {
  padding: 36px 24px;
  border: 1.5px dashed var(--ink-2);
  background: var(--card);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
}
.rhd .rhd-empty--compact {
  padding: 22px 18px;
  gap: 8px;
}
.rhd .rhd-empty__seal {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 24px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-empty--compact .rhd-empty__seal {
  width: 44px;
  height: 44px;
  font-size: 18px;
}
.rhd .rhd-empty__title {
  margin: 0;
  font:
    700 21px / 1.25 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-empty--compact .rhd-empty__title {
  font-size: 18px;
}
.rhd .rhd-empty__body {
  margin: 0;
  max-width: 380px;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

.rhd .rhd-skel {
  display: block;
  height: 12px;
  background: var(--paper-2);
}
.rhd .rhd-skel--block {
  height: auto;
  aspect-ratio: 16 / 7;
}
.rhd .rhd-skel-btn {
  flex: 1;
  height: 30px;
  border: 1.5px dashed var(--rule);
}

/* ---------- modal & confirm ---------- */
.rhd .rhd-overlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 6vh 16px 24px;
  overflow-y: auto;
  background: var(--backdrop);
}
.rhd .rhd-overlay--center {
  align-items: center;
}
.rhd .rhd-modal {
  width: 100%;
  max-width: 460px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  color: var(--ink);
}
.rhd .rhd-modal--md {
  max-width: 620px;
}
.rhd .rhd-modal--lg {
  max-width: 820px;
}
.rhd .rhd-modal--xl {
  max-width: 1040px;
}
.rhd .rhd-modal__head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-modal__title {
  margin: 0;
  flex: 1;
  min-width: 0;
  font:
    700 20px / 1.2 "Shippori Mincho B1",
    serif;
}
/* The dialog takes focus when it opens (Modal); the ring belongs on its controls. */
.rhd .rhd-modal:focus {
  outline: none;
}
.rhd .rhd-modal__x {
  width: 44px;
  height: 44px;
  flex: none;
  padding: 0;
  background: none;
  border: 1.5px solid var(--rule);
  font:
    500 16px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  color: var(--ink);
  cursor: pointer;
}
.rhd .rhd-modal__body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .rhd-modal__foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 18px;
  border-top: 1px solid var(--rule);
}
.rhd .rhd-modal__note {
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-confirm {
  width: 100%;
  max-width: 380px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  color: var(--ink);
}
.rhd .rhd-confirm--danger {
  border-color: var(--beni);
}
.rhd .rhd-confirm__head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-confirm__seal {
  width: 30px;
  height: 30px;
  flex: none;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-confirm__title {
  margin: 0;
  font:
    700 20px / 1.25 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-confirm__msg {
  margin: 0;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-confirm__detail {
  margin: 0;
  font:
    500 13px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-confirm__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 4px;
}

/* ---------- drop zone & upload queue ---------- */
.rhd .rhd-drop {
  padding: 36px 24px;
  border: 2px dashed var(--ink-2);
  background: var(--paper-2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
}
.rhd .rhd-drop--over {
  border-color: var(--amber);
  background: var(--amber-wash);
}
.rhd .rhd-drop__k {
  font:
    800 44px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-drop__title {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-drop__sub {
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-queue__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-queue__status {
  font:
    600 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ok);
  white-space: nowrap;
}
.rhd .rhd-queue__status--bad {
  color: var(--beni);
}

/* ---------- coming soon ---------- */
.rhd .rhd-soon {
  position: relative;
  border: 1.5px dashed var(--ink-2);
  background: transparent;
  padding: 14px 16px;
  color: var(--ink-2);
}
.rhd .rhd-soon--inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
}
.rhd .rhd-soon__content {
  opacity: 0.55;
  pointer-events: none;
  user-select: none;
}
.rhd .rhd-soon__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 7px;
  border: 1px dashed var(--ink-2);
  background: var(--card);
  color: var(--ink-2);
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
}
.rhd .rhd-soon:not(.rhd-soon--inline) > .rhd-soon__tag {
  position: absolute;
  top: -11px;
  right: 12px;
}

/* ---------- misc ---------- */
.rhd .rhd-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  flex: none;
  border-radius: 50%;
  background: var(--ink-2);
}
.rhd .rhd-dot--amber {
  background: var(--amber);
}
.rhd .rhd-dot--beni {
  background: var(--beni);
}
.rhd .rhd-dot--ok {
  background: var(--ok);
}
.rhd .rhd-err {
  font:
    500 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}
.rhd .rhd-note {
  font:
    400 13px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-arrow-link {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  white-space: nowrap;
}
.rhd .rhd-iframe {
  width: 100%;
  border: 1px solid var(--rule);
  background: #fff;
}

/* Tailwind palette inside the app, mapped onto the woodblock tokens so any utility class
   left on a not-yet-converted piece still reads in the right inks (and flips for dark). */
.rhd.rhd-app {
  --color-white: var(--card);
  --color-black: var(--ink);
  --color-sumi-50: var(--paper);
  --color-sumi-100: var(--paper-2);
  --color-sumi-200: var(--rule);
  --color-sumi-300: var(--rule);
  --color-sumi-400: var(--ink-2);
  --color-sumi-500: var(--ink-2);
  --color-sumi-600: var(--ink-2);
  --color-sumi-700: var(--ink);
  --color-sumi-800: var(--ink);
  --color-sumi-900: var(--ink);
  --color-washi-50: var(--card);
  --color-washi-100: var(--paper);
  --color-washi-200: var(--paper-2);
  --color-washi-300: var(--rule);
  --color-indigo-jp-50: var(--amber-wash);
  --color-indigo-jp-100: var(--amber-wash);
  --color-indigo-jp-200: var(--amber-wash);
  --color-indigo-jp-300: var(--amber);
  --color-indigo-jp-400: var(--amber);
  --color-indigo-jp-500: var(--amber);
  --color-indigo-jp-600: var(--amber);
  --color-indigo-jp-700: var(--amber);
  --color-indigo-jp-800: var(--amber);
  --color-shu-50: var(--beni-wash);
  --color-shu-100: var(--beni-wash);
  --color-shu-200: var(--beni-wash);
  --color-shu-300: var(--beni);
  --color-shu-400: var(--beni);
  --color-shu-500: var(--beni);
  --color-shu-600: var(--beni);
  --color-shu-700: var(--beni);
  --color-shu-800: var(--beni);
  --color-matcha-50: var(--ok-wash);
  --color-matcha-100: var(--ok-wash);
  --color-matcha-200: var(--ok-wash);
  --color-matcha-300: var(--ok);
  --color-matcha-400: var(--ok);
  --color-matcha-500: var(--ok);
  --color-matcha-600: var(--ok);
  --color-matcha-700: var(--ok);
  --color-matcha-800: var(--ok);
  --color-bg: var(--paper);
  --color-surface: var(--paper-2);
  --color-text: var(--ink);
  --color-accent: var(--amber);
  --color-divider: var(--rule);
}

/* A .rhd scope for overlays mounted outside the app tree (confirm dialog). */
.rhd.rhd-portal {
  min-height: 0;
  background: none;
}

/* ---------- contextual help: HelpTip "?" + bubble, HelpLink ---------- */
.rhd .rhd-helptip {
  display: inline-flex;
  vertical-align: middle;
  margin-left: 6px;
}
.rhd .rhd-helptip__btn,
.rhd .rhd-helplink {
  /* 18px mark, 32px hit area for fingers. */
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 1.5px solid var(--ink-2);
  border-radius: 50%;
  background: var(--card);
  color: var(--ink-2);
  font:
    700 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  cursor: help;
}
.rhd .rhd-helptip__btn::after,
.rhd .rhd-helplink::after {
  content: "";
  position: absolute;
  inset: -8px;
}
.rhd .rhd-helptip__btn:hover,
.rhd .rhd-helptip__btn[aria-expanded="true"],
.rhd .rhd-helplink:hover {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-helptip__btn:focus-visible,
.rhd .rhd-helplink:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .rhd-ph__actions .rhd-helplink {
  width: 30px;
  height: 30px;
  font-size: 15px;
  cursor: pointer;
}
.rhd .rhd-helplink--text {
  width: auto;
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--amber);
  font:
    500 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.rhd .rhd-helplink--text::after {
  content: none;
}
.rhd .rhd-helplink--text:hover {
  background: none;
  color: var(--ink);
}
.rhd .rhd-helptip__bubble {
  position: fixed;
  z-index: 95;
  width: max-content;
  max-width: min(300px, calc(100vw - 24px));
  padding: 10px 12px;
  background: var(--ink);
  color: var(--paper);
  border-radius: 2px;
  box-shadow: 4px 4px 0 var(--amber);
  font:
    400 13.5px / 1.45 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  white-space: normal;
  pointer-events: auto;
}
.rhd .rhd-helptip__bubble b {
  font-weight: 600;
}

/* Number fields: no spin buttons. They covered the digits in narrow fields (years), and a
   dealer types the number anyway; the keyboard still steps with arrow keys. */
.rhd input[type="number"]::-webkit-inner-spin-button,
.rhd input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.rhd input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}
.rhd .rhd-allowance-banner {
  margin-bottom: 16px;
}

/* Route crash screen — replaces the app shell, so it carries its own .rhd root. */
.rhd.ra-crash {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px 16px;
}
.rhd .ra-crash__card {
  width: 100%;
  max-width: 560px;
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .ra-crash__seal {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  border-radius: 50%;
  color: var(--beni);
  font:
    700 24px / 1 "Shippori Mincho B1",
    serif;
  transform: rotate(-8deg);
}
.rhd .ra-crash__title {
  margin: 0;
  font:
    700 26px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .ra-crash__sub {
  margin: 0;
  font:
    400 15px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .ra-crash__detail {
  width: 100%;
  margin: 4px 0 0;
  padding: 12px 14px;
  overflow-x: auto;
  text-align: left;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font:
    500 12px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink);
  background: var(--beni-wash);
  border: 1px dashed var(--beni);
}
.rhd .ra-crash__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px 18px;
  margin-top: 6px;
}

/* Marketing-only section backgrounds and illustration colors.
   Scoped to .mk-site, the class MarketingLayout puts on its RhdRoot, so the signed-in app can't
   reach them: app screens shown on these pages always sit on a ground the app itself never uses.
   Same brand as tokens.css (indigo, cream, vermilion, persimmon); what varies is value and
   texture. Consecutive sections should never share a ground.

   Grounds (each a background shorthand: color + texture):
     --mk-ground-washi   the page's own paper and grain: the default, between the others
     --mk-ground-kinari  unbleached cream, lighter than the paper, with long paper fibers
     --mk-ground-sora    pale indigo mist: the cool ground warm app screens pop on
     --mk-ground-shu     faint vermilion wash with a hemp-leaf (asanoha) print
     --mk-ground-ai      deep indigo with the seigaiha wave print: text and art only, never an
                         app screen (a dark screen on it, on a light page, disappears)
   Text stays ink on all but the indigo ground (--mk-on-ai); sora and shu bring their own
   hairline (--mk-rule-*). Put one on a section with its class: mk-ground--sora.

   Illustration colors (--ill-*): the spot art and the kei van draw like a woodblock print. Things
   (the van, a sheet, a hull) keep ink outlines and cream fills in both themes; only lines drawn
   straight on the page (gulls, waves, a roof rack) use --ill-air, which turns light in dark mode. */
.rhd.mk-site {
  --mk-fiber: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27320%27 height=%27160%27%3E%3Cg fill=%27none%27 stroke=%27%237a5c3a%27 stroke-opacity=%27.09%27 stroke-width=%271%27 stroke-linecap=%27round%27%3E%3Cpath d=%27M12 30c40-6 70 4 104-2M160 18c30 3 52-2 80 4M40 92c24 4 50-3 82 1M196 104c34-5 66 3 108-1M8 140c30 2 46-4 70 0M230 60c20-3 44 2 70-2M120 60c14 2 24-1 38 1%27/%3E%3C/g%3E%3C/svg%3E");
  --mk-asanoha: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2756%27 height=%2797%27%3E%3Cg fill=%27none%27 stroke=%27%23b23a28%27 stroke-opacity=%27.1%27 stroke-width=%271%27%3E%3Cpath d=%27M28 0v32.3M28 64.7V97M0 16.2l28 16.1 28-16.1M0 80.8l28-16.1 28 16.1M0 16.2v64.6M56 16.2v64.6M28 32.3 0 80.8M28 32.3l28 48.5M28 64.7 0 16.2M28 64.7l28-48.5%27/%3E%3C/g%3E%3C/svg%3E");

  --mk-washi: var(--paper);
  --mk-kinari: #fdf9f1;
  --mk-sora: #e3e7e8;
  --mk-shu: #f5e3da;
  --mk-ai: #1b2d48;

  --mk-ground-washi: var(--grain) var(--mk-washi);
  --mk-ground-kinari: var(--mk-fiber), var(--grain) var(--mk-kinari);
  --mk-ground-sora: var(--grain) var(--mk-sora);
  --mk-ground-shu: var(--mk-asanoha), var(--grain) var(--mk-shu);
  --mk-ground-ai: var(--seigaiha), var(--wood) var(--mk-ai);

  --mk-on-ai: #f3eada;
  --mk-rule-sora: #b9c3c9;
  --mk-rule-shu: #dfb9a8;

  --ill-line: #2a1c12;
  --ill-air: #2a1c12;
  --ill-paper: #fbf6ec;
  --ill-cream: #f3e6cc;
  --ill-ai: #1f3350;
  --ill-ai-2: #3d5a80;
  --ill-beni: #b23a28;
  --ill-amber: #d9822b;
  --ill-sea: #c9d6dc;
  --ill-hill: #d8c8a8;
  --ill-shade: rgba(42, 28, 18, 0.14);
  --ill-tyre: #2a1c12;
}
.rhd.mk-site[data-theme="dark"] {
  --mk-kinari: #1f1813;
  --mk-sora: #131b27;
  --mk-shu: #26150f;
  --mk-ai: #0e1726;
  --mk-rule-sora: #2c3a4d;
  --mk-rule-shu: #4a2a20;

  --ill-line: #1a120c;
  --ill-air: #e6d8bf;
  --ill-paper: #ece0c8;
  --ill-cream: #e6d3b0;
  --ill-ai: #4a6a94;
  --ill-ai-2: #6d8db5;
  --ill-beni: #e26a54;
  --ill-amber: #e8964f;
  --ill-sea: #22344a;
  --ill-hill: #8a7556;
  --ill-shade: rgba(0, 0, 0, 0.35);
  --ill-tyre: #0d0906;
}
@media (prefers-color-scheme: dark) {
  .rhd.mk-site:not([data-theme="light"]) {
    --mk-kinari: #1f1813;
    --mk-sora: #131b27;
    --mk-shu: #26150f;
    --mk-ai: #0e1726;
    --mk-rule-sora: #2c3a4d;
    --mk-rule-shu: #4a2a20;

    --ill-line: #1a120c;
    --ill-air: #e6d8bf;
    --ill-paper: #ece0c8;
    --ill-cream: #e6d3b0;
    --ill-ai: #4a6a94;
    --ill-ai-2: #6d8db5;
    --ill-beni: #e26a54;
    --ill-amber: #e8964f;
    --ill-sea: #22344a;
    --ill-hill: #8a7556;
    --ill-shade: rgba(0, 0, 0, 0.35);
    --ill-tyre: #0d0906;
  }
}

/* Put a ground on a section: <section className="mk-ground--sora">. */
.rhd .mk-ground--washi {
  background: var(--mk-ground-washi);
}
.rhd .mk-ground--kinari {
  background: var(--mk-ground-kinari);
}
.rhd .mk-ground--sora {
  background: var(--mk-ground-sora);
  --rule: var(--mk-rule-sora);
}
.rhd .mk-ground--shu {
  background: var(--mk-ground-shu);
  --rule: var(--mk-rule-shu);
}
.rhd .mk-ground--ai {
  background: var(--mk-ground-ai);
  color: var(--mk-on-ai);
}

/* Marketing shell (nav, footer, CTA band). Page layouts live next to each page. */

/* ---------- nav ---------- */
/* The nav carries both layouts so a prerendered page is right at any width before JS runs:
   mk-wide shows above 940px, mk-narrow at 940px and below. */
@media (max-width: 940px) {
  .rhd .mk-wide {
    display: none !important;
  }
}
@media not all and (max-width: 940px) {
  .rhd .mk-narrow {
    display: none !important;
  }
}
.rhd .mk-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background-color: var(--paper);
  background-image: var(--grain);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-topstrip__inner {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-top: 7px;
  padding-bottom: 7px;
  font:
    500 11px / 1.3 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.rhd .mk-navbar {
  height: 70px;
  display: flex;
  align-items: center;
  gap: 28px;
}
.rhd .mk-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  font:
    500 15px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-nav__link {
  padding: 10px 12px;
  color: var(--ink);
  text-decoration: none;
}
.rhd .mk-nav__link:hover {
  color: var(--amber);
}
.rhd .mk-nav__product {
  display: flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: 0;
  padding: 10px 12px;
  cursor: pointer;
  font-weight: 500;
  color: var(--ink);
}
.rhd .mk-dropdown {
  position: absolute;
  top: 100%;
  left: -12px;
  width: 560px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  padding: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
}
.rhd .mk-dropdown__item {
  display: flex;
  gap: 12px;
  padding: 12px;
  text-decoration: none;
  color: var(--ink);
  border-radius: 2px;
}
.rhd .mk-dropdown__item:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-dropdown__k {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-dropdown__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-dropdown__name {
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dropdown__line {
  font:
    400 13px / 1.35 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rhd .mk-theme {
  width: 38px;
  height: 38px;
  border: 1.5px solid var(--rule);
  background: transparent;
  border-radius: 2px;
  cursor: pointer;
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-theme--narrow {
  width: 44px;
  height: 44px;
}
/* The theme button's tooltip: on hover and keyboard focus, gone on Escape. */
.rhd .mk-theme-wrap {
  position: relative;
  display: inline-flex;
}
.rhd .mk-theme-tip {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  z-index: 30;
  padding: 6px 10px;
  border-radius: 2px;
  background: var(--ink);
  color: var(--paper);
  font:
    500 13px / 1.2 "IBM Plex Sans",
    sans-serif;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, -2px);
  transition:
    opacity 0.12s ease,
    transform 0.12s ease;
}
/* Near the screen's right edge on phones, so it opens leftward. */
.rhd .mk-theme-wrap--narrow .mk-theme-tip {
  left: auto;
  right: 0;
  transform: translateY(-2px);
}
.rhd .mk-theme-wrap:hover .mk-theme-tip,
.rhd .mk-theme-wrap:has(:focus-visible) .mk-theme-tip {
  opacity: 1;
  transform: translate(-50%, 0);
}
.rhd .mk-theme-wrap--narrow:hover .mk-theme-tip,
.rhd .mk-theme-wrap--narrow:has(:focus-visible) .mk-theme-tip {
  transform: none;
}
.rhd .mk-theme-wrap[data-dismissed] .mk-theme-tip {
  opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
  .rhd .mk-theme-tip {
    transition: none;
  }
}
.rhd .mk-signin {
  padding: 10px 12px;
  color: var(--ink);
  text-decoration: none;
  font:
    500 15px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu-btn {
  height: 44px;
  padding: 0 14px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  border-radius: 2px;
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .mk-menu {
  border-top: 1.5px solid var(--ink);
  background: var(--card);
  padding: 8px 16px 20px;
  max-height: calc(100vh - 100px);
  overflow: auto;
}
.rhd .mk-menu__head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
  padding: 14px 0 6px;
}
.rhd .mk-menu__item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  text-decoration: none;
  color: var(--ink);
  border-bottom: 1px solid var(--rule);
  font:
    500 16px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu__k {
  width: 28px;
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-menu__links {
  display: flex;
  flex-direction: column;
  padding-top: 8px;
}
.rhd .mk-menu__link {
  min-height: 48px;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--ink);
  border-bottom: 1px solid var(--rule);
  font:
    500 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu__link:last-child {
  border-bottom: 0;
}
.rhd .mk-menu__cta {
  margin-top: 12px;
  padding: 15px;
}

/* ---------- CTA band ---------- */
.rhd .mk-cta {
  padding-bottom: 88px;
}
.rhd .mk-cta__panel {
  position: relative;
  overflow: hidden;
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: clamp(32px, 5vw, 56px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.rhd .mk-cta__ghost {
  position: absolute;
  right: -20px;
  bottom: -70px;
  font:
    800 260px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.12;
  pointer-events: none;
}
.rhd .mk-cta__copy {
  position: relative;
  flex: 1 1 420px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-cta__eyebrow {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.rhd .mk-cta__title {
  margin: 0;
  font:
    700 clamp(28px, 3.6vw, 42px) / 1.12 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-cta__sub {
  margin: 0;
  font:
    400 17px / 1.55 "IBM Plex Sans",
    sans-serif;
  max-width: 560px;
}
.rhd .mk-cta__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ---------- footer ---------- */
.rhd .mk-footer {
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-footer .rhd-seigaiha-strip {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}
.rhd .mk-footer__grid {
  padding-top: 56px;
  padding-bottom: 32px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: 40px;
}
.rhd .mk-footer__brand {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.rhd .mk-footer__about {
  margin: 0;
  font:
    400 14px / 1.6 "IBM Plex Sans",
    sans-serif;
  opacity: 0.85;
  text-wrap: pretty;
}
.rhd .mk-footer__contact {
  font:
    500 13px / 1.6 "IBM Plex Mono",
    monospace;
}
.rhd .mk-footer__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font:
    400 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-footer__head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: 0.75;
  margin-bottom: 6px;
}
.rhd .mk-footer__col a,
.rhd .mk-footer__col a:hover {
  color: inherit;
  text-decoration: none;
}
.rhd .mk-footer__base {
  padding-top: 18px;
  padding-bottom: 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  font:
    400 12px / 1.5 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}

/* The card pointing to the other audience, above the closing band on each audience page: the
   band's width, inside padding and shadow, with equal space above and below. */
.rhd .mk-other {
  padding: clamp(40px, 6vw, 64px) 0;
}
.rhd .mk-other .rhd-audience {
  padding: clamp(32px, 5vw, 56px);
  box-shadow: 8px 8px 0 var(--shadow);
}

/* Blog index and article pages. Article bodies are plain HTML (h2, p, ul, ol, table,
   blockquote) styled here, so posts are written as prose rather than components. */

.mk-blog,
.mk-post {
  padding: 56px 0 72px;
}

.mk-blog__title,
.mk-post__title {
  margin: 18px 0 0;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  font-size: clamp(32px, 5vw, 52px);
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--ink);
  max-width: 22ch;
  text-wrap: balance;
}

.mk-blog__lead {
  margin: 18px 0 0;
  max-width: 62ch;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ink);
}

.mk-blog__grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.mk-blog__card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 24px 22px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  border-radius: 4px;
  color: var(--ink);
  text-decoration: none;
  overflow: hidden;
  transition:
    border-color 0.15s ease,
    transform 0.15s ease;
}

.rhd a.mk-blog__card,
.rhd a.mk-blog__card:hover {
  color: var(--ink);
  text-decoration: none;
}

.rhd a.mk-blog__card:hover .mk-blog__card-title {
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
}

.mk-blog__card:hover,
.mk-blog__card:focus-visible {
  border-color: var(--beni);
  transform: translateY(-2px);
}

.mk-blog__card-k {
  position: absolute;
  right: 14px;
  top: 6px;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  font-size: 56px;
  color: var(--beni);
  opacity: 0.12;
}

.mk-blog__card-topic {
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--beni);
}

.mk-blog__card-title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.2;
}

.mk-blog__card-excerpt {
  font-size: 15px;
  line-height: 1.55;
  opacity: 0.85;
}

.mk-blog__card-meta {
  margin-top: auto;
  padding-top: 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  opacity: 0.7;
}

.mk-blog__feed {
  margin-top: 28px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
}

/* ---- article ---- */

.rhd .mk-post__wrap {
  max-width: 820px;
}

.mk-post__crumbs {
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
  margin-bottom: 28px;
  opacity: 0.8;
}

.mk-post__crumbs a {
  color: inherit;
}

.mk-post__meta {
  margin: 14px 0 0;
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
  opacity: 0.75;
}

.mk-post__body {
  margin-top: 36px;
  font-size: 18px;
  line-height: 1.7;
  color: var(--ink);
}

.mk-post__body > * + * {
  margin-top: 1em;
}

.mk-post__body h2 {
  margin-top: 2em;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.2;
}

.mk-post__body h3 {
  margin-top: 1.6em;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 22px;
}

.mk-post__body a {
  color: var(--beni);
}

.mk-post__body ul,
.mk-post__body ol {
  padding-left: 1.3em;
}

.mk-post__body li + li {
  margin-top: 0.4em;
}

.mk-post__body blockquote {
  margin-left: 0;
  padding: 16px 20px;
  border-left: 4px solid var(--amber);
  background: var(--amber-wash);
  font-size: 16px;
}

.mk-post__body code {
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.9em;
}

.mk-post__table {
  overflow-x: auto;
}

.mk-post__body table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.45;
}

.mk-post__body th,
.mk-post__body td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--rule);
  text-align: left;
  vertical-align: top;
}

.mk-post__body th {
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.mk-post__more {
  margin-top: 64px;
  padding-top: 32px;
  border-top: 2px solid var(--rule);
}

.mk-post__more-title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 26px;
}

@media (max-width: 600px) {
  .mk-post__body {
    font-size: 17px;
  }

  .mk-post__body h2 {
    font-size: 25px;
  }
}

/* ---- import cost calculator ---- */

.mk-calc {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 300px);
  gap: 24px;
  margin: 32px 0;
  padding: 24px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  border-radius: 4px;
  font-size: 15px;
  line-height: 1.4;
}

.mk-calc__group {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
}

.mk-calc__group legend {
  margin-bottom: 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--beni);
}

.mk-calc__field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  align-items: center;
  gap: 12px;
  padding: 6px 0;
}

.mk-calc__field--set {
  margin: 0;
  border: 0;
}

.mk-calc__group .mk-calc__field--set legend {
  float: left;
  margin: 0;
  padding: 0;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
  color: inherit;
}

.mk-calc__input {
  display: flex;
  align-items: center;
  border: 1.5px solid var(--rule);
  border-radius: 3px;
  background: var(--paper);
}

.mk-calc__unit {
  padding: 0 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  opacity: 0.7;
}

.mk-calc__input input {
  width: 100%;
  min-width: 0;
  padding: 8px 10px 8px 0;
  border: 0;
  background: transparent;
  color: var(--ink);
  font:
    500 15px "IBM Plex Mono",
    monospace;
  text-align: right;
}

.mk-calc__input:focus-within {
  border-color: var(--ai);
}

.mk-calc__input input:focus {
  outline: none;
}

.mk-calc__basis {
  display: flex;
  border: 1.5px solid var(--rule);
  border-radius: 3px;
  overflow: hidden;
}

.mk-calc__basis button {
  flex: 1;
  padding: 7px 6px;
  border: 0;
  background: var(--paper);
  color: var(--ink);
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}

.mk-calc__basis button.is-on {
  background: var(--ai);
  color: var(--on-ai);
}

.mk-calc__result {
  align-self: start;
  position: sticky;
  top: 24px;
  padding: 18px;
  background: var(--paper);
  border: 1.5px solid var(--rule);
  border-radius: 3px;
}

.mk-calc__line {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  border-bottom: 1px dashed var(--rule);
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
}

.mk-calc__line span:last-child {
  text-align: right;
}

.mk-calc__line--total {
  margin-top: 6px;
  border-bottom: 2px solid var(--ink);
  font-size: 17px;
  font-weight: 600;
}

.mk-calc__line--sale {
  border-bottom: 0;
  color: var(--beni);
  font-weight: 600;
}

@media (max-width: 760px) {
  .mk-calc {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .mk-calc__field {
    grid-template-columns: minmax(0, 1fr) 140px;
  }

  .mk-calc__result {
    position: static;
  }
}

.mk-post__more .mk-blog__grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

/* Shared layout for the /product/* pages (hero, how-it-works, FAQ, "next" link).
   Values from design-mockups/rhd-woodblock/Product-*.dc.html. Pages add their own close-ups and step bodies. */

/* ---------- hero ---------- */
.rhd .mk-pp-hero {
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pp-hero__inner {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: clamp(40px, 6vw, 80px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 56px);
  align-items: center;
}
.rhd .mk-pp-hero--marked {
  position: relative;
  overflow: hidden;
}
.rhd .mk-pp-hero__watermark {
  position: absolute;
  right: -40px;
  top: -30px;
  font:
    800 360px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.045;
  pointer-events: none;
}
.rhd .mk-pp-hero--marked .mk-pp-hero__inner {
  position: relative;
}
.rhd .mk-pp-hero__inner--start {
  align-items: flex-start;
}
.rhd .mk-pp-hero__inner--stack {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 40px;
}
.rhd .mk-pp-hero__copy {
  flex: 1 1 380px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-pp-hero__copy--narrow {
  flex: none;
  max-width: 780px;
}
.rhd .mk-pp-hero__title {
  margin: 0;
  font:
    800 clamp(36px, 5vw, 60px) / 1.05 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-pp-hero__lead {
  margin: 0;
  font:
    400 19px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.rhd .mk-pp-hero__mock {
  flex: 1.3 1 480px;
  min-width: 0;
}

/* ---------- section scaffolding ---------- */
.rhd .mk-pp-section {
  padding-top: clamp(56px, 8vw, 96px);
  padding-bottom: clamp(56px, 8vw, 96px);
}
.rhd .mk-pp-section .rhd-label {
  margin-bottom: 16px;
}
.rhd .mk-pp-section__title {
  margin: 0 0 40px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 720px;
}
.rhd .mk-pp-section__title--loose {
  margin-bottom: 48px;
}
.rhd .mk-pp-section__title--wide {
  max-width: 760px;
}

/* ---------- numbered steps ---------- */
.rhd .mk-pp-steps {
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.rhd .mk-pp-step {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: center;
}
.rhd .mk-pp-step__copy {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-pp-step__k {
  font:
    700 40px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-pp-step__title {
  margin: 0;
  font:
    600 22px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pp-step__text {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-step__ui {
  flex: 1.3 1 400px;
  min-width: 0;
}
.rhd .mk-pp-step__ui--framed {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
}

/* ---------- details band ---------- */
.rhd .mk-pp-details {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pp-details__inner {
  padding-top: clamp(48px, 7vw, 80px);
  padding-bottom: clamp(48px, 7vw, 80px);
}
.rhd .mk-pp-details__title {
  margin: 0 0 32px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-details__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 24px 32px;
}
.rhd .mk-pp-details__item {
  border-top: 1.5px solid var(--ink);
  padding-top: 14px;
}
.rhd .mk-pp-details__item b {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pp-details--tight .mk-pp-details__item b {
  line-height: 1.3;
}
.rhd .mk-pp-details__item p {
  margin: 6px 0 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-band-title {
  margin: 0;
  font:
    700 clamp(26px, 3.4vw, 40px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-mock-head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}
.rhd .mk-pp-kicker {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-pp-mono-sm {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pp-mini-btn {
  padding: 10px 14px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pp-mini-btn--ghost {
  background: transparent;
  color: var(--ink);
}

/* ---------- FAQ (larger variant used on product pages) ---------- */
.rhd .mk-pp-faq {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 88px) clamp(16px, 4vw, 40px);
}
.rhd .mk-pp-faq--tight-top {
  padding-top: 0;
}
.rhd .mk-pp-faq__title {
  margin: 0 0 24px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
/* The design draws the list's top rule on the container, not the first row; drawing it on the
   row rounds to a different pixel and shifts everything below by 1px. */
.rhd .mk-pp-faq__list {
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-pp-faq__list .rhd-faq {
  border-top: 0;
}
/* ---------- next-page link ---------- */
.rhd .mk-pp-next-wrap {
  padding-bottom: 72px;
}
.rhd .mk-pp-next {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 24px 28px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  text-decoration: none;
  color: var(--ink);
}
.rhd .mk-pp-next:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-pp-next__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .mk-pp-next__title {
  font:
    700 26px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-next__go {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}

/* /dealer-websites — the dealer website add-on and its theme previews. */

/* Hero close-up: one car syncing out to the site and its leads coming back. */
.rhd .mk-dw-sync {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  min-width: min(100%, 420px);
}
.rhd .mk-dw-sync__title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dw-sync__row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding: 14px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-dw-sync__row:last-child {
  border-bottom: 0;
}
.rhd .mk-dw-sync__k {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--ink);
  font:
    700 16px "Shippori Mincho B1",
    serif;
}
.rhd .mk-dw-sync__what {
  display: flex;
  flex-direction: column;
  gap: 2px;
  font:
    400 14px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dw-sync__what b {
  color: var(--ink);
  font-weight: 600;
}
.rhd .mk-dw-sync__state {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  padding: 3px 8px;
  border: 1.5px solid var(--ok);
  color: var(--ok);
  white-space: nowrap;
}
.rhd .mk-dw-sync__state--amber {
  border-color: var(--amber);
  color: var(--amber);
}

/* Themes. */
.rhd .mk-dw-intro {
  margin: -16px 0 32px;
  max-width: 640px;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dw-themes {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
  gap: 24px;
}
.rhd .mk-dw-theme {
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}
/* A small poster in the theme's own colors (not the site's tokens: it shows the theme). */
.rhd .mk-dw-theme__poster {
  position: relative;
  min-height: 180px;
  padding: 36px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  background: var(--th-ground);
  color: var(--th-ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-dw-theme__bar {
  position: absolute;
  inset: 0 0 auto;
  height: 16px;
  background: var(--th-accent);
}
.rhd .mk-dw-theme__headline {
  font:
    800 26px / 1.1 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-dw-theme__swatches {
  display: flex;
  gap: 6px;
}
.rhd .mk-dw-theme__swatches span {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1.5px solid rgb(0 0 0 / 0.25);
}
.rhd .mk-dw-theme__body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1;
}
.rhd .mk-dw-theme__fit {
  color: var(--beni);
}
.rhd .mk-dw-theme__name {
  margin: 0;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-dw-theme__line {
  margin: 0 0 8px;
  flex: 1;
  font:
    400 15.5px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* What's included. */
.rhd .mk-dw-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 20px;
}
.rhd .mk-dw-card {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-dw-card__k {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-dw-card__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dw-card__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* Price. */
.rhd .mk-dw-price-wrap {
  padding-top: clamp(48px, 6vw, 80px);
  padding-bottom: clamp(48px, 6vw, 80px);
}
.rhd .mk-dw-price {
  max-width: 720px;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.rhd .mk-dw-price__title {
  margin: 6px 0 0;
  font:
    700 clamp(28px, 3.4vw, 40px) / 1.1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-dw-price__amount {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 12px;
}
.rhd .mk-dw-price__n {
  font:
    800 clamp(44px, 6vw, 64px) / 1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-dw-price__per {
  font:
    400 16px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dw-price__lines {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-dw-price__lines li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--rule);
  font:
    400 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dw-price__label {
  color: var(--ink-2);
}
.rhd .mk-dw-price__note {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dw-price__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* The preview dialog: a toolbar over the sandboxed frame, nearly full screen. */
.rhd .mk-dw-dialog {
  width: min(100vw - 32px, 1440px);
  height: calc(100dvh - 32px);
  max-width: none;
  max-height: none;
  margin: auto;
  padding: 0;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  box-shadow: 12px 12px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .mk-dw-dialog:not([open]) {
  display: none;
}
.rhd .mk-dw-dialog::backdrop {
  background: var(--backdrop);
}
.rhd .mk-dw-dialog__bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding: 10px 12px 10px 16px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-dw-dialog__title {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dw-dialog__title b {
  font:
    700 18px "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-dw-dialog__widths {
  display: flex;
  margin: 0;
  padding: 0;
  border: 1.5px solid var(--ink);
}
.rhd .mk-dw-dialog__widths button,
.rhd .mk-dw-dialog__close {
  min-height: 44px;
  padding: 0 16px;
  border: 0;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dw-dialog__widths button[aria-pressed="true"] {
  background: var(--ink);
  color: var(--paper);
}
.rhd .mk-dw-dialog__close {
  border: 1.5px solid var(--ink);
}
.rhd .mk-dw-dialog button:focus-visible {
  outline: 3px solid var(--ai);
  outline-offset: 2px;
}
.rhd .mk-dw-dialog__stage {
  flex: 1;
  min-height: 0;
  display: flex;
  justify-content: center;
  background: var(--paper-2);
}
.rhd .mk-dw-frame {
  width: 100%;
  height: 100%;
  border: 0;
  background: #fff;
}
.rhd .mk-dw-frame--phone {
  width: 390px;
  max-width: 100%;
  border-inline: 1.5px solid var(--ink);
}
.rhd .mk-dw-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

@media (max-width: 640px) {
  .rhd .mk-dw-dialog {
    width: 100vw;
    height: 100dvh;
    border: 0;
    box-shadow: none;
  }
  .rhd .mk-dw-dialog__widths {
    display: none;
  }
}

/* /faq — values from design-mockups/rhd-woodblock/FAQ.dc.html */
.rhd .mk-faq {
  max-width: 920px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px);
}
.rhd .mk-faq__label {
  margin-bottom: 16px;
}
.rhd .mk-faq__title {
  margin: 0 0 14px;
  font:
    800 clamp(36px, 5vw, 56px) / 1.05 "Shippori Mincho B1",
    serif;
}
.rhd .mk-faq__intro {
  margin: 0 0 48px;
  font:
    400 18px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-faq__group {
  margin-bottom: 48px;
}
.rhd .mk-faq__group-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.rhd .mk-faq__group-k {
  font:
    700 20px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-faq__group-name {
  margin: 0;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}

/* Spot illustrations: flat line-and-fill, one ink line weight, brand fills from --ill-* in
   marketing-tokens.css, so every piece turns with the theme. */
.rhd .mk-ill {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  fill: none;
  stroke: var(--ill-line);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.rhd .mk-ill .n {
  stroke: none;
}
.rhd .mk-ill .fl {
  fill: var(--ill-line);
}
.rhd .mk-ill .fp {
  fill: var(--ill-paper);
}
.rhd .mk-ill .fc {
  fill: var(--ill-cream);
}
.rhd .mk-ill .fa {
  fill: var(--ill-ai);
}
.rhd .mk-ill .fa2 {
  fill: var(--ill-ai-2);
}
.rhd .mk-ill .fb {
  fill: var(--ill-beni);
}
.rhd .mk-ill .fo {
  fill: var(--ill-amber);
}
.rhd .mk-ill .fs {
  fill: var(--ill-sea);
}
.rhd .mk-ill .fh {
  fill: var(--ill-hill);
}
.rhd .mk-ill .fsh {
  fill: var(--ill-shade);
  stroke: none;
}
.rhd .mk-ill .fty {
  fill: var(--ill-tyre);
}
.rhd .mk-ill .sb {
  stroke: var(--ill-beni);
}
.rhd .mk-ill .sa {
  stroke: var(--ill-air);
}
.rhd .mk-ill .sc {
  stroke: var(--ill-cream);
}
.rhd .mk-ill .thin {
  stroke-width: 1.4;
}

/* A spot between sections: centred, never wider than it was drawn for. */
.rhd .mk-spot {
  display: flex;
  justify-content: center;
  padding: clamp(24px, 5vw, 56px) 16px;
}
.rhd .mk-spot > .mk-ill {
  width: min(100%, var(--spot-w, 320px));
}

/* TrustGrid: four ruled columns of true specifics (a single column on a phone). */
.rhd .mk-trust {
  padding: clamp(56px, 8vw, 96px) 0 clamp(40px, 6vw, 64px);
}
.rhd .mk-trust__label {
  margin-bottom: 16px;
}
.rhd .mk-trust__title {
  margin: 0 0 32px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.12 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  text-wrap: balance;
}
.rhd .mk-trust__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-trust__item {
  padding: 24px 22px 26px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-trust__k {
  font:
    700 22px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-trust__name {
  margin: 0;
  font:
    600 17px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .mk-trust__text {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-trust__more {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 12px;
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
@media (max-width: 560px) {
  .rhd .mk-trust__item {
    padding-right: 0;
    border-bottom: 1px solid var(--rule);
  }
  .rhd .mk-trust__item:last-child {
    border-bottom: 0;
  }
}

/* /for-dealers (mk-dealers__*). The customers band (mk-dealers__orders-*) came over from the old home page. */
.rhd .mk-dealers__orders-section {
  background: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
  position: relative;
  overflow: hidden;
}
.rhd .mk-dealers__orders-div {
  height: 24px;
  background-image: var(--seigaiha);
}
.rhd .mk-dealers__orders-div-2 {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 96px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(36px, 5vw, 64px);
  align-items: center;
}
.rhd .mk-dealers__orders-div-3 {
  flex: 1 1 400px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-dealers__orders-div-4 {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .mk-dealers__orders-span {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ai);
  background: var(--on-ai);
  padding: 5px 6px;
  border-radius: 2px;
}
.rhd .mk-dealers__orders-span-2 {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: 0.85;
}
.rhd .mk-dealers__orders-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-dealers__orders-div-5 {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.rhd .mk-dealers__orders-div-6 {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.rhd .mk-dealers__orders-span-3 {
  font:
    500 13px / 1.5 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}
.rhd .mk-dealers__orders-div-7 {
  font:
    400 16px / 1.55 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__orders-b {
  font-weight: 600;
}
.rhd .mk-dealers__orders-a {
  color: var(--on-ai);
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__orders-div-8 {
  flex: 1 1 440px;
  min-width: 0;
  background: var(--card);
  color: var(--ink);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 #0008;
  border-radius: 3px;
  overflow: hidden;
}
.rhd .mk-dealers__orders-div-9 {
  padding: 12px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
.rhd .mk-dealers__orders-span-4 {
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__orders-span-5 {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 8px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-dealers__orders-div-10 {
  padding: 16px;
  font:
    400 14.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-dealers__orders-div-11 {
  font:
    400 12.5px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-dealers__orders-p {
  margin: 0;
}
.rhd .mk-dealers__orders-div-12 {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--rule);
}
.rhd .mk-dealers__orders-div-13 {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 12px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-dealers__orders-div-14 {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 12px;
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-dealers__orders-div-15 {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-dealers__orders-span-6 {
  padding: 10px 14px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-dealers__orders-span-7 {
  padding: 10px 14px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}

/* ---------- section scaffolding ---------- */
.rhd .mk-dealers__label {
  margin-bottom: 16px;
}
.rhd .mk-dealers__h2 {
  margin: 0;
  max-width: 820px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.12 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  text-wrap: balance;
}
.rhd .mk-dealers__text {
  margin: 0;
  font:
    400 16.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dealers__note {
  margin: 20px 0 0;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- the rest of the job ---------- */
.rhd .mk-dealers__jobs {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-dealers__grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr));
  gap: 20px;
}
/* An odd card out on the last row spans it rather than sitting alone. */
.rhd .mk-dealers__grid > :last-child:nth-child(3n + 1) {
  grid-column: 1 / -1;
}
.rhd .mk-dealers__job {
  padding: 22px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-dealers__job-k {
  font:
    700 20px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-dealers__job-title {
  margin: 0;
  font:
    700 22px / 1.2 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-dealers__job-text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dealers__job-text .rhd-pill {
  display: inline-block;
  vertical-align: 1px;
}

/* ---------- real screens ---------- */
.rhd .mk-dealers__shots {
  padding: clamp(56px, 8vw, 96px) 0;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-dealers__shots-grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}
@media (max-width: 760px) {
  .rhd .mk-dealers__shots-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ---------- getting set up + plans ---------- */
.rhd .mk-dealers__setup {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-dealers__setup-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: start;
}
.rhd .mk-dealers__setup-copy {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-dealers__setup-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1.5px solid var(--ink);
  font:
    400 15.5px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__setup-list li {
  display: flex;
  gap: 12px;
  padding: 11px 12px 11px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-dealers__setup-n {
  font:
    500 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-dealers__plans {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-dealers__plan {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  grid-template-areas:
    "k name price"
    "k users price";
  align-items: center;
  gap: 2px 14px;
  min-height: 64px;
  padding: 14px 18px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 4px 4px 0 var(--shadow);
  color: var(--ink);
  text-decoration: none;
}
.rhd .mk-dealers__plan:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-dealers__plan-k {
  grid-area: k;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-dealers__plan-name {
  grid-area: name;
  font:
    700 20px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-dealers__plan-users {
  grid-area: users;
  font:
    400 14px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-dealers__plan-price {
  grid-area: price;
  font:
    500 16px / 1.2 "IBM Plex Mono",
    monospace;
  text-align: right;
}
.rhd .mk-dealers__plans-more {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
@media (max-width: 900px) {
  .rhd .mk-dealers__setup-inner {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 520px) {
  .rhd .mk-dealers__setup-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Parts desk: what it does beside an example request. */
.rhd .mk-dealers__parts {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-dealers__parts-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}
.rhd .mk-dealers__parts-copy {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-dealers__parts-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1.5px solid var(--ink);
  font:
    400 15.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__parts-list li {
  padding: 12px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-dealers__parts-mail {
  padding: 0;
  overflow: hidden;
}
.rhd .mk-dealers__parts-mail-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    500 12px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-dealers__parts-mail-head span:last-child {
  color: var(--beni);
}
.rhd .mk-dealers__parts-mail-subject {
  margin: 0;
  padding: 14px 16px 0;
  font:
    600 14.5px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dealers__parts-mail-body {
  margin: 0;
  padding: 12px 16px 18px;
  white-space: pre-wrap;
  font:
    400 13px / 1.55 "IBM Plex Mono",
    monospace;
}
@media (max-width: 860px) {
  .rhd .mk-dealers__parts-inner {
    grid-template-columns: minmax(0, 1fr);
  }
}
.rhd .mk-dealers__parts-more {
  color: var(--beni);
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}

/* /guide — layout from design-mockups/rhd-woodblock/Guide.dc.html */

/* ---------- header + step strip ---------- */
.rhd .mk-guide__header {
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-guide__head {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: clamp(32px, 4vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-guide__title {
  margin: 0;
  font:
    800 clamp(34px, 5vw, 58px) / 1.06 "Shippori Mincho B1",
    serif;
  max-width: 920px;
  text-wrap: balance;
}
.rhd .mk-guide__lead {
  margin: 0;
  font:
    400 19px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  max-width: 720px;
}
.rhd .mk-guide__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  font:
    400 13px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__strip-wrap {
  padding-bottom: 40px;
  overflow-x: auto;
}
.rhd .mk-guide__strip {
  display: grid;
  grid-template-columns: repeat(9, minmax(110px, 1fr));
  min-width: 990px;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__stop {
  padding: 14px 12px;
  border-right: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .mk-guide__stop:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-guide__stop-k {
  font:
    700 18px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-guide__stop-name {
  font:
    600 12.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__stop-time {
  font:
    400 11px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__strip-note {
  margin-top: 8px;
  font:
    400 12px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ---------- body: sticky contents + article ---------- */
.rhd .mk-guide__body {
  padding-top: clamp(40px, 6vw, 64px);
  padding-bottom: 80px;
  display: flex;
  gap: 56px;
  align-items: flex-start;
}
.rhd .mk-guide__aside {
  position: sticky;
  top: 120px;
  width: 240px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-guide__aside-head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
  padding: 14px 0 8px;
}
.rhd .mk-guide__aside-link {
  display: flex;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 14px / 1.35 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__aside-link:hover {
  color: var(--amber);
}
.rhd .mk-guide__aside-n {
  font:
    500 12px / 1.6 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  width: 20px;
  flex-shrink: 0;
}
.rhd .mk-guide__article {
  flex: 1;
  min-width: 0;
  max-width: 720px;
  font:
    400 17.5px / 1.7 "IBM Plex Sans",
    sans-serif;
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.rhd .mk-guide__toc {
  display: none;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__toc-q {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__toc-list {
  display: flex;
  flex-direction: column;
  padding: 0 16px 10px;
}
.rhd .mk-guide__toc-link {
  padding: 10px 0;
  border-top: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
}
/* The design swaps the sticky rail for a collapsible contents block at 940px. */
@media (max-width: 940px) {
  .rhd .mk-guide__aside {
    display: none;
  }
  .rhd .mk-guide__toc {
    display: block;
  }
}

/* ---------- sections ---------- */
.rhd .mk-guide__section {
  display: flex;
  flex-direction: column;
  gap: 16px;
  scroll-margin-top: 120px;
}
.rhd .mk-guide__section p {
  margin: 0;
}
.rhd .mk-guide__eyebrow {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-guide__h2 {
  margin: 0;
  font:
    700 clamp(26px, 3vw, 34px) / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-guide__panel {
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__panel--pad {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-guide__panel-caps {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-guide__years {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  border: 1px solid var(--ink);
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  text-align: center;
}
.rhd .mk-guide__year {
  padding: 10px 0;
  color: var(--ink-2);
}
.rhd .mk-guide__year--ok {
  background: var(--ok);
  color: var(--paper);
}
.rhd .mk-guide__year--last {
  border-right: 3px solid var(--beni);
}
.rhd .mk-guide__note {
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-guide__grades {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.rhd .mk-guide__grade {
  padding: 14px;
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__grade:last-child {
  border-right: 0;
}
.rhd .mk-guide__grade-v {
  font:
    700 22px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-guide__grade-t {
  font:
    400 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-guide__fees {
  font:
    400 15px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__fee {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__fee--last {
  border-bottom: 0;
}
.rhd .mk-guide__fee-v {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-guide__fees-note {
  padding: 9px 16px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__route {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-guide__route-stop {
  padding: 8px 10px;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__route-stop--sea {
  background: var(--ai);
  color: var(--on-ai);
}
.rhd .mk-guide__duty-caps {
  padding: 10px 16px;
  border-bottom: 1.5px solid var(--ink);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-guide__duty {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__duty:last-child {
  border-bottom: 0;
}
.rhd .mk-guide__duty b {
  font-weight: 600;
}
.rhd .mk-guide__duty-v {
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .mk-guide__duty-t {
  font-size: 14px;
  color: var(--ink-2);
  grid-column: span 2;
}
.rhd .mk-guide__aside-note {
  border: 1.5px dashed var(--rule);
  padding: 14px 16px;
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- "Where Right Hand DMS helps" ---------- */
.rhd .mk-guide__help {
  border: 1.5px solid var(--amber);
  background: var(--paper-2);
  padding: 16px 18px;
  display: flex;
  gap: 14px;
}
.rhd .mk-guide__help-seal {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-guide__help-text {
  font:
    400 15.5px / 1.55 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__help-text b {
  font-weight: 600;
}

/* The home page's seven-jobs carousel and the road its kei van drives (JobsCarousel.tsx).
   Everything that moves is transform or opacity. */
.rhd .mk-jobs {
  position: relative;
  overflow: hidden;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-jobs__inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 104px) clamp(16px, 4vw, 40px) 20px;
}
.rhd .mk-jobs__label {
  margin-bottom: 16px;
}
.rhd .mk-jobs__title {
  margin: 0 0 clamp(28px, 4vw, 48px);
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 700px;
  text-wrap: balance;
}

/* All slides share one grid cell, so the section is as tall as the tallest and never jumps. */
.rhd .mk-jobs__slides {
  display: grid;
  touch-action: pan-y;
}
.rhd .mk-jobs__slide {
  grid-area: 1 / 1;
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(24px, 4vw, 64px);
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.14s ease-in,
    visibility 0s linear 0.14s;
}
.rhd .mk-jobs__slide.is-active {
  opacity: 1;
  visibility: visible;
  /* In once the old one is out, so the two texts never overlap. */
  transition:
    opacity 0.3s ease-out 0.14s,
    visibility 0s;
}
.rhd .mk-jobs__copy {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 440px;
}
.rhd .mk-jobs__no {
  display: flex;
  align-items: baseline;
  gap: 12px;
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-jobs__k {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-jobs__h3 {
  margin: 0;
  font:
    700 clamp(24px, 2.6vw, 32px) / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-jobs__text {
  margin: 0;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-jobs__more {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}

/* The excerpt sits in a fixed-height stage: crops of any shape fit it, centred. */
.rhd .mk-jobs__excerpt {
  --stage: clamp(220px, 30vw, 380px);
  height: var(--stage);
  display: flex;
  align-items: center;
  justify-content: center;
}
.rhd .mk-jobs__excerpt > .rhd-shot {
  width: fit-content;
  max-width: 100%;
}
.rhd .mk-jobs__excerpt .rhd-shot__img {
  width: auto;
  max-width: 100%;
  max-height: calc(var(--stage) - 12px);
}
/* Big entrance once someone moves (not on first paint). */
.rhd .mk-jobs[data-dir] .is-active .mk-jobs__excerpt > * {
  animation: mk-job-in 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) 0.14s both;
}
@keyframes mk-job-in {
  from {
    opacity: 0;
    transform: translateY(18px) scale(0.86);
  }
}

.rhd .mk-jobs__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: clamp(24px, 3vw, 36px);
}
.rhd .mk-jobs__arrow {
  width: 44px;
  height: 44px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--card);
  cursor: pointer;
  font:
    600 18px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-jobs__arrow[aria-disabled] {
  opacity: 0.35;
  cursor: default;
}
.rhd .mk-jobs__dots {
  display: flex;
}
.rhd .mk-jobs__dot {
  width: 32px;
  height: 44px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.rhd .mk-jobs__dot::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  border: 1.5px solid var(--ink);
  transition: transform 0.2s ease;
}
.rhd .mk-jobs__dot[aria-selected="true"]::before {
  background: var(--beni);
  border-color: var(--beni);
  transform: scale(1.2);
}
.rhd .mk-jobs__arrow:focus-visible,
.rhd .mk-jobs__dot:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}

/* ---------- the road ---------- */
.rhd .mk-road {
  position: relative;
  height: 120px;
  container-type: inline-size;
}
.rhd .mk-road__scene {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.rhd .mk-road__hills,
.rhd .mk-road__side {
  position: absolute;
  left: 0;
  height: 96px;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-play-state: paused;
}
.rhd .mk-road__hills {
  top: 0;
  width: calc(100% + 720px);
  animation-name: mk-road-hills;
  animation-duration: 21.6s;
}
.rhd .mk-road__side {
  top: 24px;
  width: calc(100% + 360px);
  animation-name: mk-road-side;
  animation-duration: 3.6s;
}
.rhd .mk-jobs[data-running] .mk-road__hills,
.rhd .mk-jobs[data-running] .mk-road__side,
.rhd .mk-jobs[data-running] .mk-van__hub {
  animation-play-state: running;
}
@keyframes mk-road-side {
  to {
    transform: translateX(-360px);
  }
}
@keyframes mk-road-hills {
  to {
    transform: translateX(-720px);
  }
}

/* Each job is a resting spot, evenly spaced: --p runs 0 (job 1) to 1 (job 7). */
.rhd .mk-road__van {
  --van-w: clamp(84px, 11vw, 156px);
  --pad: clamp(12px, 3vw, 40px);
  position: absolute;
  left: 0;
  bottom: 4px;
  width: var(--van-w);
  transform: translateX(calc(var(--pad) + var(--p) * (100cqw - var(--van-w) - 2 * var(--pad))));
  transition: transform 1.2s cubic-bezier(0.65, 0, 0.25, 1);
}
.rhd .mk-jobs[data-dir="back"] .mk-road__van {
  transition: transform 0.95s cubic-bezier(0.15, 0.65, 0.3, 1);
}
.rhd .mk-van__hub {
  animation: mk-spin 0.5s linear infinite paused;
}
@keyframes mk-spin {
  to {
    transform: rotate(360deg);
  }
}
/* Pulling away: the nose lifts on the rear wheel. Braking: it dips onto the front one. */
.rhd .mk-jobs[data-dir="fwd"] .mk-van__body {
  transform-origin: 30px 61px;
  animation: mk-van-launch 1.2s ease-out;
}
.rhd .mk-jobs[data-dir="back"] .mk-van__body {
  transform-origin: 98px 61px;
  animation: mk-van-brake 0.95s ease-out;
}
@keyframes mk-van-launch {
  18% {
    transform: rotate(-2.6deg);
  }
  60% {
    transform: rotate(-0.8deg);
  }
}
@keyframes mk-van-brake {
  20% {
    transform: rotate(3deg) scaleY(0.97);
  }
  55% {
    transform: rotate(-0.6deg);
  }
}
.rhd .mk-road__puff {
  position: absolute;
  left: 0;
  bottom: 12%;
}
.rhd .mk-road__puff i {
  position: absolute;
  left: -4px;
  bottom: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--ill-paper);
  border: 1.5px solid var(--ill-air);
  opacity: 0;
  animation: mk-puff 0.85s ease-out forwards;
}
.rhd .mk-road__puff i:nth-child(2) {
  width: 14px;
  height: 14px;
  animation-delay: 0.12s;
}
.rhd .mk-road__puff i:nth-child(3) {
  width: 11px;
  height: 11px;
  animation-delay: 0.26s;
}
@keyframes mk-puff {
  0% {
    opacity: 0.95;
    transform: translate(0, 0) scale(0.4);
  }
  100% {
    opacity: 0;
    transform: translate(-48px, -16px) scale(2);
  }
}

@media (max-width: 760px) {
  .rhd .mk-jobs__slide {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 24px;
  }
  .rhd .mk-jobs__excerpt {
    --stage: clamp(180px, 56vw, 300px);
  }
  .rhd .mk-road {
    height: 104px;
  }
  .rhd .mk-road__side {
    top: 8px;
  }
}

/* Reduced motion: a still road, the van simply at its spot, slides crossfading. */
@media (prefers-reduced-motion: reduce) {
  .rhd .mk-road__hills,
  .rhd .mk-road__side,
  .rhd .mk-van__hub,
  .rhd .mk-jobs[data-dir] .mk-van__body,
  .rhd .mk-jobs[data-dir] .is-active .mk-jobs__excerpt > * {
    animation: none;
  }
  .rhd .mk-road__van,
  .rhd .mk-jobs[data-dir="back"] .mk-road__van {
    transition: none;
  }
  .rhd .mk-road__puff {
    display: none;
  }
}

/* The five-stop journey (Journey.tsx): a row with a dashed line through the stations on wide
   screens, a column with the line down the left on a phone. */
.rhd .mk-journey {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px;
  position: relative;
}
.rhd .mk-journey__stop {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.rhd .mk-journey__mark {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 6px;
}
.rhd .mk-journey__mark .rhd-station {
  position: relative;
  z-index: 1;
  background: var(--paper);
}
.rhd .mk-journey__mark .rhd-station--done {
  background: var(--ink);
}
/* The dashed link from this station to the next one. */
.rhd .mk-journey__stop:not(:last-child) .mk-journey__mark::after {
  content: "";
  position: absolute;
  left: 52px;
  right: -20px;
  top: 50%;
  height: 3px;
  margin-top: -1.5px;
  background-image: repeating-linear-gradient(90deg, var(--ink) 0 10px, transparent 10px 16px);
}
.rhd .mk-journey__n {
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  color: var(--beni);
}
.rhd .mk-journey__title {
  margin: 0;
  font:
    700 22px / 1.2 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-journey__text {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

@media (max-width: 900px) {
  .rhd .mk-journey {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .rhd .mk-journey__stop {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    column-gap: 18px;
    row-gap: 4px;
    padding-bottom: 28px;
  }
  .rhd .mk-journey__mark {
    grid-row: 1 / span 3;
    align-self: start;
    margin: 0;
    height: 100%;
    flex-direction: column;
  }
  .rhd .mk-journey__stop:not(:last-child) .mk-journey__mark::after {
    left: 50%;
    right: auto;
    top: 52px;
    bottom: -24px;
    width: 3px;
    height: auto;
    margin: 0 0 0 -1.5px;
    background-image: repeating-linear-gradient(180deg, var(--ink) 0 10px, transparent 10px 16px);
  }
  .rhd .mk-journey__n {
    padding-top: 4px;
  }
}

/* HomePage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-home__label-mb16 {
  margin-bottom: 16px;
}
.rhd .mk-home__pricing-teaser-section {
  max-width: 1240px;
  margin: 0 auto;
  padding: 40px clamp(16px, 4vw, 40px) 72px;
}
.rhd .mk-home__pricing-teaser-div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
  gap: 24px 40px;
  border: 1.5px dashed var(--ink-2);
  padding: 28px;
}
.rhd .mk-home__teaser-col {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.rhd .mk-home__pricing-teaser-h3 {
  margin: 0;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-home__pricing-teaser-p {
  margin: 0;
  font:
    400 15.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__pricing-teaser-a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}

/* ---------- hero: who it's for ---------- */
.rhd .mk-home__hero {
  position: relative;
  overflow: hidden;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__hero-mark {
  position: absolute;
  right: -40px;
  top: -60px;
  font:
    800 420px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  opacity: 0.045;
  pointer-events: none;
  user-select: none;
}
.rhd .mk-home__hero-inner {
  position: relative;
  padding-top: clamp(40px, 7vw, 88px);
  padding-bottom: clamp(48px, 7vw, 88px);
}
.rhd .mk-home__hero-label {
  margin-bottom: 20px;
}
.rhd .mk-home__hero-title {
  margin: 0;
  max-width: 900px;
  font:
    800 clamp(38px, 6vw, 68px) / 1.04 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.01em;
  color: var(--ink);
  text-wrap: balance;
}
.rhd .mk-home__hero-lead {
  margin: 20px 0 0;
  max-width: 720px;
  font:
    400 clamp(17px, 1.6vw, 20px) / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__audiences {
  margin-top: clamp(32px, 5vw, 48px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 32px);
}
@media (max-width: 860px) {
  .rhd .mk-home__audiences {
    grid-template-columns: minmax(0, 1fr);
  }
  .rhd .mk-home__hero-mark {
    font-size: 260px;
    top: -30px;
  }
}

/* ---------- shared section type ---------- */
.rhd .mk-home__h2 {
  margin: 0;
  max-width: 820px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.12 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  text-wrap: balance;
}
.rhd .mk-home__sub {
  margin: 14px 0 0;
  max-width: 680px;
  font:
    400 17px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- how it works ---------- */
.rhd .mk-home__how {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-home__how .mk-journey {
  margin-top: 40px;
}

/* ---------- the real app ---------- */
.rhd .mk-home__shots {
  padding: clamp(56px, 8vw, 96px) 0;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__shots-grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}
.rhd .mk-home__shot-main {
  grid-column: 1 / -1;
}
@media (max-width: 760px) {
  .rhd .mk-home__shots-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* /import-my-own (mk-own__*): the individual importer's page. Hero, journey, trust and the
   audience card come from shared parts; this is the page's own layout. */

/* ---------- section type ---------- */
.rhd .mk-own__label {
  margin-bottom: 16px;
}
.rhd .mk-own__h2 {
  margin: 0;
  max-width: 820px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.12 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  text-wrap: balance;
}
.rhd .mk-own__sub {
  margin: 14px 0 0;
  max-width: 720px;
  font:
    400 17px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-own__text {
  margin: 0;
  font:
    400 16.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-own__text b {
  color: var(--ink);
}
.rhd .mk-own__fine {
  margin: 16px 0 0;
  font:
    400 14px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-own__more {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}

/* ---------- 25-year rule ---------- */
.rhd .mk-own__rule {
  padding: clamp(56px, 8vw, 96px) 0;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-own__rule-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: start;
}
.rhd .mk-own__prose {
  display: flex;
  flex-direction: column;
  gap: 14px;
  font:
    400 17px / 1.65 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-own__prose p {
  margin: 0;
}
.rhd .mk-own__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0 24px;
}
.rhd .mk-own__links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-weight: 600;
}

/* ---------- seven steps ---------- */
.rhd .mk-own__steps {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-own__steps-grid {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr));
  gap: 32px 40px;
}
.rhd .mk-own__steps-grid .rhd-step__text {
  font-size: 15.5px;
}

/* ---------- grades ---------- */
.rhd .mk-own__grades {
  padding: clamp(56px, 8vw, 96px) 0;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-own__grades-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: center;
}
.rhd .mk-own__grades-copy {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rhd .mk-own__grade-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-own__grade {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--rule);
  font:
    400 15.5px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}

/* ---------- costs ---------- */
.rhd .mk-own__costs {
  padding: clamp(56px, 8vw, 96px) 0;
  scroll-margin-top: 120px;
}
.rhd .mk-own__costs-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: start;
}
.rhd .mk-own__costs-copy {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rhd .mk-own__costs-copy .mk-own__fine {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--amber);
  background: var(--amber-wash);
  color: var(--ink);
}
.rhd .mk-own__ledger {
  padding: 0;
  overflow: hidden;
}
.rhd .mk-own__ledger-head {
  padding: 12px 16px;
  border-bottom: 1.5px solid var(--ink);
  background: var(--paper-2);
}
.rhd .mk-own__ledger-lines {
  display: flex;
  flex-direction: column;
}
.rhd .mk-own__ledger-lines .rhd-cost-line {
  border: 0;
  border-bottom: 1px solid var(--rule);
  background: transparent;
}
.rhd .mk-own__ledger-lines .rhd-cost-line__label {
  font-size: 15px;
}
.rhd .mk-own__ledger-lines .rhd-cost-line__amount {
  font-size: 15px;
  text-align: right;
}
.rhd .mk-own__ledger-lines .rhd-cost-line__basis {
  font-size: 12.5px;
}
.rhd .mk-own__ledger-total {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-top: 1.5px solid var(--ink);
  font:
    600 17px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink);
}

/* ---------- price + guarantee ---------- */
.rhd .mk-own__price {
  padding: 0 0 clamp(56px, 8vw, 96px);
}
.rhd .mk-own__price-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 20px 32px;
  align-items: center;
  padding: clamp(22px, 3vw, 32px);
}
.rhd .mk-own__price-copy {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-own__price-title {
  margin: 0;
  font:
    700 clamp(24px, 2.8vw, 32px) / 1.2 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-own__price-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

/* ---------- whole trip + screens ---------- */
.rhd .mk-own__journey {
  padding: clamp(56px, 8vw, 96px) 0;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-own__journey .mk-journey {
  margin-top: 40px;
}
.rhd .mk-own__shots {
  margin-top: 48px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

/* ---------- FAQ ---------- */
.rhd .mk-own__faq {
  padding: clamp(56px, 8vw, 96px) 0 0;
}
.rhd .mk-own__faq-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.4fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: start;
}
.rhd .mk-own__faq-list .rhd-faq__q {
  min-height: 44px;
  align-items: center;
  cursor: pointer;
}

.rhd .mk-own__official {
  margin-top: 28px;
  padding: 20px 22px;
  border: 1.5px dashed var(--ink-2);
}
.rhd .mk-own__official-title {
  margin: 0;
  font:
    600 17px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .mk-own__official .mk-own__fine {
  margin-top: 6px;
}
.rhd .mk-own__official-list {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}
.rhd .mk-own__official-list a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}

/* ---------- the other audience ---------- */
@media (max-width: 900px) {
  .rhd .mk-own__rule-inner,
  .rhd .mk-own__grades-inner,
  .rhd .mk-own__costs-inner,
  .rhd .mk-own__faq-inner {
    grid-template-columns: minmax(0, 1fr);
  }
  .rhd .mk-own__price-card {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 760px) {
  .rhd .mk-own__shots {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* /pricing — plans priced by auction sheets read (mk-pricing__*). */
.rhd .mk-pricing {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.rhd .mk-pricing__label {
  margin-bottom: -16px;
}
.rhd .mk-pricing__title {
  margin: 0;
  font:
    800 clamp(36px, 5vw, 60px) / 1.05 "Shippori Mincho B1",
    serif;
  max-width: 820px;
  text-wrap: balance;
}
.rhd .mk-pricing__text {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__text b {
  color: var(--ink);
}

.rhd .mk-pricing__intro {
  margin: -8px 0 0;
  max-width: 760px;
  font:
    400 18px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* The two audiences: tabs over their panels. */
.rhd .mk-pricing__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pricing__tab {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 10px 22px;
  margin-bottom: -1.5px;
  border: 1.5px solid transparent;
  border-bottom: 0;
  border-radius: 3px 3px 0 0;
  background: transparent;
  color: var(--ink-2);
  font:
    600 17px / 1.2 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .mk-pricing__tab:hover {
  color: var(--ink);
}
.rhd .mk-pricing__tab[aria-selected="true"] {
  background: var(--card);
  color: var(--ink);
  border-color: var(--ink);
  border-bottom: 1.5px solid var(--card);
}
.rhd .mk-pricing__tab:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .mk-pricing__tab-k {
  font:
    800 18px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-pricing__panel {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.rhd .mk-pricing__panel[hidden] {
  display: none;
}
.rhd .mk-pricing__panel-lead {
  margin: 0;
  font:
    400 16.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__panel-lead a,
.rhd .mk-pricing__text a {
  font-weight: 600;
}
.rhd .mk-pricing__guarantee {
  padding: 20px 22px;
  border: 1.5px dashed var(--ok);
  background: var(--ok-wash);
}

/* Which fits whom */
.rhd .mk-pricing__compare {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.rhd .mk-pricing__compare-title {
  margin: 0;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pricing__table-wrap {
  overflow-x: auto;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-pricing__table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font:
    400 15px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pricing__table th,
.rhd .mk-pricing__table td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-pricing__table thead th {
  font:
    600 15px / 1.3 "IBM Plex Sans",
    sans-serif;
  background: var(--paper-2);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pricing__table tbody th {
  font-weight: 600;
  color: var(--ink);
  width: 24%;
}
.rhd .mk-pricing__table td {
  color: var(--ink-2);
}
.rhd .mk-pricing__table tbody tr:last-child th,
.rhd .mk-pricing__table tbody tr:last-child td {
  border-bottom: 0;
}
.rhd .mk-pricing__compare-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
@media (max-width: 600px) {
  .rhd .mk-pricing__tab {
    flex: 1 1 0;
    justify-content: center;
    padding: 10px 12px;
    font-size: 15.5px;
  }
  /* A phone reads the table as stacked rows: the feature, then each plan's answer. */
  .rhd .mk-pricing__table-wrap {
    overflow: visible;
  }
  .rhd .mk-pricing__table,
  .rhd .mk-pricing__table tbody,
  .rhd .mk-pricing__table tr,
  .rhd .mk-pricing__table th,
  .rhd .mk-pricing__table td {
    display: block;
    min-width: 0;
    width: auto;
  }
  .rhd .mk-pricing__table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
  }
  .rhd .mk-pricing__table tbody th {
    width: auto;
    background: var(--paper-2);
    border-bottom: 0;
  }
  .rhd .mk-pricing__table td {
    border-bottom: 0;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .rhd .mk-pricing__table td::before {
    display: block;
    font:
      500 11px / 1.4 "IBM Plex Mono",
      monospace;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink-2);
  }
  .rhd .mk-pricing__table td:nth-of-type(1)::before {
    content: "Dealership plans";
  }
  .rhd .mk-pricing__table td:nth-of-type(2)::before {
    content: "Import my own";
  }
  .rhd .mk-pricing__table tr {
    border-bottom: 1px solid var(--rule);
    padding-bottom: 6px;
  }
}

/* Plans */
.rhd .mk-pricing__plans {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.rhd .mk-pricing__plan {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(22px, 3vw, 30px);
}
.rhd .mk-pricing__plan--featured {
  background: var(--card);
  outline: 2px solid var(--amber);
  outline-offset: -6px;
}
.rhd .mk-pricing__badge {
  position: absolute;
  top: -12px;
  right: 18px;
  padding: 5px 9px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.rhd .mk-pricing__plan-head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .mk-pricing__plan-k {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  border-radius: 50%;
  color: var(--beni);
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  transform: rotate(-8deg);
}
.rhd .mk-pricing__plan-name {
  margin: 0;
  font:
    700 26px / 1.1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pricing__who {
  margin: 0;
  min-height: 2.9em;
  font:
    400 14.5px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__price {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.rhd .mk-pricing__amount {
  font:
    600 42px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-pricing__per {
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__annual {
  margin: -4px 0 0;
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__sheets {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  background: var(--paper);
  border: 1.5px solid var(--ink);
}
.rhd .mk-pricing__allow {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.rhd .mk-pricing__sheets-n {
  font:
    600 24px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-pricing__sheets-l {
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__lines,
.rhd .mk-pricing__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
}
.rhd .mk-pricing__lines {
  flex: 1;
  gap: 8px;
  font:
    400 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pricing__lines li {
  display: flex;
  gap: 10px;
}
.rhd .mk-pricing__check {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-pricing__plan-cta {
  align-self: stretch;
  margin-top: 6px;
}

/* Below the plans */
.rhd .mk-pricing__below {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px 48px;
  padding-top: 8px;
}
.rhd .mk-pricing__includes-head {
  display: block;
  margin-bottom: 12px;
}
.rhd .mk-pricing__list {
  font:
    400 16px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pricing__item {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-pricing__item:last-child {
  border-bottom: 0;
}
.rhd .mk-pricing__explain {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pricing__explain .mk-pricing__includes-head {
  margin-bottom: 0;
}

@media (max-width: 940px) {
  .rhd .mk-pricing__plans,
  .rhd .mk-pricing__below {
    grid-template-columns: 1fr;
  }
  .rhd .mk-pricing__who {
    min-height: 0;
  }
}

/* Import my own: one wide card, a pass with a stub, below the monthly plans. */
.rhd .mk-pricing__own {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) auto;
  gap: 0 28px;
  align-items: stretch;
  margin-top: 28px;
  padding: 0;
  overflow: hidden;
}
.rhd .mk-pricing__own-stub {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 20px 8px;
  background: var(--ai);
  color: var(--on-ai);
  border-right: 3px dashed var(--paper);
}
.rhd .mk-pricing__own-k {
  font:
    700 44px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pricing__own-days {
  font:
    600 13px / 1.2 "IBM Plex Sans",
    sans-serif;
  text-align: center;
}
.rhd .mk-pricing__own-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: clamp(20px, 3vw, 28px) 0;
}
.rhd .mk-pricing__own-body .mk-pricing__who {
  min-height: 0;
}
.rhd .mk-pricing__own-price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 6px;
  padding: clamp(20px, 3vw, 28px) clamp(20px, 3vw, 28px) clamp(20px, 3vw, 28px) 0;
}
@media (max-width: 900px) {
  .rhd .mk-pricing__own {
    grid-template-columns: 1fr;
  }
  .rhd .mk-pricing__own-stub {
    flex-direction: row;
    justify-content: flex-start;
    padding: 14px 20px;
    border-right: 0;
    border-bottom: 3px dashed var(--paper);
  }
  .rhd .mk-pricing__own-k {
    font-size: 30px;
  }
  .rhd .mk-pricing__own-body,
  .rhd .mk-pricing__own-price {
    padding: 0 20px 20px;
  }
}

/* The dealer website add-on, under the dealership plans. */
.rhd .mk-pricing__addon {
  margin: 32px 0 0;
  padding: 16px 20px;
  border: 1.5px dashed var(--rule);
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__addon b {
  color: var(--ink);
}

/* /product/bidding — from design-mockups/rhd-woodblock/Product-Bidding.dc.html */
.rhd .mk-pb-board {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  overflow-x: auto;
}
.rhd .mk-pb-board__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(200px, 1fr));
  min-width: 1000px;
}
.rhd .mk-pb-col {
  border-right: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
}
.rhd .mk-pb-col__head {
  padding: 12px 14px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-pb-col__count {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pb-col__cars {
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
/* board pills are a touch tighter than the library's stage pill */
.rhd .mk-pb-pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 9px;
  border-radius: 20px;
  border: 1px solid;
}
.rhd .mk-pb-pill--watching {
  color: var(--ink-2);
  border-color: var(--rule);
}
.rhd .mk-pb-pill--bidding {
  color: var(--amber);
  border-color: var(--amber);
}
.rhd .mk-pb-pill--won {
  background: var(--ok);
  color: var(--paper);
  border-color: var(--ok);
}
.rhd .mk-pb-pill--importing {
  background: var(--ai);
  color: var(--on-ai);
  border-color: var(--ai);
}
.rhd .mk-pb-pill--owned {
  color: var(--ink);
  border-color: var(--ink);
}
.rhd .mk-pb-car {
  border: 1px solid var(--rule);
  background: var(--paper);
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-pb-car__name {
  font:
    600 13px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-car__meta {
  font:
    400 11.5px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pb-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: 20px;
}
.rhd .mk-pb-step {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pb-step__k {
  font:
    700 34px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-pb-step__title {
  margin: 0;
  font:
    600 19px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-step__text {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pb-ui {
  margin-top: auto;
}
.rhd .mk-pb-chip-btn {
  align-self: flex-start;
  padding: 9px 14px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pb-chip-btn--bid {
  background: var(--amber);
  color: var(--on-amber);
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-pb-check {
  border: 1.5px dashed var(--ok);
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-pb-check__title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-check__btns {
  display: flex;
  gap: 6px;
}
.rhd .mk-pb-check__btn {
  padding: 7px 10px;
  border: 1px solid var(--ink);
  font:
    600 13px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pb-check__btn--ok {
  background: var(--ok);
  color: var(--paper);
  border-color: transparent;
}
.rhd .mk-pb-add {
  display: flex;
  gap: 6px;
}
.rhd .mk-pb-add__input {
  flex: 1;
  min-width: 0;
  padding: 9px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    500 14px "IBM Plex Mono",
    monospace;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.rhd .mk-pb-add__btn {
  padding: 9px 12px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}

/* /product/email — from design-mockups/rhd-woodblock/Product-Email.dc.html */
.rhd .mk-pe-thread {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-pe-thread .mk-pp-mock-head {
  padding: 12px 16px;
}
.rhd .mk-pe-thread__title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-msg {
  padding: 14px 16px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-pe-msg--sheet {
  gap: 6px;
}
.rhd .mk-pe-msg--draft {
  border-bottom: 0;
  gap: 8px;
  background: var(--paper);
}
.rhd .mk-pe-msg__head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-pe-msg__who {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-msg__state {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.rhd .mk-pe-msg__state--ok {
  color: var(--ok);
}
.rhd .mk-pe-msg__state--amber {
  color: var(--amber);
}
.rhd .mk-pe-msg__state--pill {
  padding: 4px 7px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-pe-msg__body {
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pe-msg--draft .mk-pe-msg__body {
  color: var(--ink);
}
.rhd .mk-pe-file {
  display: inline-flex;
  align-self: flex-start;
  gap: 7px;
  padding: 6px 9px;
  border: 1.5px solid var(--ink);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pe-file__k {
  font-family: "Shippori Mincho B1", serif;
  color: var(--beni);
}
.rhd .mk-pe-btns {
  display: flex;
  gap: 8px;
}
.rhd .mk-pe-btns .mk-pp-mini-btn {
  padding: 9px 13px;
  font-size: 13px;
}
.rhd .mk-pe-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 20px;
}
.rhd .mk-pe-card {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pe-card__k {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-pe-card__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-card__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* /product/hunts — from design-mockups/rhd-woodblock/Product-Hunts.dc.html */
.rhd .mk-ph-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-ph-card__head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-ph-card__title {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-ph-card__name {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-card__criteria {
  font:
    400 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-tag {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 9px;
  background: var(--ai);
  color: var(--on-ai);
  border-radius: 20px;
}
.rhd .mk-ph-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ph-stat {
  padding: 12px 16px;
  border-right: 1px solid var(--rule);
}
.rhd .mk-ph-stat:last-child {
  border-right: 0;
}
.rhd .mk-ph-stat__k {
  font:
    500 10.5px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-ph-stat__v {
  font:
    600 14px "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-match {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.4 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-match__price {
  font-weight: 600;
}
.rhd .mk-ph-match__flag {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--amber);
  align-self: center;
}
.rhd .mk-ph-card__foot {
  padding: 14px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-ph-card__note {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
}

/* steps */
.rhd .mk-ph-panel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
}
.rhd .mk-ph-pair {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
}
.rhd .mk-ph-email {
  flex: 1 1 200px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  padding: 14px;
  font:
    400 14px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ph-email__from {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  margin-bottom: 6px;
}
.rhd .mk-ph-filled {
  flex: 1 1 200px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font:
    500 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-filled__head {
  font:
    600 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-ph-filled__muted {
  color: var(--ink-2);
}
.rhd .mk-ph-choice {
  padding: 6px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}
.rhd .mk-ph-choice__opt {
  padding: 14px;
  border: 1px solid var(--rule);
}
.rhd .mk-ph-choice__opt--on {
  border: 2px solid var(--amber);
  background: var(--paper);
}
.rhd .mk-ph-choice__name {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-choice__desc {
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  margin-top: 4px;
}
.rhd .mk-ph-log {
  font:
    400 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-log__row {
  padding: 11px 14px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ph-log__row--head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.rhd .mk-ph-log__row--last {
  border-bottom: 0;
  color: var(--amber);
}
.rhd .mk-ph-log__day {
  font-family: "IBM Plex Mono", monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-won {
  padding: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}
.rhd .mk-ph-won__car {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-ph-won__name {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-won__meta {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-won__pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 10px;
  background: var(--ok);
  color: var(--paper);
  border-radius: 20px;
}

/* details band */
.rhd .mk-ph-details {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-ph-details__inner {
  padding-top: clamp(48px, 7vw, 80px);
  padding-bottom: clamp(48px, 7vw, 80px);
}
.rhd .mk-ph-details__title {
  margin: 0 0 32px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-ph-details__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 24px 32px;
}
.rhd .mk-ph-detail {
  border-top: 1.5px solid var(--ink);
  padding-top: 14px;
}
.rhd .mk-ph-detail__title {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-detail__text {
  margin: 6px 0 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* /product/landed-cost — layout from design-mockups/rhd-woodblock/Product-Landed-Cost.dc.html */

/* ---------- hero ---------- */
.rhd .mk-landed__sheet-head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}
.rhd .mk-landed__sheet-car {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__sheet-frame {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 3px 6px;
}
.rhd .mk-landed__line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding: 9px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-landed__line-label {
  font:
    500 14px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__line-usd {
  font:
    500 14px / 1.3 "IBM Plex Mono",
    monospace;
  text-align: right;
}
.rhd .mk-landed__line-note {
  font:
    400 11.5px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__line-doc {
  font:
    500 11.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  text-align: right;
  text-decoration: none;
}
.rhd .mk-landed__total {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  border-top: 1.5px solid var(--ink);
  font:
    600 18px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__total-label {
  font-family: "IBM Plex Sans", sans-serif;
}
.rhd .mk-landed__missing {
  padding: 10px 16px;
  border-top: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 5px;
  font:
    600 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}

/* ---------- how it works ---------- */
.rhd .mk-landed__h2 {
  margin: 0;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-landed__drop {
  flex: 1.3 1 400px;
  min-width: 0;
  border: 2px dashed var(--ink-2);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .mk-landed__drop-note {
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-landed__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.rhd .mk-landed__chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  color: var(--ink);
}
.rhd .mk-landed__chip-k {
  font:
    700 12px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-landed__review-head {
  padding: 11px 14px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-landed__review-title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__review-frame {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__review-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
  align-items: center;
}
.rhd .mk-landed__review-row:last-child {
  border-bottom: 0;
}
.rhd .mk-landed__ok {
  color: var(--ok);
}
.rhd .mk-landed__checklist {
  padding: 6px 0;
  font:
    400 14px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__check {
  display: flex;
  gap: 10px;
  padding: 9px 14px;
}
.rhd .mk-landed__check--missing {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-landed__sale {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font:
    500 15px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__sale-row {
  display: flex;
  justify-content: space-between;
}
.rhd .mk-landed__sale-row--muted {
  color: var(--ink-2);
}
.rhd .mk-landed__sale-row--profit {
  border-top: 1.5px solid var(--ink);
  padding-top: 8px;
  font-weight: 600;
  color: var(--ok);
}

/* ---------- one entry, five cars ---------- */
.rhd .mk-landed__band {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-landed__entry-inner {
  padding-top: clamp(48px, 7vw, 88px);
  padding-bottom: clamp(48px, 7vw, 88px);
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.rhd .mk-landed__entry-intro {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 760px;
}
.rhd .mk-landed__body17 {
  margin: 0;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-landed__table {
  overflow-x: auto;
}
.rhd .mk-landed__table-inner {
  min-width: 760px;
  font:
    400 13.5px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__tr {
  display: grid;
  grid-template-columns: 2.4fr 1fr 0.7fr 1fr 0.8fr 0.8fr 1fr;
  gap: 12px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
  align-items: center;
}
.rhd .mk-landed__tr > span:not(:first-child) {
  text-align: right;
}
.rhd .mk-landed__tr--head {
  padding: 12px 16px;
  border-bottom: 1.5px solid var(--ink);
  align-items: stretch;
  font:
    600 11px / 1.2 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-landed__tr--total {
  padding: 13px 16px;
  border-bottom: 0;
  align-items: stretch;
  font-weight: 600;
  background: var(--paper);
}
.rhd .mk-landed__car {
  font-family: "IBM Plex Sans", sans-serif;
}
.rhd .mk-landed__car b {
  font-weight: 600;
}
.rhd .mk-landed__car-frame {
  font:
    400 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__rate {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-landed__tr .mk-landed__strong {
  font-weight: 600;
}
.rhd .mk-landed__footnote {
  margin: 0;
  font:
    400 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ---------- review flags ---------- */
.rhd .mk-landed__checks {
  padding-top: clamp(56px, 8vw, 96px);
  padding-bottom: clamp(56px, 8vw, 96px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 56px);
  align-items: flex-start;
}
.rhd .mk-landed__checks-copy {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .mk-landed__flags {
  flex: 1.3 1 460px;
  min-width: 0;
}
.rhd .mk-landed__flag {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
  align-items: start;
}
.rhd .mk-landed__sev {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 7px;
  border-radius: 2px;
  border: 1px solid currentColor;
  margin-top: 2px;
}
.rhd .mk-landed__sev--high {
  color: var(--beni);
}
.rhd .mk-landed__sev--check {
  color: var(--amber);
}
.rhd .mk-landed__sev--note {
  color: var(--ink-2);
}
.rhd .mk-landed__flag-text {
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}

/* ---------- details ---------- */
/* ---------- FAQ (large variant) ---------- */
/* ---------- next page ---------- */

/* /product/parts: the car page's Parts panel and its drafted email, then the steps and the desk. */
.rhd .mk-ppt-panel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  max-width: 520px;
}
.rhd .mk-ppt-panel .mk-pp-mock-head {
  align-items: center;
}
.rhd .mk-ppt-panel__title {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppt-panel__k {
  font-family: "Shippori Mincho B1", serif;
  color: var(--beni);
  margin-right: 4px;
}
.rhd .mk-ppt-panel__body {
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ppt-panel__lead {
  margin: 0;
  font:
    500 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppt-panel__issues {
  margin: 0;
  padding-left: 18px;
  font:
    400 14px / 1.6 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppt-panel__issues li::marker {
  color: var(--amber);
}
.rhd .mk-ppt-panel__muted {
  margin: 0;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ppt-mail {
  padding: 14px 16px;
  background: var(--paper);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-ppt-mail__head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppt-mail__state {
  padding: 4px 7px;
  border: 1px solid var(--ok);
  color: var(--ok);
  border-radius: 20px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.rhd .mk-ppt-mail__body {
  font:
    400 13px / 1.55 "IBM Plex Mono",
    monospace;
  color: var(--ink);
}

.rhd .mk-ppt-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 20px;
}
.rhd .mk-ppt-card {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-ppt-card__k {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-ppt-card__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppt-card__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

.rhd .mk-ppt-desk {
  padding: clamp(56px, 8vw, 96px) 0;
}
.rhd .mk-ppt-desk__inner {
  max-width: 820px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rhd .mk-ppt-desk__title {
  margin: 0;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-ppt-desk__text {
  margin: 0;
  font:
    400 18px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ppt-desk__link {
  align-self: flex-start;
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: var(--amber);
  text-underline-offset: 4px;
}

/* /product/pricing-guidance — from design-mockups/rhd-woodblock/Product-Pricing-Guidance.dc.html */
.rhd .mk-ppg-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-ppg-card__car {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppg-range {
  padding: 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ppg-range__value {
  font:
    600 clamp(26px, 3.5vw, 34px) / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ppg-plot {
  position: relative;
  height: 44px;
  border-bottom: 1.5px solid var(--ink);
  margin-top: 8px;
}
.rhd .mk-ppg-plot__band {
  position: absolute;
  left: 33.3%;
  width: 25%;
  top: 0;
  bottom: 0;
  background: var(--amber);
  opacity: 0.18;
}
.rhd .mk-ppg-plot__dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ink);
  transform: translateX(-5px);
}
.rhd .mk-ppg-axis {
  display: flex;
  justify-content: space-between;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ppg-comps {
  padding: 6px 0;
}
.rhd .mk-ppg-comp {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 14px;
  padding: 9px 16px;
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
  align-items: center;
}
.rhd .mk-ppg-comp__car {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rhd .mk-ppg-comp__date {
  color: var(--ink-2);
}
.rhd .mk-ppg-comp__price {
  font-weight: 600;
}
.rhd .mk-ppg-comps__more {
  padding: 8px 16px 12px;
  font:
    600 13px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}
.rhd .mk-ppg-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 20px;
}
.rhd .mk-ppg-step {
  border-top: 3px solid var(--ink);
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-ppg-step__k {
  font:
    700 34px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-ppg-step__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppg-step__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ppg-why {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-ppg-why__inner {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 80px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rhd .mk-ppg-why__k {
  font:
    800 48px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.9;
}
.rhd .mk-ppg-why__text {
  margin: 0;
  font:
    400 18px / 1.65 "IBM Plex Sans",
    sans-serif;
}

/* ProductSearchPage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-product-search__search-hero-div-4 {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
}
.rhd .mk-product-search__search-hero-div-5 {
  flex: 1 1 240px;
  padding: 18px;
  border-right: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 14px;
  background: var(--paper-2);
}
.rhd .mk-product-search__search-hero-div-6 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-div-7 {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.rhd .mk-product-search__search-hero-span-2 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-span-3 {
  padding: 9px 10px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-search__search-hero-div-8 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.rhd .mk-product-search__search-hero-span-4 {
  padding: 9px 10px;
  border: 1px solid var(--rule);
  background: var(--card);
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-search__search-hero-div-9 {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.rhd .mk-product-search__search-hero-span-5 {
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  padding: 7px 9px;
  background: var(--ink);
  color: var(--paper);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-div-10 {
  margin-top: auto;
  padding: 10px;
  border: 1.5px dashed var(--amber);
  font:
    500 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}
.rhd .mk-product-search__search-hero-div-11 {
  flex: 3 1 480px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.rhd .mk-product-search__search-hero-div-12 {
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    500 12px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
}
.rhd .mk-product-search__search-hero-div-13 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-search__search-hero-div-14 {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-product-search__search-hero-div-15 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__search-hero-span-6 {
  font:
    600 14.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__search-hero-span-7 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-span-8 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--ok);
  color: var(--ok);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-span-9 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  background: var(--beni);
  color: var(--paper);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-div-16 {
  font:
    400 12.5px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-span-10 {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 14px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .mk-product-search__how-it-works-div-4 {
  padding: 6px;
}
.rhd .mk-product-search__how-it-works-div-5 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-search__how-it-works-span-2 {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__how-it-works-span-3 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ok);
}
.rhd .mk-product-search__how-it-works-div-6 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
}
.rhd .mk-product-search__how-it-works-span-4 {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-7 {
  padding: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-span-5 {
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  padding: 8px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-6 {
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  padding: 8px 10px;
  border: 1px solid var(--rule);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-7 {
  color: var(--beni);
}
.rhd .mk-product-search__how-it-works-div-8 {
  width: 100%;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  border-top: 1px solid var(--rule);
  padding-top: 10px;
  margin-top: 4px;
}
.rhd .mk-product-search__how-it-works-span-8 {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-product-search__how-it-works-div-10 {
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-span-9 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-10 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--ok);
  color: var(--ok);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-11 {
  padding: 13px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-div-12 {
  padding: 16px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.rhd .mk-product-search__how-it-works-span-11 {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 18px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-13 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-product-search__how-it-works-b {
  font:
    600 15px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__how-it-works-span-12 {
  font:
    400 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ProductSheetsPage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-product-sheets__sheets-hero-div-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: stretch;
}
.rhd .mk-product-sheets__sheets-hero-div-4 {
  flex: 1 1 420px;
  min-width: 0;
  background: #fbf7ee;
  color: #2a1c12;
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-family: "Shippori Mincho B1", serif;
}
.rhd .mk-product-sheets__sheets-hero-div-5 {
  display: flex;
  justify-content: space-between;
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  border-bottom: 2px solid #2a1c12;
  padding-bottom: 8px;
}
.rhd .mk-product-sheets__sheets-hero-span {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-6 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid #2a1c12;
  border-left: 1px solid #2a1c12;
  font-size: 12px;
}
.rhd .mk-product-sheets__sheets-hero-div-7 {
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
}
.rhd .mk-product-sheets__sheets-hero-div-8 {
  font-size: 10px;
  color: #6b5643;
}
.rhd .mk-product-sheets__sheets-hero-div-9 {
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
  text-align: center;
  position: relative;
}
.rhd .mk-product-sheets__sheets-hero-span-2 {
  font:
    700 22px / 1 "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-div-10 {
  grid-column: span 4;
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
  background: #f4cf8f55;
}
.rhd .mk-product-sheets__sheets-hero-span-3 {
  font:
    600 14px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-11 {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__sheets-hero-div-12 {
  position: relative;
  width: 150px;
  height: 190px;
  flex-shrink: 0;
  margin: 6px auto;
}
.rhd .mk-product-sheets__sheets-hero-div-13 {
  position: absolute;
  left: 30px;
  top: 0;
  width: 90px;
  height: 186px;
  border: 1.5px solid #2a1c12;
  border-radius: 26px 26px 14px 14px;
}
.rhd .mk-product-sheets__sheets-hero-div-14 {
  position: absolute;
  left: 42px;
  top: 62px;
  width: 66px;
  height: 70px;
  border: 1px solid #2a1c12;
  border-radius: 6px;
}
.rhd .mk-product-sheets__sheets-hero-span-4 {
  position: absolute;
  left: 4px;
  top: 22px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-5 {
  position: absolute;
  left: 58px;
  top: 110px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-6 {
  position: absolute;
  left: 60px;
  top: 168px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-7 {
  position: absolute;
  right: 0;
  top: 30px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-div-15 {
  flex: 1 1 140px;
  font-size: 14px;
  line-height: 1.9;
  border-left: 1px solid #2a1c12;
  padding-left: 10px;
}
.rhd .mk-product-sheets__sheets-hero-div-16 {
  flex: 1 1 420px;
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .mk-product-sheets__sheets-hero-div-17 {
  padding: 12px 16px;
  background: var(--ai);
  color: var(--on-ai);
  display: flex;
  justify-content: space-between;
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.rhd .mk-product-sheets__sheets-hero-span-8 {
  font-family: "IBM Plex Mono", monospace;
  letter-spacing: 0;
}
.rhd .mk-product-sheets__sheets-hero-div-18 {
  padding: 16px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 12px 18px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-sheets__sheets-hero-div-19 {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__sheets-hero-div-20 {
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__sheets-hero-div-21 {
  font:
    600 15px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__sheets-hero-div-22 {
  font:
    600 15px / 1.4 "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-23 {
  padding: 14px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-sheets__sheets-hero-div-24 {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
  margin-bottom: 6px;
}
.rhd .mk-product-sheets__sheets-hero-span-9 {
  font:
    600 19px / 1 "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 7px 10px;
  border: 1.5px dashed var(--beni);
  display: inline-block;
}
.rhd .mk-product-sheets__sheets-hero-div-25 {
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font:
    400 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__sheets-hero-b {
  font:
    600 13px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__sheets-hero-div-26 {
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid var(--rule);
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: 20px;
}
.rhd .mk-product-sheets__how-it-works-div-2 {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
}
.rhd .mk-product-sheets__how-it-works-h3 {
  margin: 0;
  font:
    600 19px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-p {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div-3 {
  display: flex;
  gap: 6px;
  margin-top: auto;
}
.rhd .mk-product-sheets__how-it-works-span-2 {
  padding: 6px 9px;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px "IBM Plex Mono",
    monospace;
  border-radius: 50%;
}
.rhd .mk-product-sheets__how-it-works-span-3 {
  padding: 6px 9px;
  border: 1px solid var(--rule);
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__how-it-works-div-4 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 3px 10px;
  font:
    400 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  margin-top: auto;
}
.rhd .mk-product-sheets__how-it-works-b {
  font-family: "IBM Plex Mono", monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__how-it-works-div-5 {
  margin-top: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 10px;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-span-4 {
  font-family: "Shippori Mincho B1", serif;
}
.rhd .mk-product-sheets__how-it-works-span-5 {
  margin-top: auto;
  align-self: flex-start;
  font:
    600 15px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 6px 9px;
  border: 1.5px dashed var(--beni);
}
.rhd .mk-product-sheets__how-it-works-div-6 {
  margin-top: 48px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: center;
}
.rhd .mk-product-sheets__how-it-works-div-7 {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-span-6 {
  font:
    700 40px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-product-sheets__how-it-works-h3-2 {
  margin: 0;
  font:
    600 22px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-p-2 {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div-8 {
  flex: 1.3 1 400px;
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-div-9 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__how-it-works-span-7 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-span-8 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--amber);
  border: 1px solid var(--amber);
  padding: 4px 6px;
  border-radius: 2px;
}
.rhd .mk-product-sheets__how-it-works-div-10 {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__how-it-works-span-9 {
  font:
    600 16px "IBM Plex Mono",
    monospace;
  text-decoration: line-through;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-span-10 {
  font:
    600 16px "IBM Plex Mono",
    monospace;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
}
.rhd .mk-product-sheets__how-it-works-span-11 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  color: var(--ok);
}
.rhd .mk-product-sheets__details-div-2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 0;
  border-top: 1.5px solid var(--ink);
  font:
    400 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__details-div-3 {
  padding: 14px 0;
  border-bottom: 1px solid var(--rule);
}

.rhd .mk-ra {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: 96px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 64px);
  align-items: flex-start;
}
.rhd .mk-ra__intro {
  flex: 1 1 340px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-ra__lede {
  margin: 0;
  font:
    400 18px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__steps {
  border-top: 1.5px solid var(--ink);
  display: flex;
  flex-direction: column;
  font:
    400 15.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ra__step {
  display: flex;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ra__n {
  font:
    500 13px / 1.6 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-ra__panel {
  flex: 1.2 1 420px;
  min-width: 0;
}
.rhd .mk-ra__form {
  padding: clamp(20px, 3.5vw, 36px);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.rhd .mk-ra__pair {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 18px;
}
.rhd .mk-ra__fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-ra__legend {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
  margin-bottom: 8px;
}
.rhd .mk-ra__fieldset .rhd-toggle {
  font-size: 14.5px;
}
/* Who's asking: two big pressed-button choices. */
.rhd .mk-ra__who {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: 10px;
}
.rhd .mk-ra__who-opt {
  min-height: 64px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
  padding: 12px 14px;
  text-align: left;
  border: 1.5px solid var(--rule);
  border-radius: 2px;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
}
.rhd .mk-ra__who-opt[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}
.rhd .mk-ra__who-opt:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .mk-ra__who-title {
  font:
    600 16px / 1.25 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ra__who-line {
  font:
    400 13.5px / 1.35 "IBM Plex Sans",
    sans-serif;
  opacity: 0.8;
}
.rhd .mk-ra__more {
  margin: 0;
  font:
    400 15px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__more a {
  display: inline-block;
  padding: 10px 0;
}
.rhd .mk-ra__call {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1.5px dashed var(--amber);
  font:
    400 15px / 1.45 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .mk-ra__call input {
  width: 20px;
  height: 20px;
  margin: 1px 0 0;
  accent-color: var(--amber);
}
.rhd .mk-ra__submit {
  height: 52px;
  padding: 0;
}
.rhd .mk-ra__fine {
  margin: 0;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__error {
  margin: 0;
  padding: 10px 12px;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    500 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ra__hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.rhd .mk-ra__done {
  padding: clamp(28px, 4vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
}
.rhd .mk-ra__thanks {
  margin: 0;
  font:
    700 32px / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-ra__done-text {
  margin: 0;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__done-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.rhd .mk-ra__done-actions .rhd-btn {
  padding: 13px 18px;
  font-size: 15px;
}

/* /security — values from design-mockups/rhd-woodblock/Security.dc.html */
.rhd .mk-security {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px) 88px;
}
.rhd .mk-security__label {
  margin-bottom: 16px;
}
.rhd .mk-security__title {
  margin: 0 0 16px;
  font:
    800 clamp(36px, 5vw, 56px) / 1.05 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-security__intro {
  margin: 0 0 48px;
  font:
    400 19px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-security__list {
  display: flex;
  flex-direction: column;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-security__item {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  padding: 28px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-security__k {
  font:
    700 28px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-security__heading {
  margin: 0 0 8px;
  font:
    600 21px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-security__text {
  margin: 0;
  font:
    400 16.5px / 1.65 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-security__contact {
  margin: 40px 0 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* /terms — the Terms of Service, laid out like /security (security.css). */
.rhd .mk-terms {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px) 88px;
}
.rhd .mk-terms__label {
  margin-bottom: 16px;
}
.rhd .mk-terms__title {
  margin: 0 0 16px;
  font:
    800 clamp(36px, 5vw, 56px) / 1.05 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-terms__intro {
  margin: 0 0 24px;
  font:
    400 19px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-terms__toc {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 18px;
  margin: 0 0 40px;
  font:
    500 14.5px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-terms__toc a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--ai);
}
.rhd .mk-terms__section {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  padding: 28px 0;
  border-bottom: 1px solid var(--rule);
  scroll-margin-top: 80px;
}
.rhd .mk-terms__section:first-of-type {
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-terms__k {
  font:
    700 28px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-terms__heading {
  margin: 0 0 10px;
  font:
    600 21px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-terms__section p,
.rhd .mk-terms__section li {
  font:
    400 16.5px / 1.65 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-terms__section p {
  margin: 0 0 12px;
}
.rhd .mk-terms__section ul {
  margin: 0;
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 560px) {
  .rhd .mk-terms__section {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
}

/* The kanji tooltip (KanjiTooltip.tsx): the mark large in mincho beside its reading and meaning,
   on the same ink bubble with the amber offset shadow as the help tips. Portalled into the mark's
   own .rhd root, so --ink / --paper follow its light or dark theme; the fallbacks cover a mark
   outside one. Fixed, centred on the mark, above it (below near the top of the screen). */
.rhd-ktip {
  position: fixed;
  z-index: 96;
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 260px;
  padding: 9px 14px 9px 12px;
  background: var(--ink, #2a1c12);
  color: var(--paper, #f3eada);
  border-radius: 2px;
  box-shadow: 4px 4px 0 var(--amber, #a64f17);
  pointer-events: none;
  transform: translate(-50%, -100%);
  animation: rhd-ktip-in 120ms ease-out;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
  white-space: normal;
}
.rhd-ktip--below {
  transform: translate(-50%, 0);
}
/* The notch pointing at the mark. */
.rhd-ktip::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  margin-left: -6px;
  border: 6px solid transparent;
  border-top-color: var(--ink, #2a1c12);
}
.rhd-ktip--below::after {
  top: auto;
  bottom: 100%;
  border-top-color: transparent;
  border-bottom-color: var(--ink, #2a1c12);
}
.rhd-ktip__jp {
  flex: none;
  padding-right: 12px;
  border-right: 1px solid color-mix(in srgb, var(--paper, #f3eada) 25%, transparent);
  font:
    600 24px / 1 "Shippori Mincho B1",
    "Hiragino Mincho ProN",
    "Yu Mincho",
    serif;
}
.rhd-ktip__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.rhd-ktip__reading {
  color: color-mix(in srgb, var(--paper, #f3eada) 70%, transparent);
  font:
    500 11px / 1.3 "IBM Plex Mono",
    ui-monospace,
    monospace;
  letter-spacing: 0.06em;
}
.rhd-ktip__meaning {
  font:
    500 13.5px / 1.35 "IBM Plex Sans",
    system-ui,
    sans-serif;
}
@keyframes rhd-ktip-in {
  from {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .rhd-ktip {
    animation: none;
  }
}

/* Generated by app/scripts/fonts.mjs. Do not edit; run `yarn workspace app fonts`. */

/* ibm-plex-sans-latin-400-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/11781b13e59d30facc40.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/3160b5c6767eb4c69c78.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-sans-latin-500-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/d8f3e27fbeccd900a867.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/fcd7b8c3d12375eedc97.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-sans-latin-600-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/57f2c00df3cb0b0cff43.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/24bc59b4b4ad02d1666d.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-400-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/081b2e53053c361ddb54.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/2b13cc93b07c41b27134.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-500-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/c28c19b51fcc5afd6835.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/a1fc5384545ba0657d83.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-600-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/5d11148cf713d2ddf354.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/45199eea8828315083bf.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[23]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/bfaf86acca43f067bd35.woff2)
    format("woff2");
  unicode-range:
    U+7f77-7f79, U+7f7d-7f80, U+7f82-7f83, U+7f86-7f88, U+7f8b-7f8d, U+7f8f-7f91, U+7f94, U+7f96-7f97, U+7f9a, U+7f9c-7f9d, U+7fa1-7fa3, U+7fa6, U+7faa, U+7fad-7faf, U+7fb2, U+7fb4, U+7fb6, U+7fb8-7fb9, U+7fbc, U+7fbf-7fc0, U+7fc3, U+7fc5-7fc6, U+7fc8, U+7fca, U+7fce-7fcf, U+7fd5, U+7fdb, U+7fdf, U+7fe1, U+7fe3, U+7fe5-7fe6, U+7fe8-7fe9, U+7feb-7fec, U+7fee-7ff0, U+7ff2-7ff3, U+7ff9-7ffa, U+7ffd-7fff, U+8002, U+8004, U+8006-8008, U+800a-800f, U+8011-8014, U+8016, U+8018-8019, U+801c-8021, U+8024, U+8026, U+8028, U+802c, U+802e, U+8030, U+8034-8035, U+8037, U+8039-8040, U+8043-8044, U+8046, U+804a, U+8052, U+8058, U+805a, U+805f-8060, U+8062, U+8064, U+8066, U+8068, U+806d, U+806f-8073, U+8075-8076, U+8079, U+807b, U+807d-8081, U+8084-8088, U+808b, U+808e, U+8093, U+8099-809a, U+809c, U+809e, U+80a4, U+80a6-80a7, U+80ab-80ad, U+80b1, U+80b8-80b9, U+80c4-80c5, U+80c8, U+80ca, U+80cd, U+80cf, U+80d2, U+80d4-80db, U+80dd, U+80e0, U+80e4-80e6, U+80ed-80f3, U+80f5-80f7, U+80f9-80fc, U+80fe, U+8101, U+8103, U+8109, U+810b, U+810d, U+8116-8118, U+811b-811c, U+811e, U+8120, U+8123-8124, U+8127, U+8129, U+812b-812c, U+812f-8130, U+8135, U+8139-813a, U+813c-813e, U+8141, U+8145-8147;
}

/* shippori-mincho-b1-[51]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/f15cc8faf88aeae7ffd7.woff2)
    format("woff2");
  unicode-range:
    U+4093, U+4103, U+4105, U+4148, U+414f, U+4163, U+41b4, U+41bf, U+41e6, U+41ee, U+41f3, U+4207, U+420e, U+4264, U+4293, U+42c6, U+42d6, U+42dd, U+4302, U+432b, U+4343, U+43ee, U+43f0, U+4408, U+440c, U+4417, U+441c, U+4422, U+4453, U+445b, U+4476, U+447a, U+4491, U+44b3, U+44be, U+44d4, U+4508, U+450d, U+4525, U+4543, U+457a, U+459d, U+45b8, U+45be, U+45e5, U+45ea, U+460f-4610, U+4641, U+4665, U+46a1, U+46ae-46af, U+470c, U+471f, U+4764, U+47e6, U+47fd, U+4816, U+481e, U+4844, U+484e, U+48b5, U+49b0, U+49e7, U+49fa, U+4a04, U+4a29, U+4abc, U+4b38, U+4b3b, U+4b7e, U+4bc2, U+4bca, U+4bd2, U+4be8, U+4c17, U+4c20, U+4c38, U+4cc4, U+4cd1, U+4ce1, U+4d07, U+4d77, U+4e02, U+4e04-4e05, U+4e0c, U+4e0f-4e12, U+4e15, U+4e17, U+4e19, U+4e1e-4e1f, U+4e23-4e24, U+4e28-4e2c, U+4e2e-4e31, U+4e35-4e37, U+4e3f-4e42, U+4e44, U+4e47-4e48, U+4e4d-4e4e, U+4e51, U+4e55-4e56, U+4e58, U+4e5a-4e5c, U+4e62-4e63, U+4e68-4e69, U+4e74-4e75, U+4e79, U+4e7f, U+4e82, U+4e85, U+4e8a, U+4e8d-4e8e, U+4e96-4e99, U+4e9d-4ea0, U+4ea2, U+4ea5-4ea6, U+4ea8, U+4eaf-4eb0, U+4eb3, U+4eb6, U+4eb9, U+4ebb-4ebc, U+4ec2-4ec4, U+4ec6-4ec8, U+4ecd, U+4ed0, U+4ed7, U+4eda-4edb, U+4edd-4ee2, U+4ee8, U+4eeb, U+4eed, U+4eef, U+4ef1, U+4ef3, U+4ef5, U+4ef7, U+4efc-4f00, U+4f02-4f03, U+4f08-4f09, U+4f0b-4f0d, U+4f12, U+4f15-4f17, U+4f19, U+4f1c, U+4f2b, U+4f2e, U+4f30-4f31, U+4f33, U+4f35-4f37, U+4f39, U+4f3b, U+4f3e, U+4f40, U+4f42-4f43, U+4f48-4f49, U+4f4b-4f4c, U+4f52, U+4f54, U+4f56;
}

/* shippori-mincho-b1-[55]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/0cb863dd36ea92818a2d.woff2)
    format("woff2");
  unicode-range:
    U+3028-303f, U+3094-3096, U+309f-30a0, U+30ee, U+30f7-30fa, U+30ff, U+3105-312f, U+3131-3163,
    U+3165-318e, U+3190-31bb, U+31c0-31c7;
}

/* shippori-mincho-b1-[68]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/ce038099fb045d928ae6.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/21828d1b623f357f6bd2.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[73]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/1770a6deef79e5623f84.woff2)
    format("woff2");
  unicode-range:
    U+4e91, U+508d, U+50e7, U+514e, U+51f6, U+5446, U+5504, U+584a, U+59a8, U+59d3, U+5a46, U+5ac9, U+6020, U+60a6, U+6148, U+621a, U+6234, U+64c1, U+6523, U+675c, U+67d1, U+6953, U+6ccc, U+6df5, U+6e13, U+6f06, U+723a, U+7325, U+74e6, U+758e, U+75ab, U+75d9, U+7a40, U+8096, U+82fa, U+8587, U+8594, U+8a6b, U+8ab9, U+8b17, U+8b83, U+937c, U+963b, U+9673, U+96db, U+9ce9, U+9f4b, U+ff67, U+ff82, U+ff93;
}

/* shippori-mincho-b1-[74]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/cad9b344c8a3d1943ff9.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/3a25eb0b5d52d58ac522.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a6721f53f365df9f52e7.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[83]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/42cb3c75121c826e5dfb.woff2)
    format("woff2");
  unicode-range:
    U+2103, U+5049, U+52b1, U+5320, U+5553, U+572d, U+58c7, U+5b5d, U+5bc2, U+5de3, U+5e61, U+5f80, U+61a9, U+67d0, U+67f4, U+6c88, U+6ca1, U+6ce5, U+6d78, U+6e9c, U+6f54, U+731b, U+73b2, U+74a7, U+74f6, U+75e9, U+7b20, U+7c8b, U+7f72, U+809d, U+8108, U+82b3, U+82bd, U+84b8, U+84c4, U+88c2, U+8ae6, U+8ef8, U+902e, U+9065, U+9326, U+935b, U+938c, U+9676, U+9694, U+96f7, U+9ed9, U+ff48, U+ff4c, U+ff81;
}

/* shippori-mincho-b1-[86]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/b03fa56dc4a442c640d4.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/911a8dc93963d0b56e52.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/281a81e60fc35a7d3b5d.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/f03d83ab78f092a73f06.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/01c27aa67fe588b5c7ef.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8e7fe849fcc131157a85.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/fc5d3e732d9a1fa92991.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/1323e5f5155f739ba4fc.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a96740a5773f2dd5dc27.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[98]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4acbbf098dd20c25f907.woff2)
    format("woff2");
  unicode-range:
    U+7e, U+b4, U+25c6, U+2661, U+4e92, U+4eee, U+4ffa, U+5144, U+5237, U+5287, U+52b4, U+58c1, U+5bff, U+5c04, U+5c06, U+5e95, U+5f31, U+5f93, U+63c3, U+640d, U+6557, U+6614, U+662f, U+67d3, U+690d, U+6bba, U+6e6f, U+72af, U+732b, U+7518, U+7ae0, U+7ae5, U+7af6, U+822a, U+89e6, U+8a3a, U+8a98, U+8cb8, U+8de1, U+8e8d, U+95d8, U+961c, U+96a3, U+96ea, U+9bae, U+ff20, U+ff22, U+ff29, U+ff2b-ff2c;
}

/* shippori-mincho-b1-[99]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/cb31eae26b769f8429c3.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/189462eef2f8dadbf48e.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/574c8ef39092baed7076.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8c90b214642d249eb5af.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/35e86c566a3a9aab4f02.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/0527827481cc87fb2ab7.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/90bbd18b721a15989de9.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/046738efc0a71ae05fd0.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/2f01b9edae5acabbc9d7.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4b6e93932ec552ca89c2.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/1da794b80c6a62b515a7.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/42dbec9c3d417f07c002.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4f866989660f0bd2298f.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a47215ccb59a307b29ad.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8cf7d2c38e3aebd57b19.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/9a972b91ebc3b786be9c.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/2d539b55ca13900d1503.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/5d381cb798e35c158a1f.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/21e760fe1bf330a30349.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/c9674d98f6d45469e728.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/76f6de870dd2705cda7e.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/08d445e0d257f5d02fc1.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/7f2b62018b314af3f671.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4050a5177bd1f65f6d92.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[23]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/bd0e4fd33faa193c49be.woff2)
    format("woff2");
  unicode-range:
    U+7f77-7f79, U+7f7d-7f80, U+7f82-7f83, U+7f86-7f88, U+7f8b-7f8d, U+7f8f-7f91, U+7f94, U+7f96-7f97, U+7f9a, U+7f9c-7f9d, U+7fa1-7fa3, U+7fa6, U+7faa, U+7fad-7faf, U+7fb2, U+7fb4, U+7fb6, U+7fb8-7fb9, U+7fbc, U+7fbf-7fc0, U+7fc3, U+7fc5-7fc6, U+7fc8, U+7fca, U+7fce-7fcf, U+7fd5, U+7fdb, U+7fdf, U+7fe1, U+7fe3, U+7fe5-7fe6, U+7fe8-7fe9, U+7feb-7fec, U+7fee-7ff0, U+7ff2-7ff3, U+7ff9-7ffa, U+7ffd-7fff, U+8002, U+8004, U+8006-8008, U+800a-800f, U+8011-8014, U+8016, U+8018-8019, U+801c-8021, U+8024, U+8026, U+8028, U+802c, U+802e, U+8030, U+8034-8035, U+8037, U+8039-8040, U+8043-8044, U+8046, U+804a, U+8052, U+8058, U+805a, U+805f-8060, U+8062, U+8064, U+8066, U+8068, U+806d, U+806f-8073, U+8075-8076, U+8079, U+807b, U+807d-8081, U+8084-8088, U+808b, U+808e, U+8093, U+8099-809a, U+809c, U+809e, U+80a4, U+80a6-80a7, U+80ab-80ad, U+80b1, U+80b8-80b9, U+80c4-80c5, U+80c8, U+80ca, U+80cd, U+80cf, U+80d2, U+80d4-80db, U+80dd, U+80e0, U+80e4-80e6, U+80ed-80f3, U+80f5-80f7, U+80f9-80fc, U+80fe, U+8101, U+8103, U+8109, U+810b, U+810d, U+8116-8118, U+811b-811c, U+811e, U+8120, U+8123-8124, U+8127, U+8129, U+812b-812c, U+812f-8130, U+8135, U+8139-813a, U+813c-813e, U+8141, U+8145-8147;
}

/* shippori-mincho-b1-[51]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/e4a72a8736b1eb1289da.woff2)
    format("woff2");
  unicode-range:
    U+4093, U+4103, U+4105, U+4148, U+414f, U+4163, U+41b4, U+41bf, U+41e6, U+41ee, U+41f3, U+4207, U+420e, U+4264, U+4293, U+42c6, U+42d6, U+42dd, U+4302, U+432b, U+4343, U+43ee, U+43f0, U+4408, U+440c, U+4417, U+441c, U+4422, U+4453, U+445b, U+4476, U+447a, U+4491, U+44b3, U+44be, U+44d4, U+4508, U+450d, U+4525, U+4543, U+457a, U+459d, U+45b8, U+45be, U+45e5, U+45ea, U+460f-4610, U+4641, U+4665, U+46a1, U+46ae-46af, U+470c, U+471f, U+4764, U+47e6, U+47fd, U+4816, U+481e, U+4844, U+484e, U+48b5, U+49b0, U+49e7, U+49fa, U+4a04, U+4a29, U+4abc, U+4b38, U+4b3b, U+4b7e, U+4bc2, U+4bca, U+4bd2, U+4be8, U+4c17, U+4c20, U+4c38, U+4cc4, U+4cd1, U+4ce1, U+4d07, U+4d77, U+4e02, U+4e04-4e05, U+4e0c, U+4e0f-4e12, U+4e15, U+4e17, U+4e19, U+4e1e-4e1f, U+4e23-4e24, U+4e28-4e2c, U+4e2e-4e31, U+4e35-4e37, U+4e3f-4e42, U+4e44, U+4e47-4e48, U+4e4d-4e4e, U+4e51, U+4e55-4e56, U+4e58, U+4e5a-4e5c, U+4e62-4e63, U+4e68-4e69, U+4e74-4e75, U+4e79, U+4e7f, U+4e82, U+4e85, U+4e8a, U+4e8d-4e8e, U+4e96-4e99, U+4e9d-4ea0, U+4ea2, U+4ea5-4ea6, U+4ea8, U+4eaf-4eb0, U+4eb3, U+4eb6, U+4eb9, U+4ebb-4ebc, U+4ec2-4ec4, U+4ec6-4ec8, U+4ecd, U+4ed0, U+4ed7, U+4eda-4edb, U+4edd-4ee2, U+4ee8, U+4eeb, U+4eed, U+4eef, U+4ef1, U+4ef3, U+4ef5, U+4ef7, U+4efc-4f00, U+4f02-4f03, U+4f08-4f09, U+4f0b-4f0d, U+4f12, U+4f15-4f17, U+4f19, U+4f1c, U+4f2b, U+4f2e, U+4f30-4f31, U+4f33, U+4f35-4f37, U+4f39, U+4f3b, U+4f3e, U+4f40, U+4f42-4f43, U+4f48-4f49, U+4f4b-4f4c, U+4f52, U+4f54, U+4f56;
}

/* shippori-mincho-b1-[55]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/6173f60991a1877202ff.woff2)
    format("woff2");
  unicode-range:
    U+3028-303f, U+3094-3096, U+309f-30a0, U+30ee, U+30f7-30fa, U+30ff, U+3105-312f, U+3131-3163,
    U+3165-318e, U+3190-31bb, U+31c0-31c7;
}

/* shippori-mincho-b1-[68]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f174dbedb6bb5dd0d870.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/6696736da8fc1fffc592.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[73]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/07ba0e87011e7e65bd6f.woff2)
    format("woff2");
  unicode-range:
    U+4e91, U+508d, U+50e7, U+514e, U+51f6, U+5446, U+5504, U+584a, U+59a8, U+59d3, U+5a46, U+5ac9, U+6020, U+60a6, U+6148, U+621a, U+6234, U+64c1, U+6523, U+675c, U+67d1, U+6953, U+6ccc, U+6df5, U+6e13, U+6f06, U+723a, U+7325, U+74e6, U+758e, U+75ab, U+75d9, U+7a40, U+8096, U+82fa, U+8587, U+8594, U+8a6b, U+8ab9, U+8b17, U+8b83, U+937c, U+963b, U+9673, U+96db, U+9ce9, U+9f4b, U+ff67, U+ff82, U+ff93;
}

/* shippori-mincho-b1-[74]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9a254aa11bf85924480e.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/2cd7c30a92d46b66d590.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/3ae58fe43b82da26cb30.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[83]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/861433149904d0762981.woff2)
    format("woff2");
  unicode-range:
    U+2103, U+5049, U+52b1, U+5320, U+5553, U+572d, U+58c7, U+5b5d, U+5bc2, U+5de3, U+5e61, U+5f80, U+61a9, U+67d0, U+67f4, U+6c88, U+6ca1, U+6ce5, U+6d78, U+6e9c, U+6f54, U+731b, U+73b2, U+74a7, U+74f6, U+75e9, U+7b20, U+7c8b, U+7f72, U+809d, U+8108, U+82b3, U+82bd, U+84b8, U+84c4, U+88c2, U+8ae6, U+8ef8, U+902e, U+9065, U+9326, U+935b, U+938c, U+9676, U+9694, U+96f7, U+9ed9, U+ff48, U+ff4c, U+ff81;
}

/* shippori-mincho-b1-[86]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/c3e3137603df0962fe0b.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/aff356782e79b8d48879.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f09e78a5cbce54117230.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9b02eb887b79ca5cc5ca.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/138da1ff42d2731b7b5a.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ee4d1834618c7f415a30.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ffd2b03cac354d2a9a1c.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/c12d4eafa5675a5c6039.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/04a0cfbc680a5747ec15.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[98]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/bd79fb57fc5f1b217477.woff2)
    format("woff2");
  unicode-range:
    U+7e, U+b4, U+25c6, U+2661, U+4e92, U+4eee, U+4ffa, U+5144, U+5237, U+5287, U+52b4, U+58c1, U+5bff, U+5c04, U+5c06, U+5e95, U+5f31, U+5f93, U+63c3, U+640d, U+6557, U+6614, U+662f, U+67d3, U+690d, U+6bba, U+6e6f, U+72af, U+732b, U+7518, U+7ae0, U+7ae5, U+7af6, U+822a, U+89e6, U+8a3a, U+8a98, U+8cb8, U+8de1, U+8e8d, U+95d8, U+961c, U+96a3, U+96ea, U+9bae, U+ff20, U+ff22, U+ff29, U+ff2b-ff2c;
}

/* shippori-mincho-b1-[99]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/d0c323956056dc509cdb.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/4c1cb8b67738ce5ba1e1.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/a878cb9b2d9b214894ff.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/99424cecb59e061e56fb.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/20c19b2ea9701d41853a.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/46d873932ee1350aebac.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/8f2290133a87e3b7eeee.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9e1d548e76eb494e9427.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/5a5a361e4b376bc18206.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f9806573df847f23b06f.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/33a6fd5dbeec1f1de0b7.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/2a9020f0ea095447b176.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ed6c0d19ebe34bc53fe8.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/845376a9dfd38100589e.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/31911e4783fd1e4f3864.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/502bc4de98e769e09000.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/05f15756c6284c12749d.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/01cb21e8024cfffaa5f5.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/488346e2ae22b92c4732.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/7bc5fddc59ea406db7ff.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/e11d543a6d2914f1b5a8.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/72c7fdcaad684a0f6008.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/eed99aa8d7a3d701f0d7.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/0bffbe8dab6ec9423886.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[23]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/3b5043a7d2c526a55338.woff2)
    format("woff2");
  unicode-range:
    U+7f77-7f79, U+7f7d-7f80, U+7f82-7f83, U+7f86-7f88, U+7f8b-7f8d, U+7f8f-7f91, U+7f94, U+7f96-7f97, U+7f9a, U+7f9c-7f9d, U+7fa1-7fa3, U+7fa6, U+7faa, U+7fad-7faf, U+7fb2, U+7fb4, U+7fb6, U+7fb8-7fb9, U+7fbc, U+7fbf-7fc0, U+7fc3, U+7fc5-7fc6, U+7fc8, U+7fca, U+7fce-7fcf, U+7fd5, U+7fdb, U+7fdf, U+7fe1, U+7fe3, U+7fe5-7fe6, U+7fe8-7fe9, U+7feb-7fec, U+7fee-7ff0, U+7ff2-7ff3, U+7ff9-7ffa, U+7ffd-7fff, U+8002, U+8004, U+8006-8008, U+800a-800f, U+8011-8014, U+8016, U+8018-8019, U+801c-8021, U+8024, U+8026, U+8028, U+802c, U+802e, U+8030, U+8034-8035, U+8037, U+8039-8040, U+8043-8044, U+8046, U+804a, U+8052, U+8058, U+805a, U+805f-8060, U+8062, U+8064, U+8066, U+8068, U+806d, U+806f-8073, U+8075-8076, U+8079, U+807b, U+807d-8081, U+8084-8088, U+808b, U+808e, U+8093, U+8099-809a, U+809c, U+809e, U+80a4, U+80a6-80a7, U+80ab-80ad, U+80b1, U+80b8-80b9, U+80c4-80c5, U+80c8, U+80ca, U+80cd, U+80cf, U+80d2, U+80d4-80db, U+80dd, U+80e0, U+80e4-80e6, U+80ed-80f3, U+80f5-80f7, U+80f9-80fc, U+80fe, U+8101, U+8103, U+8109, U+810b, U+810d, U+8116-8118, U+811b-811c, U+811e, U+8120, U+8123-8124, U+8127, U+8129, U+812b-812c, U+812f-8130, U+8135, U+8139-813a, U+813c-813e, U+8141, U+8145-8147;
}

/* shippori-mincho-b1-[51]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f1c332303e09146f0fae.woff2)
    format("woff2");
  unicode-range:
    U+4093, U+4103, U+4105, U+4148, U+414f, U+4163, U+41b4, U+41bf, U+41e6, U+41ee, U+41f3, U+4207, U+420e, U+4264, U+4293, U+42c6, U+42d6, U+42dd, U+4302, U+432b, U+4343, U+43ee, U+43f0, U+4408, U+440c, U+4417, U+441c, U+4422, U+4453, U+445b, U+4476, U+447a, U+4491, U+44b3, U+44be, U+44d4, U+4508, U+450d, U+4525, U+4543, U+457a, U+459d, U+45b8, U+45be, U+45e5, U+45ea, U+460f-4610, U+4641, U+4665, U+46a1, U+46ae-46af, U+470c, U+471f, U+4764, U+47e6, U+47fd, U+4816, U+481e, U+4844, U+484e, U+48b5, U+49b0, U+49e7, U+49fa, U+4a04, U+4a29, U+4abc, U+4b38, U+4b3b, U+4b7e, U+4bc2, U+4bca, U+4bd2, U+4be8, U+4c17, U+4c20, U+4c38, U+4cc4, U+4cd1, U+4ce1, U+4d07, U+4d77, U+4e02, U+4e04-4e05, U+4e0c, U+4e0f-4e12, U+4e15, U+4e17, U+4e19, U+4e1e-4e1f, U+4e23-4e24, U+4e28-4e2c, U+4e2e-4e31, U+4e35-4e37, U+4e3f-4e42, U+4e44, U+4e47-4e48, U+4e4d-4e4e, U+4e51, U+4e55-4e56, U+4e58, U+4e5a-4e5c, U+4e62-4e63, U+4e68-4e69, U+4e74-4e75, U+4e79, U+4e7f, U+4e82, U+4e85, U+4e8a, U+4e8d-4e8e, U+4e96-4e99, U+4e9d-4ea0, U+4ea2, U+4ea5-4ea6, U+4ea8, U+4eaf-4eb0, U+4eb3, U+4eb6, U+4eb9, U+4ebb-4ebc, U+4ec2-4ec4, U+4ec6-4ec8, U+4ecd, U+4ed0, U+4ed7, U+4eda-4edb, U+4edd-4ee2, U+4ee8, U+4eeb, U+4eed, U+4eef, U+4ef1, U+4ef3, U+4ef5, U+4ef7, U+4efc-4f00, U+4f02-4f03, U+4f08-4f09, U+4f0b-4f0d, U+4f12, U+4f15-4f17, U+4f19, U+4f1c, U+4f2b, U+4f2e, U+4f30-4f31, U+4f33, U+4f35-4f37, U+4f39, U+4f3b, U+4f3e, U+4f40, U+4f42-4f43, U+4f48-4f49, U+4f4b-4f4c, U+4f52, U+4f54, U+4f56;
}

/* shippori-mincho-b1-[55]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/fdf40f84c240ea239080.woff2)
    format("woff2");
  unicode-range:
    U+3028-303f, U+3094-3096, U+309f-30a0, U+30ee, U+30f7-30fa, U+30ff, U+3105-312f, U+3131-3163,
    U+3165-318e, U+3190-31bb, U+31c0-31c7;
}

/* shippori-mincho-b1-[68]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1d732fadc6d0f667b25d.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/62b42b7755c0d6dc5313.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[73]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/9e13be2001b96ab76f48.woff2)
    format("woff2");
  unicode-range:
    U+4e91, U+508d, U+50e7, U+514e, U+51f6, U+5446, U+5504, U+584a, U+59a8, U+59d3, U+5a46, U+5ac9, U+6020, U+60a6, U+6148, U+621a, U+6234, U+64c1, U+6523, U+675c, U+67d1, U+6953, U+6ccc, U+6df5, U+6e13, U+6f06, U+723a, U+7325, U+74e6, U+758e, U+75ab, U+75d9, U+7a40, U+8096, U+82fa, U+8587, U+8594, U+8a6b, U+8ab9, U+8b17, U+8b83, U+937c, U+963b, U+9673, U+96db, U+9ce9, U+9f4b, U+ff67, U+ff82, U+ff93;
}

/* shippori-mincho-b1-[74]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e8de2a0c21b220f65905.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/5040accb9532572299d7.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/a0df658cd6931f38785c.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[83]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f683e6c584c63f90b845.woff2)
    format("woff2");
  unicode-range:
    U+2103, U+5049, U+52b1, U+5320, U+5553, U+572d, U+58c7, U+5b5d, U+5bc2, U+5de3, U+5e61, U+5f80, U+61a9, U+67d0, U+67f4, U+6c88, U+6ca1, U+6ce5, U+6d78, U+6e9c, U+6f54, U+731b, U+73b2, U+74a7, U+74f6, U+75e9, U+7b20, U+7c8b, U+7f72, U+809d, U+8108, U+82b3, U+82bd, U+84b8, U+84c4, U+88c2, U+8ae6, U+8ef8, U+902e, U+9065, U+9326, U+935b, U+938c, U+9676, U+9694, U+96f7, U+9ed9, U+ff48, U+ff4c, U+ff81;
}

/* shippori-mincho-b1-[86]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/5de1d012ad69306386c5.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6142623a02422475d70d.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/997c0aa9917a570360c6.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/42f33110d33562e71026.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e4f3f775f69be24afc7e.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d165b9ba1f03d9f72f02.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/8823614168f22256e7ed.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6eaa41eefdbf60ee340b.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1b2785780bef3845d61b.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[98]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/80ddf9828cef5168d2e6.woff2)
    format("woff2");
  unicode-range:
    U+7e, U+b4, U+25c6, U+2661, U+4e92, U+4eee, U+4ffa, U+5144, U+5237, U+5287, U+52b4, U+58c1, U+5bff, U+5c04, U+5c06, U+5e95, U+5f31, U+5f93, U+63c3, U+640d, U+6557, U+6614, U+662f, U+67d3, U+690d, U+6bba, U+6e6f, U+72af, U+732b, U+7518, U+7ae0, U+7ae5, U+7af6, U+822a, U+89e6, U+8a3a, U+8a98, U+8cb8, U+8de1, U+8e8d, U+95d8, U+961c, U+96a3, U+96ea, U+9bae, U+ff20, U+ff22, U+ff29, U+ff2b-ff2c;
}

/* shippori-mincho-b1-[99]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/10ba0f53438dbb6a5873.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d49d056ad729480f39e3.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1120f0177f5aa8c7482c.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/3024929e33b96e6ab221.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/3975f9dc43b9777c894d.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/410db805e9d3f10a1645.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/23dd7ffb0fbb86b41b35.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d99dc1321e4906a6a4d4.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/0e600dc64307d782664d.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/08bc02ff41323873b00b.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e00ce4d75bfde0f2335f.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f41fba9380fe9e5bf59f.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/debca3a01db53d3d3a0b.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/c156d9361d853b03a3dc.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/4bae60bc17feaae73649.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/280f112d47c00eec74e2.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6925512da164e7c4284d.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/0a6767275770191bfe10.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/7d8c2965e32a672b5897.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/92fb1699d3b986e1cc4a.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f16b488cb244970aa6f7.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/a6166d78e3387502f194.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/668660afacee2b0099b3.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/499da494bd3e8b8be4b0.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-neutral-100: oklch(97% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-neutral-800: oklch(26.9% 0 0);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-heading: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    --font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    --color-indigo-jp-100: #fff3e4;
    --color-indigo-jp-500: #c28d41;
    --color-indigo-jp-600: #a06f24;
    --color-indigo-jp-700: #7d5411;
    --color-indigo-jp-800: #5a3b0a;
    --color-shu-50: #fdf5f3;
    --color-shu-100: #f9e8e4;
    --color-shu-200: #f0d1ca;
    --color-shu-500: #b25f52;
    --color-shu-600: #98483c;
    --color-shu-700: #7c382e;
    --color-shu-800: #5f2b23;
    --color-washi-100: #f3f2f2;
    --color-matcha-50: #f4f6f1;
    --color-matcha-100: #e7ebe0;
    --color-matcha-200: #cfd8c4;
    --color-matcha-500: #74855f;
    --color-matcha-700: #49563c;
    --color-matcha-800: #3a4530;
    --color-sumi-50: #f8f4f4;
    --color-sumi-100: #eae7e7;
    --color-sumi-200: #d7d3d3;
    --color-sumi-300: #bab6b6;
    --color-sumi-400: #9b9797;
    --color-sumi-500: #7d7979;
    --color-sumi-600: #605d5d;
    --color-sumi-700: #444141;
    --color-sumi-900: #201f1d;
    --radius-jp: 4px;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mx-auto {
    margin-inline: auto;
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/3 {
    width: calc(1/3 * 100%);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-full {
    width: 100%;
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .flex-1 {
    flex: 1;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .resize {
    resize: both;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .space-y-0\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-sumi-200 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-sumi-200);
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-sumi-200 {
    border-color: var(--color-sumi-200);
  }
  .border-sumi-300 {
    border-color: var(--color-sumi-300);
  }
  .bg-indigo-jp-600 {
    background-color: var(--color-indigo-jp-600);
  }
  .bg-matcha-100 {
    background-color: var(--color-matcha-100);
  }
  .bg-sumi-50 {
    background-color: var(--color-sumi-50);
  }
  .bg-sumi-100 {
    background-color: var(--color-sumi-100);
  }
  .bg-sumi-200 {
    background-color: var(--color-sumi-200);
  }
  .bg-washi-100 {
    background-color: var(--color-washi-100);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .text-center {
    text-align: center;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-matcha-700 {
    color: var(--color-matcha-700);
  }
  .text-shu-600 {
    color: var(--color-shu-600);
  }
  .text-sumi-300 {
    color: var(--color-sumi-300);
  }
  .text-sumi-400 {
    color: var(--color-sumi-400);
  }
  .text-sumi-500 {
    color: var(--color-sumi-500);
  }
  .text-sumi-600 {
    color: var(--color-sumi-600);
  }
  .text-sumi-700 {
    color: var(--color-sumi-700);
  }
  .text-sumi-900 {
    color: var(--color-sumi-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .underline {
    text-decoration-line: underline;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .hover\:bg-amber-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-50);
      }
    }
  }
  .hover\:bg-indigo-jp-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-jp-700);
      }
    }
  }
  .hover\:bg-matcha-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-matcha-50);
      }
    }
  }
  .hover\:bg-shu-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shu-50);
      }
    }
  }
  .hover\:bg-sumi-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-sumi-50);
      }
    }
  }
  .hover\:bg-sumi-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-sumi-100);
      }
    }
  }
  .focus\:border-indigo-jp-500 {
    &:focus {
      border-color: var(--color-indigo-jp-500);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-indigo-jp-500 {
    &:focus {
      --tw-ring-color: var(--color-indigo-jp-500);
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:px-6 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:px-8 {
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
}
:root {
  --color-bg: #f3f2f2;
  --color-surface: #eae9e9;
  --color-text: #201f1d;
  --color-accent: #b68235;
  --color-divider: color-mix(in srgb, #201f1d 16%, transparent);
  --color-neutral-100: #f8f4f4;
  --color-neutral-200: #eae7e7;
  --color-neutral-300: #d7d3d3;
  --color-neutral-400: #bab6b6;
  --color-neutral-500: #9b9797;
  --color-neutral-600: #7d7979;
  --color-neutral-700: #605d5d;
  --color-neutral-800: #444141;
  --color-neutral-900: #2d2b2b;
  --color-accent-100: #fff3e4;
  --color-accent-200: #ffe3bf;
  --color-accent-300: #facb8d;
  --color-accent-400: #e1ad66;
  --color-accent-500: #c28d41;
  --color-accent-600: #a06f24;
  --color-accent-700: #7d5411;
  --color-accent-800: #5a3b0a;
  --color-accent-900: #3a270d;
  --font-heading-weight: 600;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 7px;
  --shadow-sm: 0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);
  --shadow-md: 0 3px 10px color-mix(in srgb, #2d2b2b 16%, transparent);
  --shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent);
}
@layer base {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  body {
    background-color: var(--color-washi-100);
    color: var(--color-sumi-900);
    font-size: 15px;
    line-height: 1.5;
    font-feature-settings: "kern" 1,
      "liga" 1;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-family: var(--font-heading);
    color: var(--color-sumi-900);
    font-weight: var(--font-heading-weight);
    letter-spacing: -0.012em;
    line-height: 1.18;
  }
  :focus {
    outline: none;
  }
  :focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 2px;
  }
  ::selection {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 30%, transparent);
    }
  }
}
@layer components {
  .jp-card {
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-jp);
    transition: box-shadow 200ms,
      border-color 200ms;
  }
  .jp-card:hover {
    box-shadow: var(--shadow-sm);
  }
  .jp-btn-primary,
  .jp-btn-secondary,
  .jp-btn-ghost,
  .jp-btn-danger,
  .jp-btn-success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1.5);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-size: 14px;
    line-height: 1.2;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--radius-jp);
    cursor: pointer;
    transition: background-color 150ms,
      color 150ms,
      border-color 150ms;
  }
  .jp-btn-primary:disabled,
  .jp-btn-secondary:disabled,
  .jp-btn-ghost:disabled,
  .jp-btn-danger:disabled,
  .jp-btn-success:disabled {
    opacity: 0.45;
    cursor: not-allowed;
  }
  .jp-btn-primary {
    color: var(--color-accent-700);
    border-color: var(--color-accent);
  }
  .jp-btn-primary:hover:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 12%, transparent);
    }
  }
  .jp-btn-primary:active:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 22%, transparent);
    }
  }
  .jp-btn-secondary {
    color: var(--color-text);
    border-color: var(--color-divider);
  }
  .jp-btn-secondary:hover:not(:disabled) {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 7%, transparent);
    }
  }
  .jp-btn-secondary:active:not(:disabled) {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 14%, transparent);
    }
  }
  .jp-btn-ghost {
    color: var(--color-accent-700);
  }
  .jp-btn-ghost:hover:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    }
  }
  .jp-btn-ghost:active:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 18%, transparent);
    }
  }
  .jp-btn-danger {
    border-color: var(--color-shu-500);
    color: var(--color-shu-700);
  }
  .jp-btn-danger:hover:not(:disabled) {
    background-color: var(--color-shu-100);
    color: var(--color-shu-800);
  }
  .jp-btn-danger:active:not(:disabled) {
    background-color: var(--color-shu-200);
  }
  .jp-btn-success {
    border-color: var(--color-matcha-500);
    color: var(--color-matcha-700);
  }
  .jp-btn-success:hover:not(:disabled) {
    background-color: var(--color-matcha-100);
    color: var(--color-matcha-800);
  }
  .jp-btn-success:active:not(:disabled) {
    background-color: var(--color-matcha-200);
  }
  .jp-badge {
    display: inline-flex;
    align-items: center;
    font-size: 11.5px;
    letter-spacing: 0.02em;
    padding: 3px 10px;
    white-space: nowrap;
    border: 1px solid transparent;
    border-radius: calc(var(--radius-jp) * 0.75);
  }
  .jp-badge-active {
    background-color: var(--color-matcha-100);
    color: var(--color-matcha-800);
  }
  .jp-badge-sold {
    background-color: var(--color-indigo-jp-100);
    color: var(--color-indigo-jp-800);
  }
  .jp-badge-archived {
    background-color: var(--color-sumi-50);
    color: var(--color-sumi-700);
  }
  .jp-input,
  .jp-select {
    display: block;
    width: 100%;
    min-height: 36px;
    padding: 6px 10px;
    font-size: 14px;
    color: var(--color-text);
    caret-color: var(--color-accent);
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-jp);
    transition: border-color 150ms;
  }
  .jp-input::placeholder {
    color: var(--color-sumi-400);
  }
  .jp-input:hover,
  .jp-select:hover {
    border-color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in srgb, var(--color-text) 45%, transparent);
    }
  }
  .jp-input:focus-visible,
  .jp-select:focus-visible {
    border-color: var(--color-accent);
    outline-offset: 0;
  }
  .jp-label {
    display: block;
    font-size: 12px;
    margin-bottom: 5px;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 70%, transparent);
    }
  }
  .jp-divider {
    border-top: 1px solid var(--color-divider);
  }
  .jp-link {
    color: var(--color-accent-700);
    text-underline-offset: 3px;
    transition: color 150ms;
  }
  .jp-link:hover {
    color: var(--color-accent);
    text-decoration: underline;
  }
}
@layer components {
  .kc-quiet {
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 55%, transparent);
    }
  }
  .kc-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: 0;
    border-left: 2px solid transparent;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 14px;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 78%, transparent);
    }
    padding: 5px 12px 5px 14px;
  }
  .kc-nav:hover {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 6%, transparent);
    }
    color: var(--color-text);
  }
  .kc-nav[data-active="true"] {
    border-left-color: var(--color-accent);
    color: var(--color-text);
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    }
  }
  .kc-tab {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 14.5px;
    letter-spacing: 0.01em;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 60%, transparent);
    }
    padding: 8px 2px 7px;
  }
  .kc-tab:hover {
    color: var(--color-text);
  }
  .kc-tab[data-active="true"] {
    color: var(--color-text);
    border-bottom-color: var(--color-accent);
  }
  .kc-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
  }
  .kc-table th {
    text-align: left;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 11.5px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 55%, transparent);
    }
    padding: 6px 10px;
    border-bottom: 1px solid var(--color-divider);
    white-space: nowrap;
  }
  .kc-table td {
    padding: 9px 10px;
    border-bottom: 1px solid var(--color-divider);
    vertical-align: middle;
  }
  .kc-row {
    cursor: pointer;
  }
  .kc-row:hover {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 7%, transparent);
    }
  }
  [data-density="compact"] .kc-table td {
    padding: 5px 10px;
  }
  [data-density="comfortable"] .kc-table td {
    padding: 13px 10px;
  }
  .kc-table td.kc-clip {
    max-width: 340px;
    min-width: 240px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .kc-act {
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-md);
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 13px;
    padding: 5px 11px;
    cursor: pointer;
    color: var(--color-text);
    white-space: nowrap;
  }
  .kc-act:hover {
    border-color: var(--color-accent);
    color: var(--color-accent-700);
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 8%, transparent);
    }
  }
  .kc-act[data-primary="true"] {
    border-color: var(--color-accent);
    color: var(--color-accent-700);
  }
  .kc-act[data-warn="true"][data-primary="true"] {
    border-color: var(--color-accent-600);
    color: var(--color-accent-800);
    background: var(--color-accent-100);
  }
  .kc-link {
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    font: inherit;
    color: var(--color-accent-700);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .kc-thumb {
    width: 52px;
    height: 38px;
    flex: none;
    background: var(--color-neutral-200);
    border: 3px solid var(--color-surface);
    outline: 1px solid var(--color-divider);
    display: grid;
    place-items: center;
    font-size: 10px;
    letter-spacing: 0.06em;
    color: var(--color-neutral-600);
  }
  .kc-pop {
    position: absolute;
    z-index: 30;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 4px;
    max-height: 230px;
    overflow: auto;
    background: var(--color-bg);
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
  }
  .kc-opt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--color-divider);
    padding: 7px 10px;
    font: inherit;
    font-size: 13.5px;
    cursor: pointer;
    color: var(--color-text);
  }
  .kc-opt:last-child {
    border-bottom: 0;
  }
  .kc-opt:hover {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 12%, transparent);
    }
  }
  .kc-opt[data-on="true"] {
    color: var(--color-accent-700);
    box-shadow: inset 2px 0 0 var(--color-accent);
  }
  .kc-scroll {
    overflow-x: auto;
    max-width: 100%;
  }
  .num {
    font-variant-numeric: tabular-nums;
  }
  .tag {
    display: inline-flex;
    align-items: center;
    font-size: 11.5px;
    letter-spacing: 0.01em;
    white-space: nowrap;
    padding: 3px 10px;
    border-radius: calc(var(--radius-md) * 0.75);
  }
  .tag-accent,
  .tag-accent-2 {
    background: var(--color-accent-100);
    color: var(--color-accent-800);
  }
  .tag-neutral {
    background: var(--color-neutral-100);
    color: var(--color-neutral-800);
  }
  .tag-outline {
    border: 1px solid var(--color-accent);
    color: var(--color-accent);
  }
  [data-step="done"] {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 4%, transparent);
    }
  }
  [data-step="now"] {
    box-shadow: inset 0 -2px 0 var(--color-accent);
  }
  [data-step="todo"] {
    opacity: 0.5;
  }
}
@layer utilities {
  .shadow-jp {
    box-shadow: var(--shadow-sm);
  }
  .shadow-jp-md {
    box-shadow: var(--shadow-md);
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}


/*# sourceMappingURL=main.31ac0369f7d4d1054420.css.map*/