.cdc-catalog {
	--cdc-bg: transparent;
	--cdc-panel: transparent;
	--cdc-border: rgba(127, 127, 127, .24);
	--cdc-accent: #ff1717;
	--cdc-icon-bg: #370c0c;
	--cdc-text: currentColor;
	--cdc-muted: currentColor;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 25px 40px 20px;
	border: 0;
	border-radius: 0;
	background: var(--cdc-bg);
	color: inherit;
	font-family: inherit;
}

.cdc-catalog * { box-sizing: border-box; }

.cdc-catalog__header {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 0 0 31px;
	border-bottom: 1px solid var(--cdc-border);
}

.cdc-catalog__mark {
	display: grid;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 9px;
	background: var(--cdc-icon-bg);
	color: var(--cdc-accent);
	font-size: 17px;
}

.cdc-catalog h2 {
	margin: 0;
	color: inherit;
	font-size: 29px;
	font-weight: 750;
	line-height: 1.08;
}

.cdc-catalog__header p {
	margin: 5px 0 0;
	color: inherit;
	font-size: 15px;
	opacity: .78;
}

.cdc-catalog__stats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 28px 0 41px;
	border-bottom: 1px solid var(--cdc-border);
}

.cdc-catalog__stats span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 35px;
	padding: 7px 13px;
	border: 1px solid var(--cdc-border);
	border-radius: 6px;
	background: rgba(127, 127, 127, .08);
	color: inherit;
	font-size: 13px;
	font-weight: 700;
}

.cdc-catalog__stats i {
	color: var(--cdc-accent);
	font-size: 14px;
	font-style: normal;
}

.cdc-catalog__modules {
	border: 0;
	border-radius: 0;
	overflow: visible;
}

.cdc-module {
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--cdc-border);
	background: transparent;
}

.cdc-module summary {
	display: flex;
	align-items: center;
	gap: 23px;
	min-height: 99px;
	padding: 22px 12px;
	cursor: pointer;
	list-style: none;
}

.cdc-module summary::-webkit-details-marker { display: none; }

.cdc-module__number {
	flex: 0 0 88px;
	min-width: 88px;
	color: currentColor;
	font-size: 68px;
	font-weight: 850;
	letter-spacing: -5px;
	line-height: .8;
	opacity: .14;
}

.cdc-module__summary {
	display: grid;
	flex: 1;
	gap: 8px;
	min-width: 0;
}

.cdc-module__summary h3 {
	margin: 0;
	color: inherit;
	font-size: 16px;
	font-weight: 750;
	letter-spacing: -.01em;
	line-height: 1.25;
	text-transform: uppercase;
}

.cdc-module__summary small {
	display: flex;
	align-items: center;
	gap: 6px;
	color: inherit;
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
	opacity: .76;
}

.cdc-module__summary small i {
	color: #cfcfcf;
	font-size: 14px;
	font-style: normal;
}

.cdc-module__chevron {
	color: currentColor;
	font-size: 18px;
	transition: transform .18s ease, color .18s ease;
	opacity: .55;
}

.cdc-module summary:hover .cdc-module__chevron { color: var(--cdc-accent); opacity: 1; }
.cdc-module[open] .cdc-module__chevron { transform: rotate(180deg); }

.cdc-module__items {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 4px 30px 20px 123px;
	list-style: none;
	color: inherit;
	font-size: 13px;
	opacity: .82;
}

.cdc-module__items li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 9px 0;
	border-top: 1px solid var(--cdc-border);
}

.cdc-module__items time { flex: 0 0 auto; font-variant-numeric: tabular-nums; opacity: .75; }

.cdc-module__empty {
	margin: 0 !important;
	padding: 0 30px 20px 123px;
	color: inherit !important;
	font-size: 13px !important;
	opacity: .7;
}

.cdc-submodule {
	margin: 0 30px 16px 123px;
	padding: 0 0 0 17px;
	border-left: 2px solid var(--cdc-border);
}

.cdc-submodule .cdc-submodule {
	margin: 12px 0 0 18px;
}

.cdc-submodule__heading {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px 10px;
	padding: 10px 0;
	color: inherit;
}

.cdc-submodule__heading > span {
	color: var(--cdc-accent);
	font-size: 16px;
}

.cdc-submodule__heading > strong {
	font-size: 13px;
	font-weight: 750;
	text-transform: uppercase;
}

.cdc-submodule__heading > small {
	font-size: 11px;
	opacity: .7;
}

.cdc-submodule .cdc-module__items {
	padding: 0 0 9px 26px;
}

.cdc-submodule .cdc-module__empty {
	padding: 4px 0 10px 26px;
}

.cdc-catalog__more {
	display: flex !important;
	align-items: center;
	gap: 12px;
	width: fit-content !important;
	min-width: 0 !important;
	max-width: 100%;
	margin: 24px auto 0;
	padding: 10px 16px !important;
	border: 1px solid currentColor !important;
	border-radius: 5px;
	background: transparent !important;
	color: inherit !important;
	font-family: inherit;
	font-size: 11px;
	font-weight: 750;
	line-height: 1.2;
	text-transform: uppercase;
	box-shadow: none !important;
	cursor: pointer;
	opacity: .82;
	transition: opacity .18s ease, background .18s ease;
}

.cdc-catalog__more:hover {
	background: rgba(127, 127, 127, .08) !important;
	color: inherit !important;
	opacity: 1;
}

.cdc-catalog__more-icon { display: inline-block; transition: transform .18s ease; }
.cdc-catalog.is-expanded .cdc-catalog__more-icon { transform: rotate(180deg); }

.cdc-catalog__privacy { display: none; }
.cdc-catalog__notice { padding: 14px 16px; border-left: 3px solid var(--cdc-accent); background: rgba(127, 127, 127, .08); color: inherit; }
.cdc-module--extra { display: none; }
.cdc-catalog.is-expanded .cdc-module--extra { display: block; }

@media (max-width: 767px) {
	.cdc-catalog { padding: 22px 18px 18px; }
	.cdc-catalog h2 { font-size: 23px; }
	.cdc-catalog__header { padding-bottom: 23px; }
	.cdc-catalog__stats { padding: 20px 0 27px; }
	.cdc-module summary { gap: 13px; min-height: 82px; padding: 17px 2px; }
	.cdc-module__number { flex-basis: 58px; min-width: 58px; font-size: 44px; letter-spacing: -3px; }
	.cdc-module__summary h3 { font-size: 13px; }
	.cdc-module__items { padding: 3px 8px 17px 71px; }
	.cdc-module__empty { padding: 0 8px 17px 71px; }
	.cdc-submodule { margin: 0 8px 14px 71px; padding-left: 12px; }
	.cdc-submodule .cdc-submodule { margin-left: 10px; }
	.cdc-submodule .cdc-module__items { padding-left: 18px; }
	.cdc-submodule .cdc-module__empty { padding-left: 18px; }
	.cdc-catalog__more { width: fit-content !important; justify-content: center; padding-inline: 12px !important; }
}
