/*
 * RacerPacer plugin: the schedule, a run's details, the route dialog and the club card.
 *
 * Every colour comes from the --rpkit-* custom properties that render.php writes onto
 * the .rpkit wrapper, already contrast-checked (see includes/style.php). No hex values
 * here. Text that sits straight on the page is never given a colour, so it takes the
 * theme's; only cards, buttons and the dialog set their own.
 *
 * Ported from racerpacer-clubs 1.8.5 (assets/css/club-page.css).
 */


@font-face {
	font-family: "Epunda Slab";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("../fonts/EpundaSlab-latin.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;
}
@font-face {
	font-family: "Epunda Slab";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("../fonts/EpundaSlab-latin-ext.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: "Epunda Sans";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/EpundaSans-latin.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;
}
@font-face {
	font-family: "Epunda Sans";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/EpundaSans-latin-ext.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;
}

/* The "Grotesk" pairing: Space Grotesk headings, IBM Plex Sans text, IBM Plex Mono labels. */
@font-face {
	font-family: "Space Grotesk";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/space-grotesk-var.woff2") format("woff2");
}
@font-face {
	font-family: "IBM Plex Sans";
	font-style: normal;
	font-weight: 400 600;
	font-display: swap;
	src: url("../fonts/ibm-plex-sans-var.woff2") format("woff2");
}
@font-face {
	font-family: "IBM Plex Mono";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/ibm-plex-mono-400.woff2") format("woff2");
}
@font-face {
	font-family: "IBM Plex Mono";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../fonts/ibm-plex-mono-500.woff2") format("woff2");
}

*,

.rpkit,
.rpkit *,
.rpkit *::before,
.rpkit *::after {
	box-sizing: border-box;
}
/*
 * Text sizes are written as a share of --rpkit-em, which is 16px unless a size was
 * chosen for the block in the editor (Typography). Then it is that size, so the whole
 * block grows or shrinks together. It is a registered length, so "1em" is worked out
 * once on the wrapper and not again inside every element.
 */
@property --rpkit-em {
	syntax: "<length>";
	inherits: true;
	initial-value: 16px;
}
.rpkit {
	/* Said again here for a browser that doesn't know @property. */
	--rpkit-em: 16px;
	font-family: var(--rpkit-font-body);
	line-height: 1.55;
}
.rpkit[class*="-font-size"],
.rpkit[style*="font-size"] {
	--rpkit-em: 1em;
}
.rpkit-mode-dark .rpkit-run,
.rpkit-mode-dark .rpkit-details,
.rpkit-mode-dark .rpkit-dialog {
	color-scheme: dark;
}

/* "Use my theme's colours": everything is drawn from the text colour around it. */
.rpkit.rpkit-inherit {
	--rpkit-bg: transparent;
	--rpkit-surface: transparent;
	--rpkit-text: currentColor;
	--rpkit-muted: currentColor;
	--rpkit-border: color-mix(in srgb, currentColor 22%, transparent);
	--rpkit-edge: color-mix(in srgb, currentColor 55%, transparent);
	--rpkit-accent: currentColor;
	--rpkit-on-accent: Canvas;
	--rpkit-accent-text: currentColor;
	--rpkit-radius: 999px;
	--rpkit-font-head: inherit;
	--rpkit-font-body: inherit;
	--rpkit-head-weight: 700;
	--rpkit-font-mono: inherit;
	--rpkit-accent-2: currentColor;
	--rpkit-on-accent-2: Canvas;
	--rpkit-accent-2-text: currentColor;
	--rpkit-band-bg: CanvasText;
	--rpkit-band-text: Canvas;
	--rpkit-band-muted: Canvas;
	--rpkit-band-accent: Canvas;
	font-family: inherit;
}
.rpkit.rpkit-inherit .rpkit-dialog {
	background: Canvas;
	color: CanvasText;
}

.rpkit .rpkit-icon {
	flex: none;
	width: 18px;
	height: 18px;
}
.rpkit :focus-visible {
	outline: 3px solid var(--rpkit-accent-text);
	outline-offset: 3px;
}
.rpkit .rpkit-h2 {
	margin: 0 0 14px;
	font-family: var(--rpkit-font-head);
	font-weight: var(--rpkit-head-weight);
	font-size: calc(var(--rpkit-em) * 1.375);
	line-height: 1.2;
	letter-spacing: -0.01em;
}
.rpkit .rpkit-empty {
	margin: 0;
}

/* ---- Run cards ---- */
.rpkit .rpkit-runs {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.rpkit .rpkit-run,
.rpkit .rpkit-details {
	padding: 16px 18px;
	border-radius: 16px;
	background: var(--rpkit-surface);
	color: var(--rpkit-text);
	box-shadow: inset 0 0 0 1px var(--rpkit-border);
	font-size: calc(var(--rpkit-em) * 1);
}
.rpkit .rpkit-details {
	margin: 0 0 28px;
}
.rpkit .rpkit-run p,
.rpkit .rpkit-details p {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
}
.rpkit .rpkit-run p + p,
.rpkit .rpkit-details p + p {
	margin-top: 6px;
}
.rpkit .rpkit-run p > .rpkit-icon,
.rpkit .rpkit-details p > .rpkit-icon {
	margin-top: 3px;
	color: var(--rpkit-accent-text);
}
.rpkit .rpkit-run-when {
	font-weight: 600;
}
.rpkit .rpkit-run .rpkit-run-title {
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-family: var(--rpkit-font-head);
	font-weight: var(--rpkit-head-weight);
	font-size: calc(var(--rpkit-em) * 1.1875);
	line-height: 1.25;
}
.rpkit .rpkit-run a,
.rpkit .rpkit-details a:not(.rpkit-chip),
.rpkit .rpkit-table a {
	color: inherit;
	text-decoration-color: var(--rpkit-accent-text);
	text-underline-offset: 3px;
}
.rpkit .rpkit-run-title a {
	text-decoration: none;
}
.rpkit .rpkit-run-title a:hover {
	text-decoration: underline;
}
.rpkit .rpkit-run .rpkit-run-note,
.rpkit .rpkit-details .rpkit-run-note {
	display: block;
	padding-left: 28px;
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.875);
}
.rpkit .rpkit-run .rpkit-run-cta {
	margin-top: 10px;
	padding-left: 28px;
}
.rpkit .rpkit-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--rpkit-edge);
	font-family: var(--rpkit-font-body);
	font-size: calc(var(--rpkit-em) * 0.8125);
	font-weight: 600;
	line-height: 1.5;
}
/* ---- Off or changed on one date (includes/week.php) ---- */
.rpkit .rpkit-run .rpkit-run-notice,
.rpkit .rpkit-details .rpkit-run-notice {
	margin: 0 0 10px;
	padding: 8px 12px;
	background: var(--rpkit-accent);
	color: var(--rpkit-on-accent);
	font-size: calc(var(--rpkit-em) * 0.9375);
}
.rpkit .rpkit-run .rpkit-run-notice > .rpkit-icon,
.rpkit .rpkit-details .rpkit-run-notice > .rpkit-icon {
	color: inherit;
}
/* On the line, not the link: a decoration on the line shows through whatever the link itself asks for. */
.rpkit .rpkit-run.rpkit-run-is-off .rpkit-run-title {
	text-decoration: line-through;
}
/* Muted, not faded: opacity would take the words below the contrast line. */
.rpkit .rpkit-run-is-off > p:not(.rpkit-run-notice):not(.rpkit-run-title):not(.rpkit-run-when),
.rpkit .rpkit-run-is-off > p:not(.rpkit-run-notice):not(.rpkit-run-title):not(.rpkit-run-when) a {
	color: var(--rpkit-muted);
}
.rpkit .rpkit-badge-off,
.rpkit .rpkit-badge-changed {
	margin-left: 6px;
	background: var(--rpkit-accent);
	box-shadow: none;
	color: var(--rpkit-on-accent);
}

