:root {
	--alt: #281B1E;
	--bg: #1C1214;
	--accent: #E25A7C;
	--line: #463539;
	--mute: #A89499;
	--fg: #E4DDDF;
	--on-accent: #1C1214;
	--head: #FFFFFF;
	--link: #E96384;
}

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

body {
	font-size: 16px;
	overflow-wrap: break-word;
	font-family: "Vollkorn", Georgia, serif;
	color: var(--fg);
	line-height: 1.6;
	background: var(--bg);
	margin: 0;
}

h1, h2, h3, h4 {
	font-family: "Cabin", Arial, sans-serif;
	color: var(--head);
	line-height: 1.25;
}

a {
	color: var(--link);
}

img {
	max-width: 100%;
	height: auto;
}

pre, table {
	max-width: 100%;
	overflow-x: auto;
}

table {
	display: block;
	border-collapse: collapse;
}

blockquote {
	color: var(--mute);
	padding: 4px 20px;
	margin: 20px 0;
	border-left: 3px solid var(--accent);
}

.ra-a11y {
	clip: rect(0 0 0 0);
	white-space: nowrap;
	position: absolute;
	width: 1px;
	overflow: hidden;
	height: 1px;
}

.ra-skip {
	top: 0;
	left: -960px;
	position: absolute;
}

.ra-skip:focus {
	z-index: 50;
	left: 16px;
	background: var(--bg);
	padding: 8px;
}

.ra-pager {
	display: flex;
	margin-top: 32px;
	gap: 16px;
	justify-content: space-between;
	flex-wrap: wrap;
}

.ra-by-month li {
	padding: 5.6px 0;
}

.ra-period {
	font-size: 19.2px;
	margin-top: 28px;
}

.ra-topbar {
	padding-top: 25.6px;
	padding-bottom: 12.8px;
	background: var(--bg);
}

.ra-title {
	font-size: 30.4px;
	font-family: "Cabin", Arial, sans-serif;
	color: var(--head);
	text-decoration: none;
	font-weight: 700;
}

.ra-site-description {
	color: var(--mute);
	margin: 4px 0 14.4px;
}

.ra-topbar .ra-menu {
	border: 2px solid var(--head);
	border-radius: 0;
	padding: 8.8px 14.4px;
}

.ra-links {
	list-style: none;
	display: flex;
	gap: 4px 17.6px;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}

.ra-links a {
	font-size: 15.2px;
	color: var(--fg);
	text-decoration: none;
}

.ra-links a:hover {
	color: var(--link);
	text-decoration: underline;
}

.ra-jumbo {
	overflow-wrap: break-word;
	margin-bottom: 32px;
	box-sizing: border-box;
}

.ra-jumbo .ra-display-title {
	font-size: 32px;
	line-height: 1.15;
	margin: 0 0 8px;
}

.ra-jumbo .ra-summary {
	max-width: 60ch;
	font-size: 17.28px;
	margin: 0 0 16px;
}

.ra-jumbo img {
	max-width: 100%;
}

.ra-jumbo-ck > .ra-shell {
	position: relative;
	padding-top: 32px;
	padding-bottom: 40px;
}

.ra-jumbo-ck .ra-visual {
	border-radius: 0;
	transform: rotate(-1.5deg);
	min-height: 128px;
	overflow: hidden;
	background: linear-gradient(160deg, var(--accent), var(--alt));
}

.ra-jumbo-ck .ra-visual img {
	display: block;
	object-fit: cover;
	width: 100%;
	max-height: 320px;
}

.ra-jumbo-ck .ra-intro-panel {
	box-shadow: 0 8px 30px rgba(0,0,0,.15);
	margin-top: -32px;
	position: relative;
	border-radius: 0;
	transform: rotate(0.6deg);
	margin-right: 8px;
	background: var(--bg);
	padding: 20px;
	margin-left: 8px;
}

.ra-section-title h1 {
	font-size: 24px;
	color: var(--head);
	margin: 0 0 20px;
}

.ra-shell {
	padding-left: 16px;
	max-width: 1280px;
	padding-right: 16px;
	box-sizing: border-box;
	margin: 0 auto;
}

.ra-row {
	padding-top: 24px;
	padding-bottom: 40px;
}

.ra-content {
	min-width: 0;
}

.ra-left-rail, .ra-sidebar-right {
	margin-top: 32px;
	min-width: 0;
}

.ra-headline {
	font-size: 24.8px;
	font-family: "Cabin", Arial, sans-serif;
	line-height: 1.25;
	margin: 0 0 6.4px;
}

.ra-headline a {
	color: var(--head);
	text-decoration: none;
}

.ra-headline a:hover {
	color: var(--link);
	text-decoration: underline;
}

