.pk-services {
	min-height: 70vh;
	padding: var(--pk-page-top-gap) var(--pk-page-gutter-desktop) var(--pk-section-gap) !important;
	background: var(--pk-color-canvas);
	color: var(--pk-color-text);
	font: var(--pk-font-weight-body) var(--pk-font-size-body)/1.5 var(--pk-font-family-ui);
}

.pk-services *,
.pk-services *::before,
.pk-services *::after {
	box-sizing: border-box;
}

.pk-services :where(h2, h3, p, ol, ul, dl) {
	margin-top: 0;
}

.pk-services__container {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.pk-services .pk-application-intro {
	max-width: 760px;
	gap: var(--pk-space-8);
	margin-bottom: var(--pk-page-intro-content-gap) !important;
}

.pk-services .pk-application-intro__title {
	margin: 0 !important;
	font-size: var(--pk-font-size-page-title) !important;
	font-weight: var(--pk-font-weight-heading) !important;
}

.pk-services .pk-application-intro__description {
	margin: 0;
}

.pk-services__eyebrow,
.pk-service-summary header p {
	margin: 0;
	color: var(--pk-color-action);
	font-size: var(--pk-font-size-metadata);
	font-weight: var(--pk-font-weight-control);
	text-transform: uppercase;
}

.pk-services__section {
	display: grid;
	gap: var(--pk-space-16);
	margin-top: var(--pk-space-32);
}

.pk-services__section > header {
	display: grid;
	gap: var(--pk-space-8);
}

.pk-services__section > header > :last-child,
.pk-services__availability p,
.pk-services__notice p,
.pk-services__cta p {
	margin-bottom: 0;
	color: var(--pk-color-text-muted);
}

.pk-services__section h2,
.pk-services__availability h2,
.pk-services__notice h2,
.pk-services__cta h2 {
	margin-bottom: 0;
	font-size: var(--pk-font-size-section-heading);
	font-weight: var(--pk-font-weight-heading);
}

.pk-services__grid,
.pk-services__feature-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--pk-grid-gap);
}

.pk-services__card {
	display: flex;
	min-width: 0;
	min-height: 196px;
	flex-direction: column;
	padding: var(--pk-card-padding);
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
}

.pk-services__card h3,
.pk-services__feature-grid h3 {
	margin-bottom: var(--pk-space-8);
	font-size: var(--pk-font-size-component-heading);
	font-weight: var(--pk-font-weight-heading);
}

.pk-services__card p,
.pk-services__feature-grid p {
	margin-bottom: var(--pk-space-20);
	color: var(--pk-color-text-muted);
}

.pk-services__card .pk-button {
	align-self: flex-start;
	margin-top: auto;
}

.pk-services__availability,
.pk-services__notice,
.pk-services__cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--pk-space-24);
	padding: var(--pk-card-padding);
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
	background: var(--pk-color-surface);
}

.pk-services__availability strong,
.pk-services__notice strong {
	flex: 0 0 auto;
	color: var(--pk-color-action);
	font-size: var(--pk-font-size-metadata);
	font-weight: var(--pk-font-weight-button);
}

.pk-services__process ol {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--pk-grid-gap);
	margin-bottom: 0;
	padding: 0;
	list-style: none;
}

.pk-services__process li,
.pk-services__feature-grid > div {
	display: grid;
	gap: var(--pk-space-4);
	min-width: 0;
	padding: var(--pk-card-padding);
	border-top: var(--pk-border-standard);
}

.pk-services__process span {
	color: var(--pk-color-text-muted);
}

.pk-services__facts,
.pk-services__standards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--pk-space-12);
	margin-bottom: 0;
	padding: 0;
	list-style: none;
}

.pk-services__facts span,
.pk-services__standards li {
	padding: var(--pk-space-12);
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
	background: var(--pk-color-surface);
}

.pk-services__standards {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pk-services__featured,
.pk-services__membership {
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
}

.pk-services__membership .pk-services__facts {
	grid-column: 1 / -1;
}

.pk-services__faq {
	display: grid;
	gap: var(--pk-space-8);
}

.pk-services__faq details {
	border-top: var(--pk-border-standard);
}

.pk-services__faq summary {
	padding: var(--pk-space-12) 0;
	font-size: var(--pk-font-size-control);
	font-weight: var(--pk-font-weight-button);
	cursor: pointer;
}

.pk-services__faq details p {
	margin-bottom: var(--pk-space-12);
	color: var(--pk-color-text-muted);
}

.pk-services__back {
	display: inline-block;
	margin-bottom: var(--pk-space-20);
	color: var(--pk-color-action);
}

.pk-service-config__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
	gap: var(--pk-space-20);
	align-items: start;
}

