.mj420-product-information {
	--mj420-bg: #0f1110;
	--mj420-panel: #171a18;
	--mj420-paper: #f3f7f3;
	--mj420-ink: #f4f7f4;
	--mj420-paper-ink: #172019;
	--mj420-muted: #bbc5bd;
	--mj420-line: #3f4a42;
	--mj420-accent: #78df8b;
	--mj420-focus: #f2c94c;
	box-sizing: border-box;
	width: min(100%, 1180px);
	margin: clamp(2.5rem, 6vw, 5rem) auto;
	padding: clamp(1.25rem, 3vw, 2.5rem);
	overflow-wrap: anywhere;
	color: var(--mj420-ink);
	background: var(--mj420-bg);
	border: 1px solid var(--mj420-line);
	border-radius: 1.25rem;
}

.mj420-product-information *,
.mj420-product-information *::before,
.mj420-product-information *::after {
	box-sizing: border-box;
	min-width: 0;
}

.mj420-product-information h2,
.mj420-product-information h3,
.mj420-product-information p,
.mj420-product-information li,
.mj420-product-information dt,
.mj420-product-information dd,
.mj420-product-information summary {
	color: inherit;
}

.mj420-product-information h2 {
	margin: 0.2rem 0 0.75rem;
	font-size: clamp(1.65rem, 4vw, 2.6rem);
	line-height: 1.08;
}

.mj420-product-information h3 {
	margin: 0 0 1rem;
	font-size: clamp(1.1rem, 2.5vw, 1.35rem);
}

.mj420-product-information__eyebrow {
	margin: 0;
	color: var(--mj420-accent) !important;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.mj420-product-information__header > p:last-child {
	max-width: 74ch;
	margin-bottom: 0;
	color: var(--mj420-muted);
}

.mj420-product-information__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 1.5rem;
}

.mj420-product-information__panel {
	padding: clamp(1rem, 2.5vw, 1.5rem);
	background: var(--mj420-panel);
	border: 1px solid var(--mj420-line);
	border-radius: 0.9rem;
}

.mj420-product-information__panel dl {
	margin: 0;
}

.mj420-product-information__panel dl > div {
	display: grid;
	grid-template-columns: minmax(8rem, 0.85fr) minmax(0, 1.15fr);
	gap: 0.75rem;
	padding: 0.65rem 0;
	border-top: 1px solid var(--mj420-line);
}

.mj420-product-information__panel dl > div:first-child {
	padding-top: 0;
	border-top: 0;
}

.mj420-product-information__panel dt {
	color: var(--mj420-muted);
	font-weight: 600;
}

.mj420-product-information__panel dd {
	margin: 0;
	font-weight: 700;
}

.mj420-product-information__notice {
	color: var(--mj420-paper-ink);
	background: var(--mj420-paper);
	border-color: transparent;
}

.mj420-product-information__notice ul {
	margin: 0;
	padding-left: 1.2rem;
}

.mj420-product-information__notice li + li {
	margin-top: 0.65rem;
}

.mj420-product-information__faq {
	margin-top: 1.5rem;
}

.mj420-product-information__faq details {
	border-top: 1px solid var(--mj420-line);
}

.mj420-product-information__faq details:last-child {
	border-bottom: 1px solid var(--mj420-line);
}

.mj420-product-information__faq summary {
	display: flex;
	align-items: center;
	min-height: 3.25rem;
	padding: 0.75rem 2rem 0.75rem 0;
	cursor: pointer;
	font-weight: 700;
}

.mj420-product-information__faq details > div {
	max-width: 76ch;
	padding: 0 0 1rem;
	color: var(--mj420-muted);
}

.mj420-product-information__faq details > div p {
	margin: 0;
}

.mj420-product-information__editorial {
	margin-top: 1.25rem;
	color: var(--mj420-muted);
	font-size: 0.86rem;
}

.mj420-product-information__editorial p {
	margin: 0;
}

.mj420-product-information a {
	color: var(--mj420-accent);
	text-decoration-thickness: 0.12em;
	text-underline-offset: 0.16em;
}

.mj420-product-information :focus-visible {
	outline: 3px solid var(--mj420-focus);
	outline-offset: 3px;
}

@media (max-width: 720px) {
	.mj420-product-information {
		border-radius: 0.85rem;
	}

	.mj420-product-information__grid {
		grid-template-columns: 1fr;
	}

	.mj420-product-information__panel dl > div {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mj420-product-information *,
	.mj420-product-information *::before,
	.mj420-product-information *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media (prefers-contrast: more) {
	.mj420-product-information {
		--mj420-line: #dce5de;
		--mj420-muted: #e6ece7;
	}
}

