/* Shared reading rhythm. Photographic compositions retain their own heights. */
:root {
	--dgp-space-section: clamp(64px, 6.7vw, 96px);
	--dgp-space-section-compact: clamp(40px, 4.5vw, 64px);
	--dgp-space-paragraph: 24px;
	--dgp-leading-body: 1.65;
	--dgp-leading-lead: 1.55;
	--dgp-leading-label: 1.45;
}

body.page-id-13554 .wp-block-post-content > :is(.dgp-business-services-intro, .dgp-section:has(.dgp-team-grid), .dgp-section.has-service-cards),
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-team-intro {
	padding-block: var(--dgp-space-section);
}
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-business-services-cta {
	padding-block: var(--dgp-space-section-compact);
}
body.page-id-13554 .wp-block-post-content > .dgp-section:has(.dgp-team-grid) {
	height: auto;
	min-height: 0;
}
body.page-id-13554 .wp-block-post-content > #rekomendacje {
	padding-block: var(--dgp-space-section-compact);
}

/* Introductory prose: no trailing empty paragraph space inside a padded section. */
body.page-id-13554 .dgp-business-services-intro p,
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-team-intro p {
	line-height: var(--dgp-leading-lead);
	margin-block: 0 var(--dgp-space-paragraph);
}
body.page-id-13554 .dgp-business-services-intro p:last-child,
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-team-intro p:last-child {
	margin-bottom: 0;
}
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city p {
	margin-bottom: var(--dgp-space-paragraph);
}
body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-city p:last-child {
	margin-bottom: 0;
}

/* Service descriptions and billing use the same readable body scale. */
.dgp-service-card > :is(p, .wp-block-paragraph) {
	grid-column: 2;
	grid-row: 3;
	max-width: 42rem;
	margin: 0;
	font-size: 16px;
	line-height: var(--dgp-leading-body);
}
.dgp-service-card > .dgp-service-card__title {
	margin: 0 0 12px;
	padding-top: 0;
	line-height: 1.25;
}
.dgp-service-card > strong {
	margin: 0 0 8px;
	line-height: 1.5;
}
body.page-id-13554 #uslugi + .dgp-section > .dgp-section__inner > .dgp-columns > .dgp-column > .dgp-columns {
	margin-block: 0;
}
body.page-id-13554 #uslugi + .dgp-section > .dgp-section__inner > .dgp-columns > .dgp-column > .dgp-columns + .dgp-columns {
	margin-top: 64px;
}

/* Team cards have one row gap, not accumulated card padding and grid spacing. */
body.page-id-13554 .dgp-team-grid {
	row-gap: 48px;
	margin-block: 0;
}
body.page-id-13554 .dgp-team-grid .dgp-team-card {
	padding-bottom: 0;
}
.dgp-team-card .dgp-team-card__summary { padding-top: 24px; }
.dgp-team-card .dgp-team-card__position { margin-top: 8px; line-height: var(--dgp-leading-label); }
.dgp-team-profile__body { line-height: var(--dgp-leading-body); }
.dgp-team-profile__body p { margin-bottom: var(--dgp-space-paragraph); }
.dgp-team-profile__body p:last-child { margin-bottom: 0; }
.dgp-team-profile__identity .dgp-team-profile__position { margin-top: 8px; line-height: var(--dgp-leading-label); }
.dgp-team-profile__contact { gap: 8px; margin-top: 32px; }

.dgp-experience { padding-block: var(--dgp-space-section); }
.dgp-experience .dgp-experience__metrics { margin-block: 48px; }
.dgp-experience .dgp-experience__metric-label { min-height: 44px; }
.dgp-experience .dgp-experience__lead { line-height: var(--dgp-leading-lead); }
.dgp-experience .dgp-experience-case__context { margin-bottom: 24px; }
.dgp-experience .dgp-experience-case__title { margin-bottom: 24px; }
.dgp-experience .dgp-experience-sources { margin-top: 32px; }

/* Keep contact text away from the viewport edges; avoid positional paragraph nudges. */
body.page-id-13554 #kontaktt { display: grid; align-items: center; }
body.page-id-13554 #kontaktt > .dgp-section__inner > .dgp-columns { margin-block: 0; gap: 0; }
body.page-id-13554 #kontaktt > .dgp-section__inner > .dgp-columns > .dgp-column:is(:first-child, :nth-child(3)) {
	padding: var(--dgp-space-section-compact) clamp(24px, 4vw, 64px);
	top: 0;
}
body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > :nth-child(-n+9) { top: 0; }
body.page-id-13554 #kontaktt .dgp-column:first-child > p:nth-child(2) { margin-top: 32px; line-height: var(--dgp-leading-lead); }
body.page-id-13554 #kontaktt .dgp-column:nth-child(3) p { line-height: var(--dgp-leading-body); }
body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > p:has(+ a:is([href^="tel:"], [href^="mailto:"])) { margin-inline-end: .3em; }

/* Legal document rhythm is scoped to the shared layout in legal-pages.css. */

@media (max-width: 991px) {
	body.page-id-13554 #kontaktt { min-height: 0; height: auto; }
	body.page-id-13554 #kontaktt > .dgp-section__inner > .dgp-columns { flex-direction: column; }
	body.page-id-13554 #kontaktt > .dgp-section__inner > .dgp-columns > .dgp-column { flex-basis: auto !important; width: 100%; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) { background: #27282b; color: #f6f6f6; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) a { color: inherit; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > p:first-child { white-space: pre-line; margin-bottom: 24px; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > a[href^="https://goo.gl/maps"] { display: block; margin: 0; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > a[href^="https://goo.gl/maps"]:nth-of-type(2) { margin-bottom: 24px; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > p:has(+ a:is([href^="tel:"], [href^="mailto:"])) { display: inline; margin: 0 .3em 0 0; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > a:is([href^="tel:"], [href^="mailto:"]) { display: inline; margin: 0; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > a:is([href^="tel:"], [href^="mailto:"])::after { content: ""; display: block; height: 8px; }
	body.page-id-13554 #kontaktt .dgp-column:nth-child(3) > a[href^="mailto:"] + p { margin-top: 16px; }
}
@media (max-width: 767px) {
	body.page-id-13554 .dgp-business-services-intro p,
	body.page-id-13554 .wp-block-post-content > .dgp-section.dgp-team-intro p { line-height: var(--dgp-leading-body); }
	body.page-id-13554 #uslugi + .dgp-section > .dgp-section__inner > .dgp-columns > .dgp-column > .dgp-columns + .dgp-columns { margin-top: 48px; }
	.dgp-service-card > .dgp-service-card__icon { padding: 0 0 20px; }
	.dgp-service-card__icon img { max-height: 80px; width: auto; }
	.dgp-experience .dgp-experience__metrics { margin-block: 32px; }
	.dgp-experience .dgp-experience__metric-label { min-height: 4.05em; }
}