.pk-service-config__main,
.pk-service-config__form,
.pk-service-config__aside,
.pk-service-section,
.pk-service-components,
.pk-service-information,
.pk-service-summary {
	min-width: 0;
}

.pk-service-config__main,
.pk-service-config__form {
	display: grid;
	gap: var(--pk-grid-gap);
}

.pk-service-section,
.pk-service-information,
.pk-service-components,
.pk-service-summary,
.pk-service-info-panel {
	padding: var(--pk-panel-padding) !important;
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
	background: var(--pk-color-surface);
}

.pk-service-section > .pk-service-components {
	margin-top: var(--pk-space-16);
	padding: 0 !important;
	border: 0;
	background: transparent;
}

.pk-service-section > header,
.pk-service-information > header,
.pk-service-components > header {
	display: block;
	margin-bottom: var(--pk-space-16);
}

.pk-service-section > header > span,
.pk-service-information > header > span,
.pk-service-components > header > span {
	display: none;
}

.pk-service-config h2,
.pk-service-config h3 {
	margin: 0;
	font-size: var(--pk-font-size-component-heading);
	font-weight: var(--pk-font-weight-heading);
}

.pk-service-config header p {
	margin: var(--pk-space-4) 0 0;
	color: var(--pk-color-text-muted);
	font-size: var(--pk-font-size-metadata);
}

.pk-service-config__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--pk-space-12);
}

.pk-service-field,
.pk-service-category,
.pk-service-search {
	display: grid;
	min-width: 0;
	gap: var(--pk-space-8);
}

.pk-service-field--wide {
	grid-column: 1 / -1;
}

.pk-service-field > span,
.pk-service-field > .pk-label,
.pk-service-category > .pk-label,
.pk-service-search > .pk-label,
.pk-label {
	font-size: var(--pk-font-size-metadata);
	font-weight: var(--pk-font-weight-control);
}

.pk-services .pk-control,
.pk-services .pk-select__trigger {
	width: 100%;
	min-width: 0;
	height: var(--pk-button-height);
	min-height: var(--pk-button-height);
	padding: 0 var(--pk-space-10);
	border: var(--pk-border-standard) !important;
	border-radius: var(--pk-radius-input);
	outline: 0 !important;
	background: var(--pk-color-canvas);
	box-shadow: none !important;
	color: var(--pk-color-text);
	font: var(--pk-font-weight-button) var(--pk-font-size-control)/1 var(--pk-font-family-ui);
}

.pk-services .pk-control:hover,
.pk-services .pk-control:focus,
.pk-services .pk-control:focus-visible,
.pk-services .pk-select__trigger:hover,
.pk-services .pk-select__trigger:focus,
.pk-services .pk-select__trigger:focus-visible,
.pk-services .pk-select__trigger[aria-expanded="true"] {
	border-color: var(--pk-color-border) !important;
	outline: 0 !important;
	box-shadow: none !important;
}

.pk-services textarea.pk-control {
	height: auto;
	min-height: 72px;
	padding-block: var(--pk-space-10);
	resize: vertical;
}

.pk-service-field .pk-select,
.pk-service-category__control {
	position: relative;
	display: block;
	width: 100%;
	min-width: 0;
}

