/* Editorial hierarchy: native blocks and disclosure, no script dependency. */
.dgp-services-section { padding-block: var(--dgp-space-section); }
.dgp-services-intro { max-width: 64ch; margin: 0 0 40px; line-height: 1.65; font-size: 16px; }
.dgp-services-list { margin: 0; }
.dgp-service-overview {
	position: relative;
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 32px;
	padding-block: 28px;
	margin: 0;
	border-top: 1px solid #d5d5d5;
}
.dgp-service-overview:last-child { border-bottom: 1px solid #d5d5d5; }
.dgp-service-overview .dgp-service-overview__icon { width: 64px; margin: 2px 0 0; }
.dgp-service-overview__icon img { width: 64px; height: 64px; object-fit: contain; }
.dgp-service-overview > .dgp-service-overview__copy { min-width: 0; margin: 0; }
.dgp-service-overview .dgp-service-overview__title {
	max-width: 36ch;
	margin: 0 180px 8px 0;
	font-size: clamp(20px, 1.55vw, 24px);
	line-height: 1.3;
	font-family: var(--wp--preset--font-family--surt-text, 'Surt Text', sans-serif);
	font-weight: 500;
}
.dgp-service-overview .dgp-service-overview__summary {
	max-width: 64ch;
	margin: 0 180px 0 0;
	font-size: 16px;
	line-height: 1.65;
}
.dgp-service-overview .dgp-service-overview__details { margin: 0; border: 0; }
.dgp-service-overview__details > summary {
	position: absolute;
	top: 28px;
	right: 0;
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 44px;
	padding: 4px 0 4px 8px;
	list-style: none;
	cursor: pointer;
	font: inherit;
	font-size: 14px;
	line-height: 1.4;
	text-underline-offset: 4px;
}
.dgp-service-overview__details > summary::-webkit-details-marker { display: none; }
.dgp-service-overview__details > summary::after { content: '+'; font-size: 24px; line-height: 1; font-weight: 400; width: 24px; text-align: center; }
.dgp-service-overview__details[open] > summary::after { content: '−'; }
.dgp-service-overview__details > summary:hover { text-decoration: underline; }
.dgp-service-overview__details > summary:focus-visible { outline: 2px solid #27282b; outline-offset: 4px; background: #ffda00; }
.dgp-service-overview:has(details[open]) { border-top-color: #27282b; }
.dgp-service-overview__details > p {
	max-width: 60ch;
	margin: 24px 0 0;
	padding: 0 0 0 20px;
	border-left: 2px solid #ffda00;
	font-size: 17px;
	line-height: 1.65;
}

/* Full-width photographs are accents, not compulsory full screens. */
body.page-id-13554 .dgp-team-hero { min-height: clamp(300px, 36vw, 480px); display: grid; align-items: center; }
body.page-id-13554 .dgp-team-hero > .dgp-section__inner > .dgp-columns { margin-block: 0; }
body.page-id-13554 .dgp-team-hero .dgp-section__background { background-position: center 70%; }
body.page-id-13554 .dgp-team-hero .dgp-section__overlay { opacity: .28; }
body.page-id-13554 .dgp-quote-section { min-height: 240px; }
body.page-id-13554 .dgp-map-section { min-height: clamp(300px, 32vw, 440px); }

/* Content determines city-row height; photos fill their own column only. */
@media (min-width: 992px) {
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city { height: auto; min-height: 0; }
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city > .dgp-section__inner,
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city > .dgp-section__inner > .dgp-columns { height: auto; }
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city > .dgp-section__inner > .dgp-columns { min-height: clamp(480px, 38vw, 600px); }
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city .dgp-column:has(> .dgp-content-image) { position: relative; height: auto; min-height: 0; }
	body.page-id-13554 .dgp-city .dgp-content-image { position: absolute; inset: 0; width: 100%; height: 100%; }
	body.page-id-13554 .wp-block-post-content > .dgp-city:is(.dgp-city-availability,.dgp-city-transparency) .dgp-column:nth-child(3),
	body.page-id-13554 .wp-block-post-content > .dgp-city.dgp-city-engagement .dgp-column:nth-child(2) { padding: 56px clamp(32px, 4vw, 72px) 56px 10px; }
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city p { font-size: clamp(18px, 1.4vw, 20px); line-height: 1.65; }
}
@media (max-width: 991px) {
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city .dgp-content-image,
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city .dgp-content-image img { aspect-ratio: 3 / 2; max-height: 420px; }
}
@media (max-width: 767px) {
	.dgp-services-intro { margin-bottom: 28px; }
	.dgp-service-overview { grid-template-columns: 40px minmax(0, 1fr); gap: 16px; padding-block: 24px; }
	.dgp-service-overview .dgp-service-overview__icon { width: 40px; }
	.dgp-service-overview__icon img { width: 40px; height: 40px; }
	.dgp-service-overview .dgp-service-overview__title { margin-right: 0; font-size: 20px; }
	.dgp-service-overview .dgp-service-overview__summary { margin-right: 0; }
	.dgp-service-overview__details > summary { position: static; justify-content: space-between; padding: 8px 0; margin-top: 8px; }
	.dgp-service-overview__details > p { font-size: 16px; padding-left: 16px; margin-top: 12px; }
	body.page-id-13554 .dgp-quote-section { min-height: 200px; }
	body.page-id-13554 .dgp-map-section .dgp-section__link-prompt { bottom: 86px; }
}
@media print {
	.dgp-service-overview__details::details-content { content-visibility: visible; }
	.dgp-service-overview__details > p { display: block !important; }
}