.ra-entry-meta {
	font-size: 13.6px;
	color: var(--mute);
	margin: 0 0 14.4px;
}

.ra-entry-meta a {
	color: var(--mute);
}

.ra-copy img {
	max-width: 100%;
	height: auto;
}

.ra-copy h2:not(.ra-headline), .ra-post-excerpt h2 {
	font-size: 18.4px;
	margin: 20px 0 8px;
}

.ra-copy h3, .ra-post-excerpt h3 {
	font-size: 16.32px;
}

.ra-post-thumb {
	margin: 0 0 16px;
}

.ra-post-thumb img {
	display: block;
	border-radius: 0;
	width: 100%;
	height: auto;
}

.ra-lead-post .ra-headline {
	font-size: 33.6px;
	line-height: 1.15;
}

.ra-lead-post {
	margin-bottom: 32px;
	border-bottom: 3px solid var(--head);
	padding-bottom: 24px;
}

.ra-small-post {
	grid-template-columns: minmax(0,1fr);
	display: grid;
	gap: 32px;
	margin-bottom: 32px;
}

.ra-archive-list {
	grid-template-columns: minmax(0,1fr);
	list-style: none;
	display: grid;
	gap: 24px;
	padding: 0;
	margin: 0;
}

.ra-archive-list > * {
	min-width: 0;
}

.ra-archive-list .ra-teaser-item {
	border: 1px solid var(--line);
	border-radius: 0;
	box-sizing: border-box;
	background: var(--bg);
	padding: 20px;
	height: 100%;
}

.ra-archive-list .ra-lead-post, .ra-archive-list .ra-small-post {
	grid-column: 1 / -1;
}

.ra-post-excerpt img {
	max-width: 100%;
	height: auto;
}

.ra-side-block {
	font-size: 14.72px;
	margin-bottom: 28px;
}

.ra-box-title {
	font-size: 16px;
	text-transform: none;
	font-family: "Cabin", Arial, sans-serif;
	border-bottom: 2px solid var(--accent);
	color: var(--head);
	padding-bottom: 5.6px;
	margin: 0 0 9.6px;
}

.ra-link-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.ra-link-list li, .ra-link-list > div {
	border-bottom: 1px solid var(--line);
	padding: 4.8px 0;
}

.ra-side-block a {
	color: var(--link);
	text-decoration: none;
}

.ra-side-block a:hover {
	text-decoration: underline;
}

.ra-post-heading {
	font-size: 33.6px;
	font-family: "Cabin", Arial, sans-serif;
	color: var(--head);
	line-height: 1.2;
	margin: 0 0 8px;
}

.ra-single-meta {
	font-size: 14.08px;
	color: var(--mute);
	margin: 0 0 24px;
}

.ra-single-meta a {
	color: var(--mute);
}

.ra-post-content img {
	max-width: 100%;
	height: auto;
}

.ra-after-post {
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid var(--line);
}

.ra-table-of-contents {
	border-radius: 0;
	margin-bottom: 24px;
	background: var(--alt);
	padding: 16px 20px;
}

.ra-table-of-contents p {
	margin: 0 0 6.4px;
}

.ra-about {
	border: 1px solid var(--line);
	border-radius: 0;
	margin-bottom: 24px;
	padding: 20px;
}

.ra-about p {
	margin: 0 0 6.4px;
}

.ra-further h2 {
	font-size: 18.4px;
}

.ra-pager {
	display: flex;
	margin-top: 24px;
	gap: 16px;
	justify-content: space-between;
	flex-wrap: wrap;
}

.ra-breadcrumb {
	font-size: 13.12px;
	color: var(--mute);
	margin: 0 0 16px;
}

.ra-breadcrumb a {
	color: var(--mute);
}

.ra-foot-c4 {
	font-size: 14.4px;
	margin-top: 40px;
	padding-top: 32px;
	background: var(--alt);
}

.ra-foot-c4 .ra-footer-widgets {
	grid-template-columns: minmax(0,1fr);
	display: grid;
	gap: 24px;
}

.ra-foot-c4 ul, .ra-foot-c4 ol {
	list-style: none;
	padding: 0;
	margin: 0;
}

.ra-foot-c4 .ra-small-print {
	font-size: 13.12px;
	color: var(--mute);
	border-top: 1px solid var(--line);
	padding: 16px 0;
}

.ra-button-group {
	list-style: none;
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	padding: 0;
	margin: 16px 0 0;
}

.ra-action {
	display: inline-block;
	border: 2px solid var(--accent);
	border-radius: 0;
	color: var(--on-accent);
	text-decoration: none;
	font-weight: 700;
	background: var(--accent);
	padding: 9.6px 17.6px;
}

.ra-action-alt {
	color: var(--accent);
	background: var(--bg);
}