.pk-service-field .pk-select__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.pk-service-field .pk-select__trigger[aria-expanded="true"] {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.pk-select__indicator,
.pk-service-category__control img {
	width: 8px;
	height: 8px;
	flex: 0 0 8px;
	transform: rotate(45deg);
	pointer-events: none;
}

.pk-select__indicator {
	transition: transform var(--pk-motion-duration);
}

.pk-select__trigger[aria-expanded="true"] .pk-select__indicator {
	transform: rotate(-135deg);
}

.pk-service-category__control select {
	appearance: none;
	padding-right: 30px;
}

.pk-service-category__control img {
	position: absolute;
	top: 14px;
	right: 12px;
}

.pk-service-field .pk-select__options {
	position: absolute;
	z-index: 20;
	width: 100%;
	margin: -1px 0 0;
	padding: 0;
	overflow: hidden;
	border: var(--pk-border-standard);
	border-top-color: var(--pk-color-border);
	border-radius: 0 0 var(--pk-radius-input) var(--pk-radius-input);
	background: var(--pk-color-canvas);
	list-style: none;
	box-shadow: none;
}

.pk-service-field .pk-select__options li {
	display: flex;
	height: 32px;
	align-items: center;
	padding: 0 var(--pk-space-10);
	outline: 0;
	color: var(--pk-color-text);
	font: var(--pk-font-weight-body) var(--pk-font-size-control)/1 var(--pk-font-family-ui);
	cursor: pointer;
}

.pk-service-field .pk-select__options li:hover,
.pk-service-field .pk-select__options li:focus,
.pk-service-field .pk-select__options li[aria-selected="true"] {
	outline: 0;
	background: var(--pk-color-action);
	color: var(--pk-color-canvas);
}

.pk-service-matrix,
.pk-service-statuses {
	margin: var(--pk-space-16) 0 0;
	padding-top: var(--pk-space-12);
	border-top: var(--pk-border-standard);
	color: var(--pk-color-text-muted);
	font-size: var(--pk-font-size-metadata);
	line-height: 1.6;
}

.pk-component-slots {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--pk-space-8);
	margin-bottom: var(--pk-space-16);
}

.pk-component-slot {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--pk-space-4);
	width: 100%;
	min-width: 0;
	max-width: 100%;
	min-height: 48px;
	align-content: center;
	padding: var(--pk-space-10) !important;
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-input);
	outline: 0;
	background: var(--pk-color-canvas);
	box-shadow: none;
	color: var(--pk-color-text);
	font: var(--pk-font-weight-body) var(--pk-font-size-body)/1.4 var(--pk-font-family-ui);
	text-align: left;
	white-space: normal !important;
}

.pk-component-slot span {
	min-width: 0;
	overflow-wrap: anywhere;
	color: var(--pk-color-text-muted);
	font-size: 11px;
}

.pk-service-components__search {
	display: grid;
	grid-template-columns: minmax(150px, 180px) minmax(0, 1fr);
	gap: var(--pk-space-10);
}

.pk-service-search .pk-input-action {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	height: var(--pk-button-height);
	padding: 1px;
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-input);
	background: var(--pk-color-canvas);
}

.pk-service-search .pk-input-action__input {
	min-width: 0;
	height: 32px;
	padding: 0 var(--pk-space-10);
	border: 0 !important;
	outline: 0 !important;
	background: transparent;
	box-shadow: none !important;
	color: var(--pk-color-text);
	font: var(--pk-font-weight-body) var(--pk-font-size-body)/1 var(--pk-font-family-ui);
}

.pk-service-search .pk-input-action__button {
	height: 32px;
	min-height: 32px;
	border-radius: 0 var(--pk-radius-button) var(--pk-radius-button) 0;
}

.pk-service-components__results {
	display: grid;
	gap: var(--pk-space-8);
	margin-top: var(--pk-space-16);
}

.pk-service-components__results > p {
	margin: 0;
	color: var(--pk-color-text-muted);
}

.pk-service-components__results article,
.pk-service-components__selected {
	display: flex;
	min-width: 0;
	align-items: center;
	justify-content: space-between;
	gap: var(--pk-space-12);
	padding: var(--pk-space-12);
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
	background: var(--pk-color-canvas);
}

.pk-service-components__results h3 {
	font-size: var(--pk-font-size-control);
}

.pk-service-components__results ul {
	margin: var(--pk-space-4) 0 0;
	padding: 0;
	list-style: none;
	color: var(--pk-color-text-muted);
	font-size: var(--pk-font-size-metadata);
}

.pk-service-components__results article span,
.pk-service-components__selected span,
.pk-service-components__selected small {
	display: block;
	color: var(--pk-color-text-muted);
	font-size: var(--pk-font-size-metadata);
}

.pk-service-components__selected {
	margin-bottom: var(--pk-space-12);
}

.pk-service-components__selected strong {
	display: block;
	margin: var(--pk-space-4) 0;
}

.pk-service-components__manual-toggle {
	display: block !important;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	margin-top: var(--pk-space-16);
	padding: 0 !important;
	border: 0;
	background: transparent;
	color: var(--pk-color-text);
	font: var(--pk-font-weight-body) var(--pk-font-size-body)/1.4 var(--pk-font-family-ui);
	text-align: left;
	white-space: normal !important;
	cursor: pointer;
}

.pk-service-components__manual-toggle strong {
	color: var(--pk-color-action);
}

