/* ==========================================================================
   Capital Drums — foundation
   Mobile-first. Single breakpoint at 900px, always min-width.
   No shadows, no gradients, no pill buttons. Two backgrounds: paper and ink.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Tokens not expressible in theme.json
   -------------------------------------------------------------------------- */

:root {
	--cd-bp: 900px;

	/*
	 * Ink ramp — text on paper. Four steps, every one of them ≥ 4.5:1 on
	 * #FFFDF8 so all body-sized text clears WCAG AA.
	 *
	 * The design draws the bottom two steps at .5 and .42, which measure 3.96:1
	 * and 3.03:1 — both fail. They carry real content (the listing date, the CAD
	 * label, the spec line), so they are lifted to .58 and .55 rather than left
	 * failing. The ramp keeps four distinguishable steps; it is slightly darker
	 * at the bottom than the reference, and that is deliberate.
	 */
	--cd-ink-body: rgba(0, 0, 0, .72);   /* 9.16:1 */
	--cd-ink-muted: rgba(0, 0, 0, .65);  /* 6.93:1 */
	--cd-ink-soft: rgba(0, 0, 0, .58);   /* 5.30:1 */
	--cd-ink-faint: rgba(0, 0, 0, .55);  /* 4.74:1 */
	--cd-ink: #17140f;                   /* 17.9:1 */

	/* Ink ramp — text on the dark panel. Same rule, measured on #17140F. */
	--cd-on-dark: rgba(255, 255, 255, .78);        /* 11.60:1 */
	--cd-on-dark-muted: rgba(255, 255, 255, .62);  /*  7.63:1 */
	--cd-on-dark-soft: rgba(255, 255, 255, .5);    /*  5.33:1 */

	/* Decorative hairline, not text — exempt from the text contrast minimum. */
	--cd-on-dark-rule: rgba(255, 255, 255, .24);

	/* Surfaces */
	--cd-paper: #fffdf8;
	--cd-card: #fff;
	--cd-accent: #d9370f;          /* fills under white text: 4.66:1 */
	--cd-accent-bright: #ff4b1f;   /* text and marks on ink: 5.5:1 */
	--cd-on-accent: #fff;
	--cd-chip: #eee6d6;
	--cd-rule: #dfd6c4;
	--cd-rule-soft: #efe8da;
	--cd-hairline: #f2ece0;

	/* Geometry */
	--cd-r-card: 12px;
	--cd-r-image: 10px;
	--cd-r-input: 8px;
	--cd-r-chip: 20px;
	--cd-r-badge: 3px;

	--cd-gutter: 18px;
	--cd-content: 1240px;

	/* Type */
	--cd-sans: Archivo, Helvetica, system-ui, -apple-system, sans-serif;
	--cd-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}

@media (min-width: 900px) {
	:root {
		--cd-gutter: 32px;
	}
}

/* --------------------------------------------------------------------------
   2. Base
   -------------------------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	margin: 0;
	background: var(--cd-paper);
	color: var(--cd-ink);
	font-family: var(--cd-sans);
	font-weight: 400;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-synthesis-weight: none;
	overflow-x: hidden;
}

img,
svg,
video,
iframe {
	max-width: 100%;
}

img,
svg,
video {
	height: auto;
	display: block;
}

/* Headings never inherit the body's generous leading. */
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	text-wrap: balance;
}

p {
	text-wrap: pretty;
}

/* --------------------------------------------------------------------------
   3. Focus — visible, never removed
   -------------------------------------------------------------------------- */

:focus-visible {
	outline: 3px solid var(--cd-ink);
	outline-offset: 2px;
	border-radius: 2px;
}

/* On the dark panel the ink outline disappears; switch to accent. */
.cd-panel-dark :focus-visible,
.cd-footer :focus-visible {
	outline-color: var(--cd-accent-bright);
}

/* Skip link */
.cd-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 999;
	padding: 12px 20px;
	background: var(--cd-ink);
	color: var(--cd-accent-bright);
	font: 700 14px/1 var(--cd-sans);
	border-radius: 0 0 var(--cd-r-input) 0;
}

.cd-skip-link:focus {
	left: 0;
}

/* --------------------------------------------------------------------------
   4. Layout
   -------------------------------------------------------------------------- */

.cd-wrap {
	width: 100%;
	max-width: var(--cd-content);
	margin-inline: auto;
	padding-inline: var(--cd-gutter);
}

/* Full-bleed band that still constrains its contents. */
.cd-band {
	width: 100%;
}