.ra-badges {
	list-style: none;
	display: flex;
	font-size: 13.6px;
	gap: 8px;
	flex-wrap: wrap;
	padding: 0;
	margin: 14.4px 0 0;
}

.ra-badges li, .ra-badges span {
	border: 1px solid var(--line);
	border-radius: 0;
	color: var(--fg);
	background: var(--alt);
	padding: 4px 10.4px;
}

.ra-hero-label {
	font-size: 12.8px;
	text-transform: uppercase;
	color: var(--mute);
	font-weight: 700;
	margin: 0 0 6.4px;
	letter-spacing: 0.08em;
}

.ra-feed-title, h2.ra-feed-title {
	margin: 0 0 24px;
}

.ra-feed-title h2, h2.ra-feed-title {
	font-size: 30.4px;
	margin-bottom: 5.6px;
}

.ra-feed-title p {
	color: var(--mute);
	margin: 0;
}

.ra-description {
	max-width: 70ch;
	margin: 0 0 24px;
}

.ra-reach-us {
	max-width: 100%;
	box-sizing: border-box;
	margin: 16px 0;
}

.ra-reach-us .ra-contact-form {
	grid-template-columns: minmax(0,1fr);
	display: grid;
	gap: 9.6px;
}

.ra-reach-us .ra-input-group {
	display: grid;
	gap: 3.2px;
	min-width: 0;
}

.ra-reach-us label {
	font-size: 13.6px;
	font-weight: 600;
}

.ra-reach-us input[type=text], .ra-reach-us input[type=tel], .ra-reach-us textarea {
	font: inherit;
	border: 1px solid var(--line);
	border-radius: 0;
	color: var(--fg);
	box-sizing: border-box;
	width: 100%;
	background: var(--bg);
	padding: 8px 9.6px;
}

.ra-reach-us button {
	font: inherit;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	color: var(--on-accent);
	font-weight: 700;
	background: var(--accent);
	padding: 10.4px 17.6px;
}

.ra-reach-us .ra-call-line {
	font-size: 14.4px;
	margin: 9.6px 0 0;
}

.ra-reach-us .ra-hero-lede {
	margin: 0 0 9.6px;
}

.ra-reach-us-boxed {
	box-shadow: 0 10px 30px rgba(0,0,0,.14);
	border: 1px solid var(--line);
	border-radius: 0;
	color: var(--fg);
	background: var(--bg);
	padding: 20px;
}

.ra-reach-us-inline {
	border-radius: 0;
	color: var(--fg);
	background: var(--alt);
	padding: 14.4px;
}

.ra-reach-us-tabbed {
	box-shadow: 0 6px 20px rgba(0,0,0,.1);
	color: var(--fg);
	border-top: 4px solid var(--accent);
	background: var(--bg);
	padding: 16px;
}

.ra-reach-us .ra-segments {
	display: flex;
	gap: 0;
	flex-wrap: wrap;
	border-bottom: 1px solid var(--line);
}

.ra-reach-us .ra-segments input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}

.ra-reach-us .ra-segments label {
	border-bottom: 3px solid transparent;
	cursor: pointer;
	color: var(--mute);
	padding: 7.2px 14.4px;
}

.ra-reach-us .ra-segments input:checked + label {
	color: var(--head);
	border-bottom-color: var(--accent);
}

.ra-reach-us-call {
	border-radius: 0;
	text-align: center;
	color: var(--fg);
	background: var(--alt);
	padding: 16px;
}

.ra-reach-us .ra-ring-us {
	display: inline-block;
	font-size: 20px;
	border-radius: 999px;
	color: var(--on-accent);
	text-decoration: none;
	font-weight: 700;
	background: var(--accent);
	padding: 14.4px 25.6px;
}

.ra-reach-us-two {
	border: 2px dashed var(--line);
	border-radius: 0;
	color: var(--fg);
	background: var(--bg);
	padding: 17.6px;
}

.ra-reach-us fieldset {
	display: grid;
	border: 0;
	gap: 8px;
	padding: 0;
	margin: 0;
	min-width: 0;
}

.ra-reach-us legend {
	font-size: 12px;
	color: var(--mute);
	letter-spacing: 0.08em;
}

.ra-reach-us details > summary {
	list-style: none;
	display: inline-block;
	border-radius: 0;
	cursor: pointer;
	color: var(--bg);
	background: var(--head);
	padding: 8px 16px;
	margin: 4.8px 0;
}

.ra-reach-us-compact {
	border: 1px solid var(--line);
	border-radius: 0;
	color: var(--fg);
	background: var(--alt);
	padding: 16px;
}

