:root {
	--color-heading: #FFFFFF;
	--color-text: #E2DDE4;
	--color-bg: #19121C;
	--color-accent: #C25FE3;
	--color-accent-text: #19121C;
	--color-link: #C763E9;
	--color-muted: #A394A8;
	--color-surface: #241B28;
	--color-border: #413546;
}

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

body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	overflow-wrap: break-word;
	color: var(--color-text);
	font-size: 16px;
	margin: 0;
	line-height: 1.65;
	background: var(--color-bg);
}

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

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

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

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

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

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

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

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

.month li {
	padding: 5.6px 0;
}

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

.header {
	padding-top: 20px;
	background: var(--color-bg);
}

.header > .width {
	border-top: 4px double var(--color-heading);
	border-bottom: 4px double var(--color-heading);
}

.bar {
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-muted);
	font-size: 12.8px;
	padding: 8px 0;
	text-align: center;
	border-bottom: 1px solid var(--color-border);
}

.name {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 41.6px;
	padding: 9.6px 0;
	text-align: center;
	font-weight: 700;
	line-height: 1.05;
}

.name a {
	color: var(--color-heading);
	text-decoration: none;
}

.header .navbar {
	padding: 8px 0;
	border-top: 1px solid var(--color-border);
}

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

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

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

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

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

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

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

.jumbo-mo > .width {
	padding-bottom: 32px;
	grid-template-columns: minmax(0,1fr);
	padding-top: 32px;
	display: grid;
	gap: 24px;
}

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

.jumbo-mo .grid img, .grid .ph {
	width: 100%;
	background-size: cover;
	border-radius: 4px;
	height: 100%;
	background-position: center;
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
}

.jumbo-mo .grid > :first-child {
	grid-column: 1 / -1;
}

.title-aux h1 {
	color: var(--color-heading);
	font-size: 24px;
	margin: 0 0 20px;
}

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

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

.content {
	min-width: 0;
}

.left, .column {
	margin-top: 32px;
	min-width: 0;
}

.title {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 24.8px;
	margin: 0 0 6.4px;
	line-height: 1.25;
}

.title a {
	color: var(--color-heading);
	text-decoration: none;
}

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

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

.meta a {
	color: var(--color-muted);
}

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

.text h2:not(.title), .standfirst h2 {
	font-size: 18.4px;
	margin: 20px 0 8px;
}

.text h3, .standfirst h3 {
	font-size: 16.32px;
}

.thumbnail {
	margin: 0 0 16px;
}

.thumbnail img {
	width: 100%;
	border-radius: 4px;
	height: auto;
	display: block;
}

.story .title {
	font-size: 33.6px;
	line-height: 1.15;
}

.story {
	padding-bottom: 24px;
	margin-bottom: 32px;
	border-bottom: 3px solid var(--color-heading);
}

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

.stories .post {
	margin-bottom: 48px;
}

.stories .thumbnail img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.panel {
	font-size: 14.72px;
	margin-bottom: 28px;
}

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

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

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

.panel a {
	color: var(--color-link);
	text-decoration: none;
}

.panel a:hover {
	text-decoration: underline;
}

.heading-aux {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: var(--color-heading);
	font-size: 33.6px;
	margin: 0 0 8px;
	line-height: 1.2;
}

.meta-alt {
	color: var(--color-muted);
	font-size: 14.08px;
	margin: 0 0 24px;
}

.meta-alt a {
	color: var(--color-muted);
}

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

.footer {
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid var(--color-border);
}

.toc {
	border-radius: 4px;
	margin-bottom: 24px;
	padding: 16px 20px;
	background: var(--color-surface);
}

.toc p {
	margin: 0 0 6.4px;
}

.box {
	border-radius: 4px;
	margin-bottom: 24px;
	padding: 20px;
	border: 1px solid var(--color-border);
}

.box p {
	margin: 0 0 6.4px;
}

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

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

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

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

.foot-bc {
	padding: 40px 0;
}

.foot-bc .box-sub {
	border-radius: 12px;
	padding: 24px;
	border: 1px solid var(--color-border);
	background: var(--color-surface);
}

.foot-bc .copyright {
	color: var(--color-muted);
	font-size: 12.8px;
	margin: 0;
}

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

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

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

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

.list-alt li, .list-alt span {
	border-radius: 16px;
	color: var(--color-text);
	padding: 4px 10.4px;
	border: 1px solid var(--color-border);
	background: var(--color-surface);
}

.title-two {
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-muted);
	font-size: 12.8px;
	margin: 0 0 6.4px;
	font-weight: 700;
}

.heading-sub, h2.heading-sub {
	margin: 0 0 24px;
}

.heading-sub h2, h2.heading-sub {
	font-size: 30.4px;
	margin-bottom: 5.6px;
}