.cd-band > .cd-wrap {
	padding-block: clamp(28px, 5vw, 44px);
}

.cd-band--ink {
	background: var(--cd-ink);
	color: #fff;
}

.cd-band--accent {
	background: var(--cd-accent);
	color: var(--cd-on-accent);
}

.cd-band--card {
	background: var(--cd-card);
}

.cd-rule-top {
	border-top: 1px solid var(--cd-rule-soft);
}

.cd-rule-bottom {
	border-bottom: 1px solid var(--cd-rule-soft);
}

/* Section head: title left, "see all" link right, hairline under. */
.cd-section-head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--cd-rule);
}

@media (min-width: 900px) {
	.cd-section-head {
		padding-bottom: 18px;
	}
}

.cd-section-head__title {
	font: 800 clamp(18px, 2.6vw, 30px) / 1.1 var(--cd-sans);
	letter-spacing: -.028em;
	color: var(--cd-ink);
}

.cd-section-head__link {
	font: 600 clamp(11.5px, 1.4vw, 13.5px) var(--cd-sans);
	color: var(--cd-ink-muted);
	white-space: nowrap;
}

.cd-section-head__link:hover {
	color: var(--cd-ink);
}

/* --------------------------------------------------------------------------
   5. Type utilities
   -------------------------------------------------------------------------- */

.cd-mono {
	font-family: var(--cd-mono);
	font-feature-settings: "tnum" 1;
}

/* The uppercase mono label that sits above almost every block. */
.cd-eyebrow {
	display: block;
	font: 500 clamp(10px, 1.2vw, 11px) var(--cd-mono);
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--cd-ink-soft);
}

.cd-eyebrow--strong {
	font-weight: 700;
	letter-spacing: .08em;
}

/* Every fact — prices, specs, dates, grades — is mono with tabular figures. */
.cd-fact {
	font-family: var(--cd-mono);
	font-variant-numeric: tabular-nums;
	font-size: 11.5px;
	line-height: 1.4;
	color: var(--cd-ink-soft);
}

.cd-lede {
	font: 400 clamp(13.5px, 1.7vw, 16.5px) / 1.6 var(--cd-sans);
	color: var(--cd-ink-body);
}

/* The accent-underlined text link that stands in for a tertiary button. */
.cd-underline-link {
	display: inline-block;
	font: 700 13.5px var(--cd-sans);
	color: var(--cd-ink);
	border-bottom: 2px solid var(--cd-accent);
	padding-bottom: 2px;
	align-self: flex-start;
}

.cd-underline-link:hover,
.cd-underline-link:focus {
	border-bottom-color: var(--cd-ink);
	text-decoration: none;
}

/* theme.json underlines every link on hover and focus. Links that draw their
   own border underline, or are bordered controls (chips, pager, sort, gallery
   thumbs, skip link), would show a second line — they keep their own state
   styles and the focus-visible outline instead. */
:is(.cd-underline-link, .cd-wes__link a, .cd-home-sell__link a, .cd-pcard__cta, .cd-chip, .page-numbers, .cd-sort__option, .cd-gallery__thumb, .cd-skip-link, .cd-kitcard__media a, a.cd-kitcard__media):is(:hover, :focus) {
	text-decoration: none;
}

.cd-underline-link--ink {
	border-bottom-color: var(--cd-ink);
}

.cd-underline-link--ink:hover {
	border-bottom-color: var(--cd-accent);
}

/* --------------------------------------------------------------------------
   6. Buttons
   -------------------------------------------------------------------------- */

.cd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font: 800 14px/1.2 var(--cd-sans);
	padding: 13px 26px;
	border-radius: 9px;
	border: 2px solid var(--cd-ink);
	background: var(--cd-ink);
	color: #fff;
	cursor: pointer;
	text-align: center;
	transition: background-color .12s linear, color .12s linear, border-color .12s linear;
}

.cd-btn:hover,
.cd-btn:focus {
	background: var(--cd-accent);
	border-color: var(--cd-ink);
	color: var(--cd-on-accent);
	text-decoration: none;
}

/* Secondary — outline only. */
.cd-btn--ghost {
	background: transparent;
	color: var(--cd-ink);
	font-weight: 700;
}

.cd-btn--ghost:hover,
.cd-btn--ghost:focus {
	background: var(--cd-ink);
	color: #fff;
}

/* Primary conversion action — one per screen, never more. */
.cd-btn--accent {
	background: var(--cd-accent);
	border-color: var(--cd-accent);
	color: var(--cd-on-accent);
	font-weight: 800;
}