.ra-topic-row {
	grid-template-columns: repeat(2, minmax(0,1fr));
	display: grid;
	gap: 9.6px;
	margin: 0 0 32px;
}

.ra-topic-row a {
	display: flex;
	border: 1px solid var(--line);
	gap: 8px;
	justify-content: space-between;
	color: var(--head);
	text-decoration: none;
	border-top: 3px solid var(--accent);
	background: var(--bg);
	padding: 11.2px 14.4px;
}

.ra-topic-row span {
	color: var(--mute);
}

.ra-picks {
	overflow-wrap: anywhere;
	border: 1px solid var(--line);
	border-radius: 0;
	background: var(--alt);
	padding: 16px 18.4px;
	margin: 0 0 32px;
	border-left: 3px solid var(--accent);
}

.ra-picks p {
	margin: 0 0 8px;
}

.ra-picks ul, .ra-picks ol {
	padding-left: 20px;
	margin: 0;
}

.ra-picks li {
	margin: 0 0 5.6px;
}

.ra-picks li span {
	display: block;
	font-size: 13.12px;
	color: var(--mute);
}

.ra-title-block .ra-single-meta {
	margin: 0 0 20px;
}

.ra-post-single-ie .ra-title-block {
	margin-bottom: 20px;
	border-bottom: 1px solid var(--line);
}

.ra-title::before {
	content: "";
	display: inline-block;
	border: 3px solid var(--accent);
	transform: rotate(45deg);
	vertical-align: middle;
	width: 12px;
	margin-right: 8.8px;
	height: 12px;
}

.ra-action, .ra-ring-us, .ra-reach-us button, .ra-search-box button {
	border-radius: 999px;
}

.ra-copy a, .ra-post-content a {
	text-underline-offset: 3px;
	text-decoration-style: dotted;
}

.ra-breadcrumb {
	border: 1px solid var(--line);
	border-radius: 0;
	padding: 5.6px 11.2px;
}

.ra-table-of-contents ul, .ra-table-of-contents ol {
	display: flex;
	gap: 6.4px;
	flex-wrap: wrap;
}

.ra-table-of-contents li {
	border-radius: 999px;
	border-bottom: 0;
	background: var(--alt);
	padding: 2.4px 9.6px;
}

.ra-copy blockquote, .ra-post-content blockquote {
	font-style: italic;
	border-left-width: 1px;
}

.ra-copy ul, .ra-post-content ul {
	list-style-type: circle;
}

.ra-chips a {
	border-radius: 0;
}

.ra-headlines-darkTop {
	font-size: 13.12px;
	white-space: nowrap;
	text-align: center;
	overflow: hidden;
	padding: 5.6px 0;
	text-overflow: ellipsis;
}

.ra-headlines-darkTop, .ra-headlines-darkTop a {
	color: var(--bg);
	background: var(--head);
}

.ra-post-single-pg-band .ra-title-block {
	border-radius: 0;
	margin-bottom: 20px;
	color: var(--on-accent);
	background: var(--accent);
	padding: 20px 16px;
}

.ra-post-single-pg-band .ra-post-heading {
	color: var(--on-accent);
	margin: 0;
}

.ra-by-month.ra-tiles {
	grid-template-columns: minmax(0,1fr);
	display: grid;
	gap: 12px;
}

.ra-by-month.ra-tiles > div {
	border: 1px solid var(--line);
	border-radius: 0;
	padding: 14.4px;
}

.ra-by-month.ra-tiles a {
	display: block;
	text-decoration: none;
}

.ra-by-month.ra-tiles span {
	display: block;
	font-size: 13.6px;
	color: var(--mute);
}

.ra-pager-num {
	gap: 6.4px;
	justify-content: flex-start;
}

.ra-pager-num a, .ra-pager-num span {
	border: 1px solid var(--line);
	border-radius: 0;
	padding: 4.8px 11.2px;
}

@media (min-width: 800px) {
	.ra-jumbo .ra-display-title {
		font-size: 41.6px;
	}
	.ra-row {
		display: flex;
		align-items: flex-start;
		gap: 36px;
	}
	.ra-content {
		flex: 1 1 0;
		order: 2;
	}
	.ra-left-rail {
		margin-top: 0;
		flex: 0 0 224px;
		order: 1;
	}
	.ra-sidebar-right {
		margin-top: 0;
		flex: 0 0 256px;
		order: 3;
	}
	.ra-small-post {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
	.ra-archive-list {
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 272px), 1fr));
	}
	.ra-foot-c4 .ra-footer-widgets {
		grid-template-columns: repeat(4, minmax(0,1fr));
	}
	.ra-reach-us-inline .ra-contact-form {
		grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
		align-items: end;
	}
	.ra-topic-row {
		grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
	}
	.ra-by-month.ra-tiles {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}
