.enveloppen {
	--enveloppen-purple: #6e2376;
	--enveloppen-purple-dark: #5e287e;
	--enveloppen-ink: #0c2b2d;
	--enveloppen-muted: #5c6b6c;
	--enveloppen-line: #e6eeee;
	--enveloppen-soft: #f4f5f5;
	color: var(--enveloppen-ink);
}

.enveloppen-lead {
	font-size: 1.05rem;
	line-height: 1.6;
	max-width: 46rem;
}

.enveloppen-tips {
	display: grid;
	gap: 0.75rem;
	margin: 1.5rem 0 2.5rem;
}

.enveloppen-tip {
	display: grid;
	grid-template-columns: minmax(8rem, 11rem) 1fr;
	gap: 0.75rem 1.25rem;
	padding: 0.9rem 1rem;
	background: var(--enveloppen-soft);
	border-radius: 12px;
}

.enveloppen-tip dt {
	font-weight: 700;
}

.enveloppen-tip dd {
	margin: 0;
}

.enveloppen-tip dd p {
	margin: 0;
}

.enveloppen-group {
	margin: 0 0 3rem;
	scroll-margin-top: 6rem;
}

.enveloppen-group h2 {
	margin: 0 0 0.6rem;
	color: var(--enveloppen-ink);
}

.enveloppen-description,
.enveloppen-details {
	max-width: 46rem;
	line-height: 1.6;
}

.enveloppen-description p:last-child {
	margin-bottom: 0.4rem;
}

.enveloppen-details {
	font-weight: 600;
}

.enveloppen-table-wrap {
	overflow-x: auto;
	margin-top: 1rem;
}

.enveloppen-table {
	width: 100%;
	border-collapse: collapse;
}

.enveloppen-table th {
	text-align: left;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--enveloppen-muted);
	padding: 0.6rem 0.75rem;
	border-bottom: 2px solid var(--enveloppen-line);
}

.enveloppen-table td {
	padding: 0.85rem 0.75rem;
	border-bottom: 1px solid var(--enveloppen-line);
	vertical-align: middle;
}

.enveloppen-thumb {
	width: 96px;
	height: 96px;
	object-fit: contain;
	background: var(--enveloppen-soft);
	border-radius: 10px;
}

.enveloppen-name {
	font-weight: 600;
}

.enveloppen-name a {
	color: var(--enveloppen-purple);
}

.enveloppen-mark {
	color: var(--enveloppen-purple);
}

#hkb .enveloppen a.enveloppen-download,
#hkb .enveloppen a.enveloppen-download:hover,
#hkb .enveloppen a.enveloppen-download:focus,
#hkb .enveloppen a.enveloppen-download:active,
#hkb .enveloppen a.enveloppen-download:visited,
.enveloppen a.enveloppen-download,
.enveloppen a.enveloppen-download:hover,
.enveloppen a.enveloppen-download:focus,
.enveloppen a.enveloppen-download:active,
.enveloppen a.enveloppen-download:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--enveloppen-purple);
	color: #ffffff !important;
	text-decoration: none;
	border-radius: 999px;
	padding: 0.45rem 0.9rem;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
}

#hkb .enveloppen a.enveloppen-download:hover,
#hkb .enveloppen a.enveloppen-download:focus,
.enveloppen a.enveloppen-download:hover,
.enveloppen a.enveloppen-download:focus {
	background: var(--enveloppen-purple-dark);
	color: #ffffff !important;
}

.enveloppen-footnote {
	margin: 0.8rem 0 0;
	color: var(--enveloppen-muted);
	font-size: 0.92rem;
}

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

@media (max-width: 720px) {
	.enveloppen-tip {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}

	.enveloppen-table thead {
		display: none;
	}

	.enveloppen-table,
	.enveloppen-table tbody,
	.enveloppen-table tr,
	.enveloppen-table td {
		display: block;
		width: 100%;
	}

	.enveloppen-table tr {
		padding: 1rem 0;
		border-bottom: 1px solid var(--enveloppen-line);
	}

	.enveloppen-table td {
		display: grid;
		grid-template-columns: 8.5rem 1fr;
		gap: 0.5rem;
		align-items: center;
		border: 0;
		padding: 0.35rem 0;
	}

	.enveloppen-table td::before {
		content: attr(data-label);
		color: var(--enveloppen-muted);
		font-size: 0.78rem;
		letter-spacing: 0.03em;
		text-transform: uppercase;
	}

	.enveloppen-table td:first-child {
		grid-template-columns: 1fr;
	}

	.enveloppen-table td:first-child::before {
		display: none;
	}
}