.pk-component-manual,
.pk-service-fittings {
	min-width: 0;
	max-width: 100%;
	margin: var(--pk-space-16) 0 0;
	padding: var(--pk-space-16);
	border: var(--pk-border-standard);
	border-radius: var(--pk-radius-surface);
}

.pk-component-manual legend,
.pk-service-fittings legend {
	padding: 0 var(--pk-space-4);
	font-weight: var(--pk-font-weight-heading);
}

.pk-component-manual p {
	margin-bottom: var(--pk-space-16);
	color: var(--pk-color-text-muted);
}

.pk-service-fittings {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--pk-space-10);
}

.pk-service-fittings label {
	display: grid;
	min-width: 0;
	gap: var(--pk-space-8);
}

.pk-service-info-panel {
	margin-top: var(--pk-space-16);
}

.pk-service-info-panel p {
	margin: var(--pk-space-8) 0 0;
	color: var(--pk-color-text-muted);
}

.pk-service-summary {
	position: sticky;
	top: 92px;
}

.pk-service-summary header {
	margin-bottom: var(--pk-space-16);
}

.pk-service-summary dl,
.pk-service-information dl,
.pk-service-membership dl {
	display: grid;
	margin: 0;
}

.pk-service-summary dl div,
.pk-service-information dl div,
.pk-service-membership dl div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--pk-space-12);
	padding: var(--pk-space-12) 0;
	border-top: var(--pk-border-standard);
}

.pk-service-summary dt,
.pk-service-information dt,
.pk-service-membership dt {
	color: var(--pk-color-text-muted);
}

.pk-service-summary dd,
.pk-service-information dd,
.pk-service-membership dd {
	min-width: 0;
	margin: 0;
	overflow-wrap: anywhere;
	color: var(--pk-color-text);
	font-weight: var(--pk-font-weight-button);
	text-align: right;
}

.pk-service-summary .pk-button {
	width: 100%;
	margin-top: var(--pk-space-16);
}

.pk-service-summary__note,
.pk-service-summary__blocked,
.pk-service-membership__note {
	margin: var(--pk-space-12) 0 0;
	color: var(--pk-color-text-muted);
	font-size: var(--pk-font-size-metadata);
}

.pk-service-summary__blocked {
	color: var(--pk-color-action);
}

@media (min-width: 768px) and (max-width: 1199.98px) {
	.pk-service-config__layout {
		grid-template-columns: minmax(0, 1fr) minmax(280px, 34%);
	}

	.pk-service-components__search {
		grid-template-columns: 1fr;
	}

	.pk-service-fittings {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pk-service-summary dl div {
		grid-template-columns: minmax(0, 1fr);
	}

	.pk-service-summary dd {
		text-align: left;
	}
}

@media (max-width: 767.98px) {
	.pk-services__section {
		margin-top: var(--pk-space-24);
	}

	.pk-services__grid,
	.pk-services__feature-grid,
	.pk-services__process ol,
	.pk-services__facts,
	.pk-services__standards,
	.pk-services__featured,
	.pk-services__membership,
	.pk-service-config__layout,
	.pk-service-config__fields,
	.pk-service-components__search,
	.pk-component-slots {
		grid-template-columns: minmax(0, 1fr);
	}

	.pk-services__card {
		min-height: 0;
	}

	.pk-services__availability,
	.pk-services__notice,
	.pk-services__cta {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--pk-space-12);
	}

	.pk-services__featured .pk-button,
	.pk-services__cta .pk-button {
		width: 100%;
	}

	.pk-service-summary {
		position: static;
	}

	.pk-service-fittings {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pk-service-components__results article,
	.pk-service-components__selected {
		align-items: stretch;
		flex-direction: column;
	}

	.pk-service-components__results .pk-button,
	.pk-service-components__selected .pk-button {
		width: 100%;
	}
}

/* Shared SVG replaces the old attachment arrow without changing field layout. */
.pk-services .pk-lucide-indicator { display: inline-flex; flex: 0 0 8px; width: 8px; height: 8px; transform: none; pointer-events: none; }
.pk-services .pk-lucide-indicator > svg.pk-icon.pk-shared-icon[data-pk-icon] { width: 100%; height: 100%; }
.pk-services [aria-expanded="true"] > .pk-lucide-indicator { transform: rotate(180deg); }
.pk-services .pk-service-category__control > .pk-lucide-indicator { position: absolute; top: 14px; right: 12px; }
.pk-services .pk-service-category__control:is(:hover, :focus-within) .pk-shared-icon { --pk-shared-icon-fill: var(--pk-color-action, #6BC8CC); }