/* ---- Route library and the calendar button ---- */
.rpkit .rpkit-routes {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.rpkit .rpkit-route-card .rpkit-route-profile {
	margin: 12px 0 0;
}
.rpkit .rpkit-route-card .rpkit-details-actions {
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}
.rpkit .rpkit-calendar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	margin: 0;
}
.rpkit .rpkit-calendar-note {
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.875);
}
.rpkit .rpkit-calendar-note a {
	color: inherit;
}

.rpkit .rpkit-details .rpkit-details-actions {
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

/* ---- Schedule as a table ---- */
.rpkit .rpkit-table-wrap {
	overflow-x: auto;
	border-radius: 16px;
	background: var(--rpkit-surface);
	color: var(--rpkit-text);
	box-shadow: inset 0 0 0 1px var(--rpkit-border);
}
.rpkit .rpkit-table {
	width: 100%;
	min-width: 560px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: calc(var(--rpkit-em) * 0.9375);
}
.rpkit .rpkit-table th,
.rpkit .rpkit-table td {
	padding: 12px 16px;
	border: 0;
	border-bottom: 1px solid var(--rpkit-border);
	text-align: left;
	vertical-align: top;
}
.rpkit .rpkit-table tbody tr:last-child td {
	border-bottom: 0;
}
.rpkit .rpkit-table th {
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.8125);
	font-weight: 600;
}
.rpkit .rpkit-table-when {
	font-weight: 600;
	white-space: nowrap;
}

