.section-open-position {
}

/* Outer gap — light space framing the inset dark box */
.section-open-position > .container {
	padding-block: 0;
}

/* Inset dark container — rounded bg replaces full-bleed dark section */
.op-inset {
	position: relative;
	border-radius: var(--radius-section-inset);
	overflow: hidden;
	padding-block-start: var(--size-v-pad-lg);
	padding-block-end: var(--size-global-padding-h);
}

/* Lift content above .bg-texture-dark::before overlay */
.op-inner {
	position: relative;
	z-index: 1;
}

.section-open-position .title {
	color: var(--color-text-pri-light);
	max-width: 20ch;
	margin-bottom: var(--size-section-title-mb);
}

/* Card grid — single column */
.section-open-position .positions-grid {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--size-gap-cards);
}

/* Decorative circle — pinned to top so accordion expansion doesn't shift it */
.section-open-position .ap-circle-wrap {
	position: absolute;
	top: -8rem;
	right: calc(-5rem - 5%);
	width: 52rem;
	pointer-events: none;
	z-index: 0;
}

.section-open-position .ap-circle {
	width: 100%;
	height: auto;
	display: block;
}

/* Individual card — extends .card-dark (base.css) */
.section-open-position .position-card {
	position: relative;
	z-index: 1;
	padding: 2.5rem;
	cursor: pointer;
	transition: background-color var(--duration-slow) var(--ease-default);
}

/* Header row — title/meta + CTA */
.section-open-position .position-card-header {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 3rem;
}

.section-open-position .position-card-title {
	color: var(--color-text-pri-light);
	margin-bottom: 0.5rem;
	transition: color var(--duration-slow) var(--ease-default);
}

.section-open-position .position-card-meta {
	color: var(--color-text-ter-light);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.section-open-position .meta-sep {
	color: var(--color-text-ter-light);
	transform: translateY(0.1rem);
}

.section-open-position .position-card .btn {
	white-space: nowrap;
	flex-shrink: 0;
}

/* Accordion body — collapsed by default */
.section-open-position .position-card-body {
	max-height: 0;
	overflow: hidden;
	transition: max-height var(--duration-slow) var(--ease-default);
}

.section-open-position .position-card.is-open .position-card-body {
	max-height: 200rem;
}

.section-open-position .position-card-body-inner {
	color: var(--color-text-sec-light);
	max-width: 75ch;
	padding-top: 1.5rem;
	padding-bottom: 0.5rem;
}

/* Rich text styling inside accordion body */
.section-open-position .position-card-body-inner p {
	margin-bottom: 1em;
}

.section-open-position .position-card-body-inner p:last-child {
	margin-bottom: 0;
}

.section-open-position .position-card-body-inner ul,
.section-open-position .position-card-body-inner ol {
	padding-left: 1.5em;
	margin-bottom: 1em;
}

.section-open-position .position-card-body-inner li {
	margin-bottom: 0.35em;
}

.section-open-position .position-card-body-inner strong {
	color: var(--color-text-pri-light);
}

/* Hover on card */
@media (hover: hover) {
	.section-open-position .position-card:hover {
		background-color: var(--color-bg-dark-200);
	}

}

/* Responsive */
@media only screen and (max-width: 991.98px) {
	.section-open-position > .container {
		padding-block: 0;
	}

	.op-inset {
		padding-block-start: var(--size-v-pad-sm);
		padding-block-end: var(--size-global-padding-h);
	}

	.section-open-position .ap-circle-wrap {
		display: none;
	}

	.section-open-position .position-card {
		padding: var(--size-pad-2xs);
	}

	.section-open-position .position-card-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}

	.section-open-position .position-card-title {
		margin-bottom: 0.25rem;
	}
}