.cd-btn--accent:hover,
.cd-btn--accent:focus {
	background: var(--cd-ink);
	border-color: var(--cd-accent); /* keeps the button's edge on dark panels */
	color: var(--cd-accent-bright);
}

.cd-btn--block {
	display: flex;
	width: 100%;
}

.cd-btn--large {
	font-size: 15px;
	padding: 16px 34px;
	border-radius: 10px;
}

/* --------------------------------------------------------------------------
   7. Chips — category and brand filters
   -------------------------------------------------------------------------- */

.cd-chips {
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	padding-block: 2px;
}

.cd-chips::-webkit-scrollbar {
	display: none;
}

@media (min-width: 900px) {
	.cd-chips {
		flex-wrap: wrap;
		overflow: visible;
		gap: 9px;
	}
}

.cd-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: none;
	white-space: nowrap;
	font: 600 11.5px var(--cd-sans);
	background: var(--cd-chip);
	color: #333;
	padding: 8px 13px;
	border-radius: var(--cd-r-chip);
	border: 0;
	cursor: pointer;
	transition: background-color .12s linear, color .12s linear;
}

@media (min-width: 900px) {
	.cd-chip {
		font-size: 12.5px;
		padding: 9px 16px;
	}
}

.cd-chip:hover {
	background: var(--cd-rule);
	text-decoration: none;
}

.cd-chip[aria-current="true"],
.cd-chip.is-active {
	background: var(--cd-ink);
	color: #fff;
	font-weight: 700;
}

/* The chip's count, dimmed inside the label. */
.cd-chip__count {
	font-family: var(--cd-mono);
	font-variant-numeric: tabular-nums;
	opacity: .62;
	font-weight: 500;
}

.cd-chip[aria-current="true"] .cd-chip__count,
.cd-chip.is-active .cd-chip__count {
	opacity: .7;
}

/* Brand chips are outlined rather than filled. */
.cd-chip--outline {
	background: var(--cd-paper);
	border: 1.5px solid var(--cd-rule);
	color: #555;
	padding: 7px 12px;
}

@media (min-width: 900px) {
	.cd-chip--outline {
		padding: 8px 15px;
	}
}

.cd-chip--outline:hover {
	background: var(--cd-paper);
	border-color: var(--cd-ink);
	color: var(--cd-ink);
}

.cd-chip--outline[aria-current="true"],
.cd-chip--outline.is-active {
	background: var(--cd-paper);
	border-color: var(--cd-ink);
	color: var(--cd-ink);
	font-weight: 600;
}

.cd-chips__divider {
	flex: none;
	width: 1px;
	height: 24px;
	background: var(--cd-rule);
	margin-inline: 6px;
}

/* --------------------------------------------------------------------------
   8. Badges and stamps
   -------------------------------------------------------------------------- */

/* Condition grade — A / A− / B+ / B / C / Project, on accent. */
.cd-grade {
	display: inline-block;
	font: 700 10px var(--cd-mono);
	background: var(--cd-accent);
	color: var(--cd-on-accent);
	padding: 3px 6px;
	border-radius: var(--cd-r-badge);
	/* No tracking: the design sets the grade badge in plain mono. Adding the
	   usual .02em widened "A−" and "B+" against the reference. */
	white-space: nowrap;
}

.cd-grade--lg {
	font-size: 12.5px;
	padding: 5px 9px;
}

/* Kit / piece-count flag pinned to the top-left of a card image. */
.cd-flag {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	font: 700 9.5px var(--cd-mono);
	background: var(--cd-ink);
	color: var(--cd-accent-bright);
	padding: 4px 7px;
	letter-spacing: .08em;
	border-radius: var(--cd-r-badge);
	text-transform: uppercase;
}

/* SOLD — the item stays in the archive, greyed, stamped. */
.cd-sold-media {
	position: relative;
}

.cd-sold-media img {
	filter: grayscale(1);
	opacity: .5;
}