/* ---- Chips ---- */
.rpkit .rpkit-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 8px 16px;
	border: 0;
	border-radius: 999px;
	background: var(--rpkit-surface);
	box-shadow: inset 0 0 0 1px var(--rpkit-edge);
	color: var(--rpkit-text);
	font: inherit;
	font-size: calc(var(--rpkit-em) * 0.875);
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
}
.rpkit .rpkit-chip:hover {
	color: var(--rpkit-accent-text);
}
.rpkit .rpkit-chip-small {
	min-height: 30px;
	margin-left: 6px;
	padding: 4px 12px;
	font-size: calc(var(--rpkit-em) * 0.8125);
}

/* ---- Routes ---- */
.rpkit .rpkit-dialog {
	width: min(760px, calc(100vw - 32px));
	max-width: none;
	padding: 24px;
	border: 0;
	border-radius: 24px;
	background: var(--rpkit-surface);
	color: var(--rpkit-text);
	font-family: var(--rpkit-font-body);
	font-size: calc(var(--rpkit-em) * 1);
}
.rpkit .rpkit-dialog::backdrop {
	background: rgba(0, 0, 0, 0.55);
}
.rpkit .rpkit-route-summary {
	margin: 0 0 14px;
	color: var(--rpkit-muted);
}
.rpkit .rpkit-route-map {
	height: min(52vh, 380px);
	background: var(--rpkit-surface);
	box-shadow: inset 0 0 0 1px var(--rpkit-border);
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.875);
}
.rpkit .rpkit-route-profile {
	margin: 14px 0 0;
}
.rpkit .rpkit-route-profile svg {
	display: block;
	width: 100%;
	height: 90px;
	overflow: visible;
}
.rpkit .rpkit-profile-fill {
	fill: var(--rpkit-accent-text);
	opacity: 0.16;
}
.rpkit .rpkit-profile-line {
	stroke: var(--rpkit-accent-text);
	stroke-width: 2;
	stroke-linejoin: round;
	vector-effect: non-scaling-stroke;
}
.rpkit .rpkit-route-profile figcaption {
	margin-top: 6px;
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.875);
}
.rpkit .rpkit-route-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}
.rpkit .rpkit-route-actions form {
	margin: 0;
}
.rpkit .rpkit-route-credit {
	margin: 12px 0 0;
	color: var(--rpkit-muted);
	font-size: calc(var(--rpkit-em) * 0.8125);
}

/* ---- Location map: where a run meets or an event starts ---- */

.rpkit .rpkit-pin {
	margin: 16px 0 0;
}
.rpkit.rpkit-location > .rpkit-pin {
	margin-top: 0;
}
.rpkit .rpkit-pin-address {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 10px;
	font-weight: 600;
}
.rpkit .rpkit-pin-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 12px 0 0;
}
/* The popup: the same address, map, list and button, opened by View location. */
.rpkit .rpkit-pin-openers {
	margin-top: 0;
}
.rpkit .rpkit-pin-dialog .rpkit-h2 {
	margin: 0 0 12px;
}
.rpkit .rpkit-pin-dialog .rpmap-box {
	max-height: 52vh;
}
.rpkit .rpkit-pin-dialog form {
	margin: 0;
}
/*
 * The map is RacerPacer Maps' (its maps.css). These hand it the club's colours, so
 * its marks and its line match everything else in the wrapper.
 */