.heading-sub p {
	color: var(--color-muted);
	margin: 0;
}

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

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

.us-two .inquiry {
	grid-template-columns: minmax(0,1fr);
	display: grid;
	gap: 9.6px;
}

.us-two .field {
	min-width: 0;
	display: grid;
	gap: 3.2px;
}

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

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

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

.us-two .hotline {
	font-size: 14.4px;
	margin: 9.6px 0 0;
}

.us-two .line {
	margin: 0 0 9.6px;
}

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

.us-two-inline {
	border-radius: 8px;
	color: var(--color-text);
	padding: 14.4px;
	background: var(--color-surface);
}

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

.us-two .row {
	flex-wrap: wrap;
	display: flex;
	border-bottom: 1px solid var(--color-border);
	gap: 0;
}

.us-two .row input {
	width: 1px;
	height: 1px;
	opacity: 0;
	position: absolute;
}

.us-two .row label {
	color: var(--color-muted);
	cursor: pointer;
	padding: 7.2px 14.4px;
	border-bottom: 3px solid transparent;
}

.us-two .row input:checked + label {
	color: var(--color-heading);
	border-bottom-color: var(--color-accent);
}

.us-two-call {
	border-radius: 8px;
	color: var(--color-text);
	padding: 16px;
	text-align: center;
	background: var(--color-surface);
}

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

.us-two-two {
	border-radius: 8px;
	color: var(--color-text);
	padding: 17.6px;
	border: 2px dashed var(--color-border);
	background: var(--color-bg);
}

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

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

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

.us-two-compact {
	border-radius: 8px;
	color: var(--color-text);
	padding: 16px;
	border: 1px solid var(--color-border);
	background: var(--color-surface);
}

.us-two-duo {
	border-radius: 8px;
	color: var(--color-text);
	border-left: 4px solid var(--color-accent);
	padding: 19.2px;
	background: var(--color-surface);
}

.author {
	border-radius: 8px;
	align-items: flex-start;
	display: flex;
	margin: 32px 0;
	padding: 20px;
	gap: 16px;
	background: var(--color-surface);
}

.author .cal {
	width: 48px;
	justify-content: center;
	border-radius: 50%;
	height: 48px;
	color: var(--color-accent-text);
	align-items: center;
	font-size: 20.8px;
	flex: none;
	display: flex;
	font-weight: 700;
	background: var(--color-accent);
}

.author p {
	margin: 0 0 5.6px;
}

.head .meta-alt {
	margin: 0 0 20px;
}

.single-cd {
	border-radius: 12px;
	padding: 20px;
	border: 1px solid var(--color-border);
	background: var(--color-surface);
}

.name {
	letter-spacing: 0.05em;
	font-variant: small-caps;
}

.button, .us, .us-two button, .query button {
	border-radius: 0;
}

.text a, .text-b a {
	text-underline-offset: 3px;
	text-decoration-style: dotted;
}

.thumbnail img, .text-b img, .text img {
	border-radius: 0;
}

.text p, .text-b p {
	margin: 0 0 9.6px;
}

body {
	line-height: 1.45;
}

[data-rt]::after {
	content: " · " attr(data-rt);
}

.breadcrumb {
	border-radius: 4px;
	padding: 5.6px 11.2px;
	border: 1px solid var(--color-border);
}

.text ul, .text-b ul {
	list-style-type: "\203A  ";
}

.trending a {
	border-radius: 0;
}

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

.reading-darkTop, .reading-darkTop a {
	color: var(--color-bg);
	background: var(--color-heading);
}

.paginator-top {
	margin: 8px 0;
	text-align: right;
}

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

.paginator-num a, .paginator-num span {
	border-radius: 4px;
	padding: 4.8px 11.2px;
	border: 1px solid var(--color-border);
}

@media (max-width: 799px) {
	.name {
		font-size: 28.8px;
	}
}

@media (min-width: 800px) {
	.jumbo .headline {
		font-size: 41.6px;
	}
	.jumbo-mo > .width {
		grid-template-columns: minmax(0,1fr) minmax(0,1fr);
		align-items: center;
	}
	.body {
		align-items: flex-start;
		display: flex;
		gap: 36px;
	}
	.content {
		order: 2;
		flex: 1 1 0;
	}
	.left {
		margin-top: 0;
		order: 1;
		flex: 0 0 176px;
	}
	.column {
		margin-top: 0;
		order: 3;
		flex: 0 0 176px;
	}
	.post-alt {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
	.us-two-inline .inquiry {
		grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
		align-items: end;
	}
	.us-two-duo .inquiry {
		grid-template-columns: minmax(0,1fr) minmax(0,1fr);
	}
	.us-two-duo .field:nth-of-type(3), .us-two-duo button {
		grid-column: 1 / -1;
	}
	.single-cd {
		padding: 32px;
	}
}