.cd-sold-stamp {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.cd-sold-stamp > span {
	/* The design asks for 900. IBM Plex Mono ships no weight above 700, and
	   font-synthesis is off, so 900 silently rendered at 600 — lighter than
	   intended. 700 is the real heaviest face and is what the stamp wants. */
	font: 700 clamp(8.5px, 1.4vw, 12px) var(--cd-mono);
	background: var(--cd-ink);
	color: var(--cd-accent-bright);
	padding: 3px 5px;
	letter-spacing: .09em;
	transform: rotate(-8deg);
}

/* Small dark pill used for platform names in the footer. */
.cd-tag-outline {
	display: inline-block;
	font: 600 10px var(--cd-mono);
	border: 1px solid var(--cd-on-dark-rule);
	border-radius: 6px;
	padding: 6px 9px;
	color: var(--cd-on-dark);
	letter-spacing: .05em;
}

@media (min-width: 900px) {
	.cd-tag-outline {
		font-size: 10.5px;
		padding: 7px 11px;
	}
}

/* Accent highlight pill — "HIGHLY RATED · SINCE 2017". */
.cd-pill-accent {
	display: inline-block;
	font: 600 10px var(--cd-mono);
	color: var(--cd-on-accent);
	background: var(--cd-accent);
	padding: 4px 7px;
	border-radius: 4px;
	letter-spacing: .04em;
	white-space: nowrap;
}

@media (min-width: 900px) {
	.cd-pill-accent {
		font-size: 10.5px;
		padding: 5px 9px;
	}
}

/* --------------------------------------------------------------------------
   9. Cards and surfaces
   -------------------------------------------------------------------------- */

.cd-card {
	background: var(--cd-card);
	border: 1px solid var(--cd-rule);
	border-radius: var(--cd-r-card);
	overflow: hidden;
}

.cd-card--pad {
	padding: 15px;
}

@media (min-width: 900px) {
	.cd-card--pad {
		padding: 22px 24px;
	}
}

.cd-card--flush {
	overflow: hidden;
}

/* The accent panel used for "Got something to sell?" and Wes's strip. */
.cd-panel-accent {
	background: var(--cd-accent);
	color: var(--cd-on-accent);
}

/* Eyebrows are muted ink everywhere else; on the accent they go white with
   the rest of the panel's text, since muted ink on orange fails AA. */
.cd-panel-accent .cd-eyebrow {
	color: var(--cd-on-accent);
}

.cd-panel-dark {
	background: var(--cd-ink);
	color: #fff;
}

.cd-panel-dark p,
.cd-footer p {
	color: var(--cd-on-dark-muted);
}

.cd-panel-dark h1,
.cd-panel-dark h2,
.cd-panel-dark h3,
.cd-footer h2,
.cd-footer h3 {
	color: #fff;
}

/* --------------------------------------------------------------------------
   10. Definition / spec rows — the mono two-column list
   -------------------------------------------------------------------------- */

.cd-speclist {
	margin: 0;
	border-top: 1px solid var(--cd-rule-soft);
}

.cd-speclist__row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 20px;
	padding: 9px 0;
	border-bottom: 1px solid var(--cd-hairline);
	font: 500 11.5px var(--cd-mono);
	font-variant-numeric: tabular-nums;
	color: var(--cd-ink-body);
}

@media (min-width: 900px) {
	.cd-speclist__row {
		font-size: 12.5px;
	}
}

.cd-speclist__row:last-child {
	border-bottom: 0;
}

.cd-speclist__value {
	font-weight: 600;
	color: var(--cd-ink);
	text-align: right;
	white-space: nowrap;
}

/* A sold line in a kit table keeps its row, struck through. */
.cd-speclist__row.is-sold {
	color: var(--cd-ink-faint);
}

.cd-speclist__row.is-sold .cd-speclist__label,
.cd-speclist__row.is-sold .cd-speclist__value {
	text-decoration: line-through;
	color: var(--cd-ink-faint);
}

/* The ink total bar that closes a kit table, orange figures on ink. */
.cd-speclist__total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	background: var(--cd-ink);
	color: var(--cd-accent-bright);
	font: 700 11.5px var(--cd-mono);
	letter-spacing: .05em;
	padding: 12px 15px;
}

@media (min-width: 900px) {
	.cd-speclist__total {
		font-size: 12.5px;
		padding: 13px 26px;
	}
}

.cd-speclist__total-price {
	font: 800 17px var(--cd-sans);
	letter-spacing: -.01em;
}

/* --------------------------------------------------------------------------
   11. Price
   -------------------------------------------------------------------------- */

.cd-price {
	display: flex;
	align-items: baseline;
	gap: 6px;
	white-space: nowrap;
}

.cd-price__amount {
	font: 800 14px/1.2 var(--cd-sans);
	color: var(--cd-ink);
	font-variant-numeric: tabular-nums;
	letter-spacing: -.01em;
}

@media (min-width: 900px) {
	.cd-price__amount {
		font-size: 17px;
	}
}

.cd-price__currency {
	font: 500 9px var(--cd-mono);
	color: var(--cd-ink-faint);
	letter-spacing: .04em;
}