.rpkit {
	--rpmap-accent: var(--rpkit-accent, #0EA5E9);
	--rpmap-on-accent: var(--rpkit-on-accent, #fff);
	--rpmap-line: var(--rpkit-accent-text, #0EA5E9);
	--rpmap-mark-bg: var(--rpkit-bg, #fff);
	--rpmap-mark-text: var(--rpkit-text, #0f172a);
}
/* An event's start, checkpoints and finish, listed under the map with the same marks as on it. */
.rpkit .rpkit-course-mark {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 2px solid var(--rpkit-accent, #0EA5E9);
	background: var(--rpkit-bg, #fff);
	color: var(--rpkit-text, #0f172a);
	font-size: calc(var(--rpkit-em) * 0.8125);
	font-weight: 700;
	line-height: 1;
	flex: none;
}
.rpkit .rpkit-course-start .rpkit-course-mark,
.rpkit .rpkit-course-finish .rpkit-course-mark {
	background: var(--rpkit-accent, #0EA5E9);
	color: var(--rpkit-on-accent, #fff);
}
.rpkit .rpkit-course {
	list-style: none;
	margin: 14px 0 0;
	padding: 0;
}
.rpkit .rpkit-course-place {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid var(--rpkit-border, rgba(127, 127, 127, 0.25));
}
.rpkit .rpkit-course-place:first-child {
	border-top: 0;
}
.rpkit .rpkit-course-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1 1 auto;
	min-width: 0;
}
.rpkit .rpkit-course-label {
	font-size: calc(var(--rpkit-em) * 0.75);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	opacity: 0.75;
}
.rpkit .rpkit-course-note {
	font-size: calc(var(--rpkit-em) * 0.875);
	opacity: 0.8;
}
.rpkit .rpkit-course-link {
	flex: none;
}
.rpkit .rpkit-pin-empty {
	margin: 0;
	padding: 16px;
	border: 1px dashed currentColor;
	border-radius: 14px;
	opacity: 0.75;
}

/* ---- Club card ---- */
.rpkit .rpkit-club {
	max-width: 580px;
	margin-inline: auto;
}
.rpkit .rpkit-head {
	text-align: center;
}
.rpkit .rpkit-logo {
	display: inline-flex;
	width: 112px;
	height: 112px;
	margin-bottom: 16px;
	overflow: hidden;
	border-radius: 50%;
	background: var(--rpkit-surface);
	box-shadow: 0 0 0 1px var(--rpkit-border), 0 6px 20px rgba(0, 0, 0, 0.12);
}
.rpkit-logo-rounded .rpkit-logo {
	border-radius: 24px;
}
.rpkit .rpkit-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.rpkit .rpkit-monogram {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: var(--rpkit-accent);
	color: var(--rpkit-on-accent);
	font-family: var(--rpkit-font-head);
	font-size: calc(var(--rpkit-em) * 2.5);
	letter-spacing: 0.02em;
}
.rpkit .rpkit-name {
	margin: 0;
	font-family: var(--rpkit-font-head);
	font-weight: var(--rpkit-head-weight);
	font-size: clamp(28px, 7vw, 40px);
	line-height: 1.1;
	letter-spacing: -0.02em;
	text-wrap: balance;
}
.rpkit .rpkit-tagline {
	margin: 10px 0 0;
	font-size: calc(var(--rpkit-em) * 1.125);
	text-wrap: balance;
}
.rpkit .rpkit-meta {
	margin: 8px 0 0;
	font-size: calc(var(--rpkit-em) * 0.875);
	opacity: 0.8;
}
.rpkit .rpkit-socials {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}
.rpkit .rpkit-socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	color: inherit;
	transition: background-color 150ms, color 150ms, transform 150ms;
}
.rpkit .rpkit-socials a:hover {
	background: var(--rpkit-surface);
	color: var(--rpkit-accent-text);
	transform: translateY(-1px);
}
.rpkit .rpkit-socials .rpkit-icon {
	width: 24px;
	height: 24px;
}
.rpkit .rpkit-prose {
	margin-top: 24px;
	text-align: center;
}
.rpkit .rpkit-prose p {
	margin: 0 0 12px;
}
.rpkit .rpkit-links {
	display: grid;
	gap: 12px;
	margin-top: 28px;
}
.rpkit .rpkit-link {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 56px;
	padding: 14px 52px;
	border-radius: var(--rpkit-radius);
	font-weight: 600;
	font-size: calc(var(--rpkit-em) * 1);
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	transition: transform 150ms, box-shadow 150ms, background-color 150ms;
}
.rpkit .rpkit-link .rpkit-icon {
	position: absolute;
	left: 18px;
	width: 22px;
	height: 22px;
}
.rpkit .rpkit-link:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}
.rpkit .rpkit-link:active {
	transform: translateY(0);
}
/* Filled: every button in the accent. */
.rpkit-btn-filled .rpkit-link {
	background: var(--rpkit-accent);
	color: var(--rpkit-on-accent);
}
/* Outline: accent edge and text; highlighted links fill. */
.rpkit-btn-outline .rpkit-link {
	background: var(--rpkit-bg);
	color: var(--rpkit-accent-text);
	box-shadow: inset 0 0 0 2px var(--rpkit-accent-text);
}
.rpkit-btn-outline .rpkit-link:hover {
	box-shadow: inset 0 0 0 2px var(--rpkit-accent-text), 0 8px 20px rgba(0, 0, 0, 0.12);
}
/* Soft: surface cards; highlighted links fill. */
.rpkit-btn-soft .rpkit-link {
	background: var(--rpkit-surface);
	color: var(--rpkit-text);
	box-shadow: inset 0 0 0 1px var(--rpkit-edge);
}
.rpkit-btn-soft .rpkit-link .rpkit-icon {
	color: var(--rpkit-accent-text);
}
.rpkit-btn-outline .rpkit-link-highlight,
.rpkit-btn-soft .rpkit-link-highlight {
	background: var(--rpkit-accent);
	color: var(--rpkit-on-accent);
	box-shadow: none;
}
.rpkit-btn-soft .rpkit-link-highlight .rpkit-icon {
	color: inherit;
}
/* Filled: highlighted links get a ring so they still stand out. */
.rpkit-btn-filled .rpkit-link-highlight {
	box-shadow: 0 0 0 3px var(--rpkit-bg), 0 0 0 5px var(--rpkit-accent);
}

@media (prefers-reduced-motion: reduce) {
	.rpkit .rpkit-link,
	.rpkit .rpkit-socials a {
		transition: none;
	}
	.rpkit .rpkit-link:hover,
	.rpkit .rpkit-socials a:hover {
		transform: none;
	}
}

.rpkit .rpkit-credit {
	margin: 10px 0 0;
	font-size: calc(var(--rpkit-em) * 0.8125);
	opacity: 0.75;
}
.rpkit .rpkit-credit a {
	color: inherit;
	text-underline-offset: 3px;
}

/*
 * Holding our own inside other themes. Themes style lists, paragraphs and links in
 * post content (".entry-content li", ".entry-content a"), so the few things below
 * are said again firmly enough to win.
 */
.rpkit ul.rpkit-runs,
.rpkit ul.rpkit-socials {
	margin: 0;
	padding: 0;
	list-style: none;
}
.rpkit ul.rpkit-runs > li.rpkit-run {
	margin: 0;
	padding: 16px 18px;
	list-style: none;
}
.rpkit ul.rpkit-socials > li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.rpkit .rpkit-run p,
.rpkit .rpkit-details p {
	margin: 0;
	padding: 0;
}
.rpkit .rpkit-run p + p,
.rpkit .rpkit-details p + p {
	margin-top: 6px;
}
.rpkit .rpkit-run p.rpkit-run-note,
.rpkit .rpkit-details p.rpkit-run-note {
	padding-left: 28px;
}
.rpkit .rpkit-run p.rpkit-run-cta {
	margin-top: 10px;
	padding-left: 28px;
}
.rpkit .rpkit-details p.rpkit-details-actions {
	margin-top: 14px;
}
/* !important here only: some themes underline every link in a page with a
   selector too long to outrank (OceanWP's has five :not()s). */
.rpkit .rpkit-run-title a,
.rpkit a.rpkit-link,
.rpkit a.rpkit-chip,
.rpkit .rpkit-socials a {
	text-decoration: none !important;
	border-bottom: 0;
}
/* Themes that underline links with a shadow or border. Not the buttons and chips:
   their outline is a shadow of their own. */
.rpkit .rpkit-run-title a,
.rpkit .rpkit-socials a {
	box-shadow: none;
}
.rpkit .rpkit-run-title a:hover {
	text-decoration: underline !important;
}
.rpkit a.rpkit-link.rpkit-link {
	color: var(--rpkit-on-accent);
}
.rpkit.rpkit-btn-outline a.rpkit-link:not(.rpkit-link-highlight),
.rpkit-btn-outline .rpkit a.rpkit-link:not(.rpkit-link-highlight) {
	color: var(--rpkit-accent-text);
}
.rpkit.rpkit-btn-soft a.rpkit-link:not(.rpkit-link-highlight),
.rpkit-btn-soft .rpkit a.rpkit-link:not(.rpkit-link-highlight) {
	color: var(--rpkit-text);
}
.rpkit .rpkit-name,
.rpkit .rpkit-h2 {
	padding: 0;
	border: 0;
	color: inherit;
}
.rpkit .rpkit-route-profile {
	margin: 14px 0 0;
	padding: 0;
}
.rpkit button.rpkit-chip {
	width: auto;
	text-transform: none;
	letter-spacing: 0;
}

/* The starter card in the "to build on" patterns: ordinary blocks in a plain box that takes the theme's colours. */
.rpkit-own-card {
	padding: 1rem 1.1rem;
	border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
	border-radius: 12px;
}
.rpkit-own-card > * {
	margin-block: 0 0.4rem;
}
.rpkit-own-card > :last-child {
	margin-block-end: 0;
}
