/* Dark palette scoped to the individual company pages. */
.single-company-page {
	background: #071427;
	color: #fff;
	padding: clamp(1rem, 4vw, 3rem) 1rem;
	font-size: 1.125rem;
	line-height: 1.6;
	overflow-wrap: anywhere;
}

.single-company-page > .container {
	max-width: 1200px;
	margin-inline: auto;
}

.single-company-page a {
	color: #25c4f4;
	text-underline-offset: 0.2em;
}

.single-company-page a:hover {
	color: #a5e6ff;
}

.single-company-page a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.single-company-page .single-company-header {
	z-index: auto;
	background: linear-gradient(110deg, #12294d 0%, #142f5b 55%, #102c4c 100%);
	color: #fff;
	padding: clamp(1.25rem, 4vw, 2.5rem);
	margin-bottom: 2rem;
	border: 1px solid #205778;
	border-radius: 12px;
}

.single-company-page .single-company-title {
	color: #fff;
	margin-bottom: 1rem;
	font-size: clamp(1.75rem, 3.5vw, 2.75rem);
	line-height: 1.25;
}

.single-company-page .single-company-back-link {
	color: #7dd3fc;
}

.single-company-page .single-company-back-link:hover {
	color: #a5e6ff;
	text-decoration-thickness: 2px;
}

.single-company-page .single-company-subtitle {
	color: #fff;
	margin: 2rem 0 1rem;
	font-size: 1.75rem;
	line-height: 1.3;
}

.single-company-page h3.single-company-subtitle {
	font-size: 1.375rem;
}

.single-company-page .product-item {
	background: #102341;
	padding: clamp(1rem, 3vw, 2rem);
	margin-bottom: 1rem;
	border: 1px solid #263955;
	border-radius: 12px;
	box-shadow: 0 8px 24px rgb(0 0 0 / 10%);
}

.single-company-page .single-company-meta,
.single-company-page .single-company-license > .product-item {
	display: grid;
	grid-template-columns: minmax(160px, 1fr) minmax(0, 3fr);
	gap: 1rem 2rem;
	align-items: start;
}

.single-company-page .single-company-meta-label {
	color: #7dd3fc;
	font-weight: 700;
}

.single-company-page .single-company-meta-content {
	min-width: 0;
}

.single-company-page .single-company-meta-content p {
	text-align: start;
}

.single-company-page .single-company-logo {
	grid-column: 1 / -1;
	width: auto;
	max-width: min(100%, 220px);
	max-height: 160px;
	height: auto;
	object-fit: contain;
	margin-bottom: 0.5rem;
}

.single-company-page .single-company-gallery img {
	max-width: 100%;
	height: auto;
}

@media (max-width: 600px) {
	.single-company-page {
		font-size: 1rem;
	}

	.single-company-page .single-company-meta,
	.single-company-page .single-company-license > .product-item {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.25rem;
	}

	.single-company-page .single-company-meta-content + .single-company-meta-label {
		margin-top: 1rem;
	}
}