@media (min-width: 900px) {
	.cd-price__currency {
		font-size: 10px;
	}
}

/* ≈ US$ — always labelled approximate. */
.cd-price__usd {
	font: 500 10px var(--cd-mono);
	color: var(--cd-ink-faint);
	font-variant-numeric: tabular-nums;
}

/* --------------------------------------------------------------------------
   12. Forms
   -------------------------------------------------------------------------- */

.cd-field {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.cd-label {
	font: 700 11px var(--cd-mono);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--cd-ink-soft);
}

.cd-input,
.cd-select,
.cd-textarea {
	width: 100%;
	font: 400 15px var(--cd-sans);
	color: var(--cd-ink);
	background: var(--cd-card);
	border: 2px solid var(--cd-ink);
	border-radius: var(--cd-r-input);
	padding: 13px 14px;
	appearance: none;
}

.cd-textarea {
	min-height: 140px;
	resize: vertical;
	line-height: 1.55;
}

.cd-input::placeholder,
.cd-textarea::placeholder {
	color: var(--cd-ink-faint);
}

.cd-input:focus,
.cd-select:focus,
.cd-textarea:focus {
	outline: 3px solid var(--cd-accent);
	outline-offset: 0;
	border-color: var(--cd-ink);
}

.cd-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23111' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 38px;
}

/* Search field — the outlined box with a circle glyph. */
.cd-search {
	display: flex;
	align-items: center;
	gap: 9px;
	background: var(--cd-card);
	border: 2px solid var(--cd-ink);
	border-radius: var(--cd-r-image);
	padding: 12px 13px;
}

.cd-search:focus-within {
	outline: 3px solid var(--cd-accent);
}

.cd-search__icon {
	flex: none;
	width: 13px;
	height: 13px;
	border: 2px solid var(--cd-ink);
	border-radius: 50%;
}

.cd-search input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: none;
	font: 400 13px var(--cd-sans);
	color: var(--cd-ink);
	padding: 0;
}

.cd-search input:focus {
	outline: none;
}

.cd-search input::placeholder {
	color: var(--cd-ink-faint);
}

@media (min-width: 900px) {
	.cd-search {
		padding: 15px 16px;
	}

	.cd-search__icon {
		width: 14px;
		height: 14px;
	}

	.cd-search input {
		font-size: 15px;
	}
}

/* Error and success messaging */
.cd-notice {
	border: 2px solid var(--cd-ink);
	border-radius: var(--cd-r-input);
	padding: 14px 16px;
	font: 500 14px/1.55 var(--cd-sans);
	background: var(--cd-card);
}

.cd-notice--ok {
	background: var(--cd-accent);
	border-color: var(--cd-ink);
}

.cd-notice--error {
	border-color: #b3261e;
	color: #b3261e;
}

.cd-field-error {
	font: 500 12.5px var(--cd-sans);
	color: #b3261e;
}

/* --------------------------------------------------------------------------
   13. Grids
   -------------------------------------------------------------------------- */

.cd-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 900px) {
	.cd-grid {
		gap: 22px;
	}
}

.cd-grid--three {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 900px) {
	.cd-grid--three {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.cd-grid--four {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 900px) {
	.cd-grid--four {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Horizontal scroller — used on mobile for cards and reviews. */
.cd-scroller {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	margin-inline: calc(var(--cd-gutter) * -1);
	padding-inline: var(--cd-gutter);
}

.cd-scroller::-webkit-scrollbar {
	display: none;
}

.cd-scroller > * {
	flex: none;
	scroll-snap-align: start;
}

/* --------------------------------------------------------------------------
   14. Motion
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
}

/* --------------------------------------------------------------------------
   15. Accessibility helpers
   -------------------------------------------------------------------------- */

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

/* An element that is only a link target for the whole card. */
.cd-stretched::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

/* --------------------------------------------------------------------------
   16. Print
   -------------------------------------------------------------------------- */

@media print {
	.cd-ask-bar,
	.cd-site-header,
	.cd-footer {
		display: none !important;
	}

	body {
		background: #fff;
	}
}

/* --------------------------------------------------------------------------
   Secondary button weight

   The design draws solid buttons at 800 and every outlined/ghost one at 700 —
   the lighter weight is what keeps the outline from reading as heavy as the
   filled action beside it. theme.json can only set one weight for core buttons,
   so the secondary style is corrected here.
   -------------------------------------------------------------------------- */

.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-cd-underline > .wp-block-button__link {
	font-weight: 700;
}
