/*
Theme Name: Zdalny Projekt
Description: A custom block theme scaffolded by Studio Code.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 0.10.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: zdalny-projekt
Tags: full-site-editing, block-patterns, block-styles, wide-blocks, accessibility-ready, style-variations
*/

.wp-site-blocks > * + * {
	margin-block-start: 0;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
/* Local Inter, variable weights 400-800; Polish extension loads alongside Latin. */
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url('assets/fonts/inter-latin-mobile.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url('assets/fonts/inter-latin-ext-mobile.woff2') format('woff2');unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}
body { margin: 0; font-family: 'Inter', system-ui, sans-serif; background: var(--wp--preset--color--zp-bg); color: var(--wp--preset--color--zp-text); }
a { text-decoration: none; color: var(--wp--preset--color--zp-brand-soft); }
a:hover { color: var(--wp--preset--color--zp-brand-soft); }

.zp-nav a { color: var(--wp--preset--color--zp-text); font-size: var(--wp--preset--font-size--body); font-weight: 500; text-decoration: none; }
.zp-nav a:hover { color: var(--wp--preset--color--zp-brand-soft) !important; }
.zp-nav a.active { color: var(--wp--preset--color--zp-brand-soft); font-weight: 600; }

.zp-footnav a { color: var(--wp--preset--color--zp-text); text-decoration: none; font-size: var(--wp--preset--font-size--body); }
.zp-footnav a:hover { color: var(--wp--preset--color--zp-brand-soft) !important; }

.zp-box:hover { border-color: var(--wp--preset--color--zp-border-hover); box-shadow: 0 8px 24px rgba(15,39,68,0.08); }
.zp-card:hover { border-color: var(--wp--preset--color--zp-border-hover); box-shadow: 0 8px 24px rgba(15,39,68,0.08); }
.zp-step-card:hover { border-color: var(--wp--preset--color--zp-border-hover); box-shadow: 0 8px 24px rgba(15,39,68,0.08); }
.zp-thumb:hover { border-color: var(--wp--preset--color--zp-border-hover); }

button:hover { filter: brightness(1.05); }
.zp-more:hover { color: var(--wp--preset--color--zp-brand); }

/* FAQ — wsparcie dla wp-block-details (Gutenberg) i .zp-faq (legacy) */
.wp-block-details,
.zp-faq details { border-bottom: 1px solid var(--wp--preset--color--zp-border); }

.wp-block-details summary,
.zp-faq summary {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--xxxl);
	padding: var(--wp--preset--spacing--xxl) 0;
	font-size: var(--wp--preset--font-size--body-lg);
	font-weight: 600;
	line-height: 1.35;
	color: var(--wp--preset--color--zp-text);
	cursor: pointer;
}
.wp-block-details summary::-webkit-details-marker,
.zp-faq summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after,
.zp-faq summary::after {
	content: "";
	flex: 0 0 auto;
	width: 10px;
	height: 10px;
	border-right: 2px solid var(--wp--preset--color--zp-brand-soft);
	border-bottom: 2px solid var(--wp--preset--color--zp-brand-soft);
	transform: rotate(45deg);
	margin-top: -4px;
	display: block;
}
.wp-block-details[open] summary::after,
.zp-faq details[open] summary::after {
	transform: rotate(-135deg);
	margin-top: 4px;
}
.wp-block-details .wp-block-details__summary,
.zp-faq .zp-faq-answer {
	padding: 0 var(--wp--preset--spacing--section-sm) var(--wp--preset--spacing--xxl) 0;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.55;
	color: var(--wp--preset--color--zp-muted);
	max-width: 62ch;
}

/* Form placeholder */
input::placeholder,
textarea::placeholder { color: var(--wp--preset--color--zp-muted); opacity: 0.7; }

/* Responsywność — mobile (jedno źródło prawdy dla całego motywu) */
@media (max-width: 768px) {
	/* Header: pionowe menu na mobile (wygrywa nad .zp-nav dzięki wyższej specyficzności) */
	nav.zp-nav {
		flex-direction: column !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		height: auto !important;
		padding: var(--wp--preset--spacing--md) var(--wp--preset--spacing--xxxl) !important;
		gap: var(--wp--preset--spacing--sm) !important;
	}
	nav.zp-nav ul {
		gap: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--xl) !important;
		align-items: center !important;
	}
	.zp-nav a { font-size: var(--wp--preset--font-size--small) !important; }

	/* Grid oparte o klasy zp-* (nowsze strony) */
	.zp-hero-grid { grid-template-columns: minmax(0,1fr) !important; }
	.zp-hero-image { display: none !important; }
	.zp-hero-heading span { white-space: normal !important; }
	.zp-hero-heading { font-size: var(--wp--preset--font-size--heading-hero-sm) !important; }
	.zp-grid-3 { grid-template-columns: minmax(0,1fr) !important; }
	.zp-grid-2 { grid-template-columns: minmax(0,1fr) !important; }
	.zp-section-title { font-size: var(--wp--preset--font-size--heading-sm) !important; }
	.zp-faq summary { font-size: var(--wp--preset--font-size--body) !important; }

	/* Grid oparte o inline style (starsze strony bez klas zp-*) */
	section[style*="grid-template-columns: minmax(0,1fr) minmax(0,1fr)"] {
		grid-template-columns: minmax(0,1fr) !important;
	}
	h1 span[style*="white-space: nowrap"],
	h1 span[style*="white-space:nowrap"] {
		white-space: normal !important;
	}
	h1 {
		font-size: var(--wp--preset--font-size--heading-hero-sm) !important;
	}
	div[style*="grid-template-columns: repeat(3, minmax(0,1fr))"] {
		grid-template-columns: minmax(0,1fr) !important;
	}
	div[style*="grid-template-columns: repeat(2, minmax(0,1fr))"] {
		grid-template-columns: minmax(0,1fr) !important;
	}
	footer div[style*="grid-template-columns: 2fr 1fr"] {
		grid-template-columns: minmax(0,1fr) !important;
	}

	/* Sekcja hero: padding mniejszy */
	section[style*="padding: 64px 0"] {
		padding: var(--wp--preset--spacing--section-xs) 0 !important;
	}
	section[style*="padding: 56px 0"] {
		padding: var(--wp--preset--spacing--huge) 0 !important;
	}
	section[style*="padding: 48px 0"] {
		padding: var(--wp--preset--spacing--xxxl) 0 !important;
	}
	section[style*="padding: 40px 0"] {
		padding: var(--wp--preset--spacing--xxl) 0 !important;
	}

	/* Obrazek hero po prawej — ukryj na wąskich */
	div[style*="width: 92%; margin-left: auto"] {
		display: none;
	}

	/* Tabela porównawcza (zp-compare) — węższe kolumny znaczników, więcej miejsca na etykietę */
	.zp-compare-row {
		grid-template-columns: minmax(0,1fr) 60px 60px !important;
	}
	.zp-compare-head span {
		font-size: var(--wp--preset--font-size--eyebrow) !important;
	}
}

@media (max-width: 480px) {
	h1 {
		font-size: var(--wp--preset--font-size--heading-xxl) !important;
	}
	h2 {
		font-size: var(--wp--preset--font-size--heading-sm) !important;
	}
}

/* Proof directory: reusable topic navigation and editorial material previews. */
.zp-proof-hub { background: var(--wp--preset--color--zp-white); font-size: var(--wp--preset--font-size--body-lg); line-height: 1.6; }
.zp-proof-wrap { max-width: var(--wp--style--global--wide-size); margin-inline: auto; padding-inline: var(--wp--preset--spacing--xxxl); }
.zp-proof-hub h1,.zp-proof-hub h2,.zp-proof-hub h3,.zp-proof-hub p,.zp-proof-hub figure { margin: 0; }
.zp-proof-hub h1 { font-size: var(--wp--preset--font-size--display-sm) !important; font-weight: 800; letter-spacing: -.035em; line-height: 1.12; margin-block: var(--wp--preset--spacing--xxl); }
.zp-proof-hub h1 span { color: var(--wp--preset--color--zp-brand-soft); }
.zp-proof-hub h2 { font-size: var(--wp--preset--font-size--subheading) !important; font-weight: 700; letter-spacing: -.025em; line-height: 1.2; }
.zp-proof-hub h3 { font-size: var(--wp--preset--font-size--heading-sm); line-height: 1.35; letter-spacing: -.02em; }
.zp-proof-hub p { color: var(--wp--preset--color--zp-muted); }
.zp-proof-eyebrow { display: block; color: var(--wp--preset--color--zp-brand); font-size: var(--wp--preset--font-size--caption); font-weight: 700; letter-spacing: .07em; text-transform: uppercase; margin-bottom: var(--wp--preset--spacing--md); }
.zp-proof-intro { padding-block: var(--wp--preset--spacing--section-xs); background: var(--wp--preset--color--zp-bg); border-block: 1px solid var(--wp--preset--color--zp-border); }
.zp-proof-intro-top { display: flex; justify-content: space-between; gap: var(--wp--preset--spacing--md); flex-wrap: wrap; align-items: center; }
.zp-proof-intro-top .zp-proof-eyebrow { margin: 0; }
.zp-proof-lead { max-width: 64ch; font-size: var(--wp--preset--font-size--body-xl); }
.zp-proof-directory-title { margin-top: var(--wp--preset--spacing--section-xs); margin-bottom: var(--wp--preset--spacing--md); display: flex; align-items: center; justify-content: space-between; gap: var(--wp--preset--spacing--md); }
.zp-proof-directory-title h2 { font-size: var(--wp--preset--font-size--heading-sm) !important; }
.zp-proof-directory-title > span { display: none; color: var(--wp--preset--color--zp-muted); font-size: var(--wp--preset--font-size--small); }
.zp-proof-directory { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--wp--preset--spacing--xs); }
.zp-proof-topic { display: flex; gap: var(--wp--preset--spacing--md); align-items: center; padding: var(--wp--preset--spacing--lg); background: var(--wp--preset--color--zp-white); border: 1px solid var(--wp--preset--color--zp-border); border-radius: var(--wp--custom--radius--md); color: var(--wp--preset--color--zp-text); }
.zp-proof-topic:hover { background: var(--wp--preset--color--zp-badge-bg); border-color: var(--wp--preset--color--zp-brand-soft); color: var(--wp--preset--color--zp-text); }
.zp-proof-topic strong,.zp-proof-topic small { display: block; }
.zp-proof-topic strong { font-size: var(--wp--preset--font-size--body-lg); line-height: 1.35; }
.zp-proof-topic small { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--zp-muted); margin-top: var(--wp--preset--spacing--micro); }
.zp-proof-icon { color: var(--wp--preset--color--zp-brand); display: flex; flex: 0 0 var(--wp--preset--spacing--xxxl); }
.zp-proof-icon svg { width: var(--wp--preset--spacing--xxxl); height: var(--wp--preset--spacing--xxxl); }
.zp-proof-arrow { margin-left: auto; color: var(--wp--preset--color--zp-brand); }
.zp-proof-link { display: inline-flex; align-items: center; gap: var(--wp--preset--spacing--xs); color: var(--wp--preset--color--zp-brand); font-weight: 600; font-size: var(--wp--preset--font-size--body); padding-block: var(--wp--preset--spacing--xs); text-underline-offset: .2em; }
.zp-proof-link:hover { text-decoration: underline; color: var(--wp--preset--color--zp-brand); }
.zp-proof-hub a:focus-visible { outline: 2px solid var(--wp--preset--color--zp-brand); outline-offset: 4px; }
.zp-proof-section { padding-block: var(--wp--preset--spacing--section-xs); }
.zp-proof-tinted { background: var(--wp--preset--color--zp-bg); }
.zp-proof-section-head { display: grid; gap: var(--wp--preset--spacing--md); margin-bottom: var(--wp--preset--spacing--xxxl); }
.zp-proof-section-head p { max-width: 46ch; }
.zp-proof-pair,.zp-proof-split { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--wp--preset--spacing--xxxl); }
.zp-proof-media { position: relative; display: block; overflow: hidden; border-radius: var(--wp--custom--radius--lg); background: var(--wp--preset--color--zp-muted-bg); }
.zp-proof-media img { display: block; width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; }
.zp-proof-caption { position: absolute; bottom: var(--wp--preset--spacing--md); left: var(--wp--preset--spacing--md); right: auto; max-width: calc(100% - var(--wp--preset--spacing--xxxl)); border-radius: var(--wp--custom--radius--xxs); background: var(--wp--preset--color--zp-white); color: var(--wp--preset--color--zp-text); padding: var(--wp--preset--spacing--micro) var(--wp--preset--spacing--xs); font-size: var(--wp--preset--font-size--caption); }
.zp-proof-feature-body { padding-top: var(--wp--preset--spacing--xxl); }
.zp-proof-feature-body .zp-proof-eyebrow { margin-bottom: var(--wp--preset--spacing--xs); }
.zp-proof-feature-body p { margin-block: var(--wp--preset--spacing--sm); }
.zp-proof-copy { min-width: 0; }
.zp-proof-copy > p { margin-top: var(--wp--preset--spacing--xl); }
.zp-proof-copy > h3 { margin-top: var(--wp--preset--spacing--xxl); }
.zp-proof-facts { padding: 0; margin: var(--wp--preset--spacing--xxl) 0 var(--wp--preset--spacing--xs); list-style: none; }
.zp-proof-facts li { padding-block: var(--wp--preset--spacing--xs); border-top: 1px solid var(--wp--preset--color--zp-border); font-size: var(--wp--preset--font-size--body); }
.zp-proof-copy .zp-proof-note { font-size: var(--wp--preset--font-size--small); margin-top: var(--wp--preset--spacing--micro); }
.zp-proof-steps { list-style: none; counter-reset: proof-step; padding: 0; margin: var(--wp--preset--spacing--xxl) 0 var(--wp--preset--spacing--xs); }
.zp-proof-steps li { counter-increment: proof-step; position: relative; padding: 0 0 var(--wp--preset--spacing--xl) var(--wp--preset--spacing--section-sm); }
.zp-proof-steps li::before { content: counter(proof-step); position: absolute; left: 0; top: 0; width: var(--wp--preset--spacing--huge); height: var(--wp--preset--spacing--huge); text-align: center; line-height: var(--wp--preset--spacing--huge); background: var(--wp--preset--color--zp-bg); color: var(--wp--preset--color--zp-brand); border-radius: var(--wp--custom--radius--round); font-size: var(--wp--preset--font-size--small); font-weight: 700; }
.zp-proof-steps strong,.zp-proof-steps span { display: block; }
.zp-proof-steps span { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--zp-muted); }
.zp-proof-person { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--wp--preset--spacing--xxxl); align-items: center; }
.zp-proof-portrait { display: block; width: min(55%, 14rem); height: auto; border-radius: var(--wp--custom--radius--lg); }
.zp-proof-opinions { border-top: 1px solid var(--wp--preset--color--zp-border); padding-top: var(--wp--preset--spacing--xxxl); }
.zp-proof-opinions p { margin-block: var(--wp--preset--spacing--md); font-size: var(--wp--preset--font-size--body); }
.zp-proof-status { display: table; color: var(--wp--preset--color--zp-muted); border: 1px solid var(--wp--preset--color--zp-border); border-radius: var(--wp--custom--radius--pill); padding: var(--wp--preset--spacing--micro) var(--wp--preset--spacing--sm); font-size: var(--wp--preset--font-size--caption); margin-bottom: var(--wp--preset--spacing--xs); }
.zp-proof-next { background: var(--wp--preset--color--zp-brand); color: var(--wp--preset--color--zp-white); padding: var(--wp--preset--spacing--xxxl); border-radius: var(--wp--custom--radius--lg); display: flex; flex-direction: column; gap: var(--wp--preset--spacing--xxl); }
.zp-proof-next .zp-proof-eyebrow,.zp-proof-next p { color: var(--wp--preset--color--zp-on-brand-muted); }
.zp-proof-next p { margin-top: var(--wp--preset--spacing--md); max-width: 60ch; }
.zp-proof-button { display: inline-flex; justify-content: center; align-items: center; gap: var(--wp--preset--spacing--md); padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--xxl); border-radius: var(--wp--custom--radius--pill); background: var(--wp--preset--color--zp-white); color: var(--wp--preset--color--zp-brand); font-size: var(--wp--preset--font-size--body); font-weight: 700; line-height: 1.4; text-align: center; flex-shrink: 0; }
.zp-proof-button:hover { color: var(--wp--preset--color--zp-brand); background: var(--wp--preset--color--zp-badge-bg); }
.zp-proof-next a:focus-visible { outline-color: var(--wp--preset--color--zp-white); }
@media (min-width: 600px) { .zp-proof-directory { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (min-width: 900px) {
 .zp-proof-hub h1 { font-size: var(--wp--preset--font-size--hero) !important; }
 .zp-proof-intro { padding-block: var(--wp--preset--spacing--section-sm); }
 .zp-proof-directory { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .zp-proof-topic { padding: var(--wp--preset--spacing--xxl); }
 .zp-proof-directory-title > span { display: block; }
 .zp-proof-section { padding-block: var(--wp--preset--spacing--section-md); }
 .zp-proof-section-head { grid-template-columns: 1.2fr 1fr; align-items: end; gap: var(--wp--preset--spacing--section-xl); }
 .zp-proof-pair { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .zp-proof-split { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--wp--preset--spacing--section-xl); align-items: center; }
 .zp-proof-person { grid-template-columns: .55fr 1.25fr 1fr; gap: var(--wp--preset--spacing--section-xs); }
 .zp-proof-portrait { width: 100%; }
 .zp-proof-opinions { border-top: 0; border-left: 1px solid var(--wp--preset--color--zp-border); padding-top: 0; padding-left: var(--wp--preset--spacing--section-xs); }
 .zp-proof-next { flex-direction: row; align-items: center; justify-content: space-between; padding: var(--wp--preset--spacing--section-sm); }
}
@media (min-width: 600px) and (max-width: 899px) {
 .zp-proof-pair { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .zp-proof-split > .zp-proof-media img { aspect-ratio: 2/1; }
}
@media (max-width: 599px) { .zp-proof-hub h1 br { display: none; } }

/* Architectural presentation: image-led opening, project previews and service scope. */
.zp-architecture-hero { position: relative; overflow: hidden; background: var(--wp--preset--color--zp-text); color: var(--wp--preset--color--zp-white); }
.zp-architecture-hero-image { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; object-position: 75% center; }
.zp-architecture-hero-copy { position: relative; padding-block: var(--wp--preset--spacing--xxxl); }
.zp-architecture-hero .zp-proof-eyebrow { color: var(--wp--preset--color--zp-on-brand-muted); }
.zp-architecture-hero h1 { margin: var(--wp--preset--spacing--md) 0 var(--wp--preset--spacing--xl); font-weight: 700; }
.zp-architecture-hero h1 br { display: block; }
.zp-architecture-hero p { color: var(--wp--preset--color--zp-on-brand-muted); max-width: 43ch; }
.zp-architecture-actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--wp--preset--spacing--md) var(--wp--preset--spacing--xxxl); margin-top: var(--wp--preset--spacing--xxl); }
.zp-architecture-actions .zp-proof-button { border-radius: var(--wp--custom--radius--xs); }
.zp-architecture-actions .zp-proof-link { color: var(--wp--preset--color--zp-white); }
.zp-architecture-hero a:focus-visible { outline-color: var(--wp--preset--color--zp-white); }
.zp-architecture-hero-caption { position: absolute; top: var(--wp--preset--spacing--md); right: var(--wp--preset--spacing--md); font-size: var(--wp--preset--font-size--caption); background: var(--wp--preset--color--zp-white); color: var(--wp--preset--color--zp-text); padding: var(--wp--preset--spacing--micro) var(--wp--preset--spacing--xs); border-radius: var(--wp--custom--radius--xxs); }
.zp-proof-index { padding-block: var(--wp--preset--spacing--xxl); background: var(--wp--preset--color--zp-bg); border-bottom: 1px solid var(--wp--preset--color--zp-border); }
.zp-proof-index .zp-proof-directory-title { margin-top: 0; }
.zp-proof-index .zp-proof-directory-title h2 { font-size: var(--wp--preset--font-size--body-lg) !important; }
.zp-proof-index .zp-proof-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
.zp-proof-index .zp-proof-topic { padding: var(--wp--preset--spacing--md); min-height: var(--wp--preset--spacing--section-lg); border-radius: var(--wp--custom--radius--xs); gap: var(--wp--preset--spacing--xs); }
.zp-proof-index .zp-proof-topic strong { font-size: var(--wp--preset--font-size--small); font-weight: 600; }
.zp-proof-index .zp-proof-topic small { font-size: var(--wp--preset--font-size--caption); margin-top: 0; }
.zp-project-gallery { scroll-margin-top: var(--wp--preset--spacing--xxl); }
.zp-project-heading { display: flex; flex-direction: column; align-items: flex-start; gap: var(--wp--preset--spacing--md); margin-bottom: var(--wp--preset--spacing--xxl); }
.zp-project-heading p { font-size: var(--wp--preset--font-size--body); max-width: 45ch; }
.zp-project-description { max-width: 80ch; margin-bottom: var(--wp--preset--spacing--xxxl) !important; }
.zp-project-preview { min-width: 0; }
.zp-project-preview > a { display: block; overflow: hidden; border-radius: var(--wp--custom--radius--xs); background: var(--wp--preset--color--zp-bg); }
.zp-project-preview img { display: block; width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; transition: transform .25s ease; }
.zp-project-preview > a:hover img { transform: scale(1.025); }
.zp-project-meta { display: flex; justify-content: space-between; gap: var(--wp--preset--spacing--xs); flex-wrap: wrap; margin-block: var(--wp--preset--spacing--md) var(--wp--preset--spacing--xs); font-size: var(--wp--preset--font-size--caption); color: var(--wp--preset--color--zp-muted); }
.zp-project-details { display: flex; align-items: center; flex-wrap: wrap; gap: 0 var(--wp--preset--spacing--md); border-top: 1px solid var(--wp--preset--color--zp-border); margin-top: var(--wp--preset--spacing--md); padding-top: var(--wp--preset--spacing--micro); font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--zp-muted); }
.zp-project-details .zp-proof-link { margin-left: auto; }
.zp-project-disclosure { margin-top: var(--wp--preset--spacing--xl) !important; font-size: var(--wp--preset--font-size--caption); }
.zp-service-directory { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--wp--preset--spacing--xxl); }
.zp-service-directory article { border-top: 1px solid var(--wp--preset--color--zp-border-hover); padding-top: var(--wp--preset--spacing--xxl); }
.zp-service-directory article .zp-proof-eyebrow { font-size: var(--wp--preset--font-size--label); }
.zp-service-directory article p { margin-block: var(--wp--preset--spacing--md) var(--wp--preset--spacing--xs); font-size: var(--wp--preset--font-size--body); }
@media (min-width: 600px) { .zp-proof-index .zp-proof-directory { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (min-width: 900px) {
 .zp-architecture-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-position: center; }
 .zp-architecture-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, color-mix(in srgb,var(--wp--preset--color--zp-text) 92%,transparent), color-mix(in srgb,var(--wp--preset--color--zp-text) 68%,transparent) 35%,transparent 73%); pointer-events: none; }
 .zp-architecture-hero > .zp-proof-wrap { position: relative; z-index: 1; }
 .zp-architecture-hero-copy { max-width: 47%; padding-block: var(--wp--preset--spacing--section-xl); }
 .zp-architecture-hero-caption { top: auto; bottom: var(--wp--preset--spacing--xl); right: var(--wp--preset--spacing--xxxl); z-index: 1; }
 .zp-proof-index .zp-proof-directory { grid-template-columns: repeat(6,minmax(0,1fr)); }
 .zp-proof-index .zp-proof-topic { padding: var(--wp--preset--spacing--md); }
 .zp-project-heading { flex-direction: row; align-items: end; justify-content: space-between; }
 .zp-service-directory { grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--wp--preset--spacing--section-xs); }
}
@media (prefers-reduced-motion: reduce) { .zp-project-preview img { transition: none; } }

/* Descriptive topic links and answers about remote collaboration. */
.zp-topic-overview .zp-proof-topic { align-items: flex-start; }
.zp-topic-overview .zp-proof-topic small { margin-top: var(--wp--preset--spacing--tiny); line-height: 1.45; }
.zp-topic-overview .zp-proof-topic strong { font-size: var(--wp--preset--font-size--body); }
.zp-proof-index.zp-topic-overview .zp-proof-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
.zp-cooperation-answers { margin: var(--wp--preset--spacing--xxl) 0 var(--wp--preset--spacing--xs); }
.zp-cooperation-answers > div { padding-block: var(--wp--preset--spacing--md); border-top: 1px solid var(--wp--preset--color--zp-border); }
.zp-cooperation-answers dt { font-weight: 700; font-size: var(--wp--preset--font-size--body-lg); }
.zp-cooperation-answers dd { margin: var(--wp--preset--spacing--micro) 0 0; color: var(--wp--preset--color--zp-muted); font-size: var(--wp--preset--font-size--body); line-height: 1.55; }
@media (min-width: 900px) { .zp-proof-index.zp-topic-overview .zp-proof-directory { grid-template-columns: repeat(3,minmax(0,1fr)); } }

/* Remote collaboration: consultation preview, demonstrative decision sheet and responsibility map. */
.zp-consult-preview { display: flex; gap: var(--wp--preset--spacing--md); align-items: center; background: var(--wp--preset--color--zp-white); color: var(--wp--preset--color--zp-text); padding: var(--wp--preset--spacing--md); margin: 0 var(--wp--preset--spacing--xxxl) var(--wp--preset--spacing--xxxl); border-radius: var(--wp--custom--radius--sm); position: relative; z-index: 2; }
.zp-consult-preview:hover { color: var(--wp--preset--color--zp-brand); }
.zp-consult-preview img { width: 28%; aspect-ratio: 1; object-fit: cover; height: auto; border-radius: var(--wp--custom--radius--xxs); }
.zp-consult-preview strong,.zp-consult-preview small,.zp-consult-preview > span > span { display: block; }
.zp-consult-preview strong { font-size: var(--wp--preset--font-size--small); line-height: 1.4; margin-block: var(--wp--preset--spacing--micro); }
.zp-consult-preview small { font-size: var(--wp--preset--font-size--caption); color: var(--wp--preset--color--zp-muted); line-height: 1.35; }
.zp-consult-preview > span > span { font-size: var(--wp--preset--font-size--caption); color: var(--wp--preset--color--zp-brand); }
.zp-proof-hub .zp-project-question { font-size: var(--wp--preset--font-size--small); margin-top: var(--wp--preset--spacing--sm); }
.zp-plan-legend { display: flex; flex-wrap: wrap; gap: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl); padding-block: var(--wp--preset--spacing--md); font-size: var(--wp--preset--font-size--caption); color: var(--wp--preset--color--zp-brand); border-bottom: 1px solid var(--wp--preset--color--zp-border); }
.zp-plan-legend span::before { content: '·'; margin-right: var(--wp--preset--spacing--tiny); }
.zp-decision-sheet { display: block; border: 1px solid var(--wp--preset--color--zp-border); border-radius: var(--wp--custom--radius--lg); padding: var(--wp--preset--spacing--xxl); background: var(--wp--preset--color--zp-bg); color: var(--wp--preset--color--zp-text); }
.zp-decision-sheet:hover { color: var(--wp--preset--color--zp-text); border-color: var(--wp--preset--color--zp-brand); }
.zp-sheet-heading { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--wp--preset--spacing--xs); padding-bottom: var(--wp--preset--spacing--md); border-bottom: 1px solid var(--wp--preset--color--zp-border); margin-bottom: var(--wp--preset--spacing--xl); font-size: var(--wp--preset--font-size--caption); color: var(--wp--preset--color--zp-muted); }
.zp-decision-sheet .zp-proof-eyebrow { font-size: var(--wp--preset--font-size--label); }
.zp-proof-hub .zp-sheet-question { margin-top: var(--wp--preset--spacing--xs); font-size: var(--wp--preset--font-size--small); }
.zp-variant-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--wp--preset--spacing--xs); margin-block: var(--wp--preset--spacing--xl); }
.zp-variant-pair > div { background: var(--wp--preset--color--zp-white); padding: var(--wp--preset--spacing--md); border-top: 2px solid var(--wp--preset--color--zp-brand); }
.zp-variant-pair span,.zp-variant-pair strong,.zp-variant-pair small { display: block; }
.zp-variant-pair span { color: var(--wp--preset--color--zp-brand); font-size: var(--wp--preset--font-size--caption); }
.zp-variant-pair strong { font-size: var(--wp--preset--font-size--body); margin-block: var(--wp--preset--spacing--tiny); line-height: 1.35; }
.zp-variant-pair small { color: var(--wp--preset--color--zp-muted); font-size: var(--wp--preset--font-size--caption); line-height: 1.4; }
.zp-sheet-outcome { border-left: 2px solid var(--wp--preset--color--zp-brand); padding-left: var(--wp--preset--spacing--md); font-size: var(--wp--preset--font-size--small); }
.zp-sheet-outcome p { font-size: var(--wp--preset--font-size--small); }
.zp-decision-sheet > .zp-proof-link { margin-top: var(--wp--preset--spacing--xs); }
.zp-meeting-note { padding: var(--wp--preset--spacing--xl); background: var(--wp--preset--color--zp-bg); border-left: 2px solid var(--wp--preset--color--zp-brand); margin: var(--wp--preset--spacing--md) 0 0; }
.zp-meeting-note .zp-proof-eyebrow { font-size: var(--wp--preset--font-size--label); margin-bottom: var(--wp--preset--spacing--xs); }
.zp-meeting-note strong { display: block; font-size: var(--wp--preset--font-size--body); }
.zp-meeting-note p { font-size: var(--wp--preset--font-size--small); margin-top: var(--wp--preset--spacing--tiny); }
.zp-responsibility-map { border: 1px solid var(--wp--preset--color--zp-border); border-radius: var(--wp--custom--radius--lg); overflow: hidden; }
.zp-responsibility-side { padding: var(--wp--preset--spacing--xxl); }
.zp-responsibility-side:last-child { background: var(--wp--preset--color--zp-bg); }
.zp-location-label { display: block; color: var(--wp--preset--color--zp-brand); font-size: var(--wp--preset--font-size--small); margin-bottom: var(--wp--preset--spacing--xs); }
.zp-responsibility-side ul { padding-left: var(--wp--preset--spacing--xl); margin: var(--wp--preset--spacing--md) 0 0; font-size: var(--wp--preset--font-size--body); color: var(--wp--preset--color--zp-muted); }
.zp-responsibility-side li + li { margin-top: var(--wp--preset--spacing--tiny); }
.zp-connection-label { display: flex; align-items: center; justify-content: center; gap: var(--wp--preset--spacing--md); padding: var(--wp--preset--spacing--xs); border-block: 1px solid var(--wp--preset--color--zp-border); color: var(--wp--preset--color--zp-brand); font-size: var(--wp--preset--font-size--caption); }
.zp-scope-note { margin-top: var(--wp--preset--spacing--xxl); font-size: var(--wp--preset--font-size--small); }
.zp-scope-note strong { color: var(--wp--preset--color--zp-text); }
@media (min-width: 900px) { .zp-consult-preview { position: absolute; right: var(--wp--preset--spacing--xxxl); bottom: var(--wp--preset--spacing--section-sm); width: 22rem; margin: 0; } .zp-remote-hero .zp-architecture-hero-caption { bottom: var(--wp--preset--spacing--xs); } }

/* Shared typography roles. Values and responsive sizes are owned by theme.json. */
html body .zp-t-hero {
 font-size: var(--wp--custom--type--roles--hero--size) !important;
 font-weight: var(--wp--custom--type--roles--hero--weight) !important;
 line-height: var(--wp--custom--type--roles--hero--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--hero--letter-spacing) !important;
}
html body .zp-t-h2 {
 font-size: var(--wp--custom--type--roles--h-2--size) !important;
 font-weight: var(--wp--custom--type--roles--h-2--weight) !important;
 line-height: var(--wp--custom--type--roles--h-2--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--h-2--letter-spacing) !important;
}
html body .zp-t-h3 {
 font-size: var(--wp--custom--type--roles--h-3--size) !important;
 font-weight: var(--wp--custom--type--roles--h-3--weight) !important;
 line-height: var(--wp--custom--type--roles--h-3--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--h-3--letter-spacing) !important;
}
html body .zp-t-body {
 font-size: var(--wp--custom--type--roles--body--size) !important;
 font-weight: var(--wp--custom--type--roles--body--weight) !important;
 line-height: var(--wp--custom--type--roles--body--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--body--letter-spacing) !important;
}
html body .zp-t-body-strong {
 font-size: var(--wp--custom--type--roles--body-strong--size) !important;
 font-weight: var(--wp--custom--type--roles--body-strong--weight) !important;
 line-height: var(--wp--custom--type--roles--body-strong--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--body-strong--letter-spacing) !important;
}
html body .zp-t-small {
 font-size: var(--wp--custom--type--roles--small--size) !important;
 font-weight: var(--wp--custom--type--roles--small--weight) !important;
 line-height: var(--wp--custom--type--roles--small--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--small--letter-spacing) !important;
}
html body .zp-t-eyebrow {
 font-size: var(--wp--custom--type--roles--eyebrow--size) !important;
 font-weight: var(--wp--custom--type--roles--eyebrow--weight) !important;
 line-height: var(--wp--custom--type--roles--eyebrow--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--eyebrow--letter-spacing) !important;
 text-transform: uppercase;
}
html body .zp-t-button {
 font-size: var(--wp--custom--type--roles--button--size) !important;
 font-weight: var(--wp--custom--type--roles--button--weight) !important;
 line-height: var(--wp--custom--type--roles--button--line-height) !important;
 letter-spacing: var(--wp--custom--type--roles--button--letter-spacing) !important;
}
@media (max-width: 768px) {
 html body .zp-t-hero { font-size: var(--wp--custom--type--roles--hero--tablet-size) !important; }
 html body .zp-t-h2 { font-size: var(--wp--custom--type--roles--h-2--tablet-size) !important; }
}
@media (max-width: 480px) {
 html body .zp-t-hero { font-size: var(--wp--custom--type--roles--hero--mobile-size) !important; }
 html body .zp-t-h2 { font-size: var(--wp--custom--type--roles--h-2--mobile-size) !important; }
 html body .zp-t-h3 { font-size: var(--wp--custom--type--roles--h-3--mobile-size) !important; }
}

/* Shared action shape; inverse variant for dark surfaces. */
.zp-proof-hub .zp-action-primary { border-radius: var(--wp--custom--radius--pill); padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl); background: var(--wp--preset--color--zp-brand); color: var(--wp--preset--color--zp-white); }
.zp-architecture-actions .zp-action-primary,.zp-action-panel .zp-action-primary { background: var(--wp--preset--color--zp-white); color: var(--wp--preset--color--zp-brand); }
.zp-layout-compact .zp-proof-section { padding-block: var(--wp--preset--spacing--xxxl); }
.zp-layout-compact .zp-proof-section-head,.zp-layout-compact .zp-project-heading { margin-bottom: var(--wp--preset--spacing--xl); }
.zp-layout-compact .zp-proof-pair { gap: var(--wp--preset--spacing--xxl); }
.zp-layout-compact .zp-service-directory { gap: var(--wp--preset--spacing--xl); }
.zp-layout-compact .zp-proof-link { padding-block: var(--wp--preset--spacing--xs); }
@media (min-width: 900px) { .zp-layout-compact .zp-proof-section { padding-block: var(--wp--preset--spacing--section-xs); } }
@media (max-width: 899px) {
 .zp-layout-compact .zp-proof-media img,.zp-layout-compact .zp-project-preview img { aspect-ratio: 2/1; }
 .zp-layout-compact .zp-consult-preview { max-width: 28rem; margin-bottom: var(--wp--preset--spacing--xl); }
 .zp-layout-compact .zp-proof-person { gap: var(--wp--preset--spacing--xl); }
 .zp-layout-compact .zp-proof-portrait { width: 40%; max-width: 10rem; }
 .zp-layout-compact .zp-proof-feature-body { padding-top: var(--wp--preset--spacing--md); }
 .zp-layout-compact .zp-proof-copy > p { margin-top: var(--wp--preset--spacing--md); }
 .zp-layout-compact .zp-proof-opinions { padding-top: var(--wp--preset--spacing--xl); }
 .zp-layout-compact .zp-responsibility-side { padding: var(--wp--preset--spacing--xl); }
 .zp-layout-compact .zp-proof-next { padding: var(--wp--preset--spacing--xxl); }
 .zp-layout-compact .zp-architecture-hero-copy { padding-block: var(--wp--preset--spacing--xxl); }
}
/* Shared navigation and compact information pages. Values follow theme.json. */
.zp-site-navigation { max-width:var(--wp--style--global--wide-size); margin:auto; padding:var(--wp--preset--spacing--xl) var(--wp--preset--spacing--xxxl); display:flex; align-items:center; justify-content:space-between; gap:var(--wp--preset--spacing--xl); flex-wrap:wrap; }
.zp-site-menu { display:flex; align-items:center; flex-wrap:wrap; gap:var(--wp--preset--spacing--xl); list-style:none; padding:0; margin:0; }
.zp-site-menu a { text-decoration:none; }
.zp-site-menu details { position:relative; }
.zp-site-menu summary { cursor:pointer; }
.zp-site-menu details ul { position:absolute; z-index:50; background:var(--wp--preset--color--zp-white); padding:var(--wp--preset--spacing--xl); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--sm); list-style:none; min-width:12rem; margin:var(--wp--preset--spacing--xs) 0 0; }
.zp-site-menu details li+li { margin-top:var(--wp--preset--spacing--md); }
.zp-site-cta { padding:var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl); border-radius:var(--wp--custom--radius--pill); background:var(--wp--preset--color--zp-brand); color:var(--wp--preset--color--zp-white); text-decoration:none; white-space:nowrap; }
.zp-tree-footer { background:var(--wp--preset--color--zp-bg); color:var(--wp--preset--color--zp-text); padding:var(--wp--preset--spacing--xxxl) 0; }
.zp-tree-footer nav { display:flex; flex-wrap:wrap; gap:var(--wp--preset--spacing--md) var(--wp--preset--spacing--xxxl); font-size:var(--wp--preset--font-size--small); padding:var(--wp--preset--spacing--xl) 0; border-block:1px solid var(--wp--preset--color--zp-border); }
.zp-content-intro { background:var(--wp--preset--color--zp-bg); padding:var(--wp--preset--spacing--xxxl) 0; }
.zp-content-intro h1 { margin:var(--wp--preset--spacing--xxxl) 0 var(--wp--preset--spacing--xl); max-width:22ch; }
.zp-content-intro p { max-width:65ch; }
.zp-content-page h2 { margin:0 0 var(--wp--preset--spacing--xxl); }
.zp-content-page h3 { margin:0 0 var(--wp--preset--spacing--xs); }
.zp-content-page p { margin:0 0 var(--wp--preset--spacing--xl); }
.zp-content-grid { display:grid; gap:var(--wp--preset--spacing--xxxl); }
.zp-content-media { margin:0; }
.zp-content-media img { width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:var(--wp--custom--radius--sm); }
.zp-content-media figcaption { color:var(--wp--preset--color--zp-muted); margin:var(--wp--preset--spacing--xs) 0 var(--wp--preset--spacing--xl); }
.zp-founder-photo { width:100%; max-width:14rem; height:auto; border-radius:var(--wp--custom--radius--sm); }
.zp-related { display:flex; flex-wrap:wrap; gap:var(--wp--preset--spacing--xl) var(--wp--preset--spacing--xxxl); }
.zp-faq details { padding:var(--wp--preset--spacing--xl) 0; border-bottom:1px solid var(--wp--preset--color--zp-border); }
.zp-faq summary { cursor:pointer; }
.zp-faq p { margin:var(--wp--preset--spacing--md) 0 0; max-width:75ch; }
@media(min-width:900px) { .zp-content-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:768px) { .zp-site-navigation { gap:var(--wp--preset--spacing--md); } .zp-site-menu { order:3; width:100%; gap:var(--wp--preset--spacing--md); } .zp-site-menu details ul { right:0; } .zp-content-media img { aspect-ratio:2/1; } }
@media(max-width:360px) { .zp-site-navigation { padding-inline:var(--wp--preset--spacing--xl); } }
/* Guided information layout: the same visual vocabulary as the offer. */
.zp-header-surface { background:var(--wp--preset--color--zp-white); }
.zp-brand-image { display:block; width:var(--wp--custom--media--brand-width); max-width:100%; height:auto; }
/* Top navigation remains visible on conversion pages at the user's request. */
.zp-guided-home { background:var(--wp--preset--color--zp-white); }
.zp-guided-hero { padding-block:var(--wp--preset--spacing--xxxl); }
.zp-guided-hero-grid,.zp-guided-row { display:grid; gap:var(--wp--preset--spacing--xxxl); align-items:center; }
.zp-guided-intro h1 { margin:var(--wp--preset--spacing--md) 0 var(--wp--preset--spacing--xl); }
.zp-guided-intro>p.zp-t-body { max-width:48ch; margin:0 0 var(--wp--preset--spacing--xxl); }
.zp-guided-home .zp-t-eyebrow { color:var(--wp--preset--color--zp-brand-soft); margin:0 0 var(--wp--preset--spacing--md); }
.zp-guided-hero-art { margin:0; min-width:0; }
.zp-guided-hero-art img { display:block; width:100%; height:auto; }
.zp-guided-home figcaption { margin-top:var(--wp--preset--spacing--xs); color:var(--wp--preset--color--zp-muted); }
.zp-guided-hero-art figcaption { text-align:center; }
.zp-guided-section { padding-block:var(--wp--preset--spacing--xxxl); scroll-margin-top:var(--wp--preset--spacing--xl); }
.zp-guided-tinted { background:var(--wp--preset--color--zp-bg); }
.zp-guided-copy h2 { margin:0 0 var(--wp--preset--spacing--xl); }
.zp-guided-copy p { margin:0 0 var(--wp--preset--spacing--xl); max-width:51ch; }
.zp-guided-copy .zp-t-small { color:var(--wp--preset--color--zp-muted); }
.zp-guided-photo { margin:0; }
.zp-guided-photo img { display:block; width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; border-radius:var(--wp--custom--radius--lg); }
.zp-guided-resources { border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--lg); overflow:hidden; }
.zp-guided-resources a { display:flex; align-items:center; justify-content:space-between; gap:var(--wp--preset--spacing--md); text-decoration:none; color:var(--wp--preset--color--zp-text); padding:var(--wp--preset--spacing--xxl); }
.zp-guided-resources a+a { border-top:1px solid var(--wp--preset--color--zp-border); }
.zp-guided-resources strong,.zp-guided-resources .zp-t-small { display:block; }
.zp-guided-resources .zp-t-small { color:var(--wp--preset--color--zp-muted); margin-top:var(--wp--preset--spacing--tiny); }
.zp-guided-resources a:hover { background:var(--wp--preset--color--zp-bg); }
.zp-guided-person { display:grid; align-items:center; gap:var(--wp--preset--spacing--xxl); }
.zp-guided-portrait { width:var(--wp--custom--media--portrait-width); max-width:100%; height:auto; border-radius:var(--wp--custom--radius--lg); }
.zp-guided-close { padding-block:var(--wp--preset--spacing--section-xs); text-align:center; }
.zp-guided-close h2 { margin:0 0 var(--wp--preset--spacing--md); }
.zp-guided-close p { margin:0 0 var(--wp--preset--spacing--xl); }
@media(min-width:769px) {
 .zp-guided-hero-grid { grid-template-columns: .9fr 1.1fr; gap:var(--wp--preset--spacing--xl); }
 .zp-guided-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--wp--preset--spacing--section-sm); }
 .zp-guided-person { grid-template-columns:var(--wp--custom--media--portrait-width) 1fr; max-width:var(--wp--style--global--content-size); gap:var(--wp--preset--spacing--section-xs); }
 .zp-guided-section { padding-block:var(--wp--preset--spacing--section-xs); }
}
@media(max-width:768px) {
 .zp-guided-hero-grid { gap:var(--wp--preset--spacing--xl); }
 .zp-guided-person { grid-template-columns:1fr; }
 .zp-guided-portrait { width:var(--wp--custom--media--portrait-mobile-width); }
 .zp-guided-home .zp-proof-wrap { padding-inline:var(--wp--preset--spacing--xxl); }
}
.zp-proof-card-grid { display:grid; gap:var(--wp--preset--spacing--xl); margin-top:var(--wp--preset--spacing--xxl); }
.zp-proof-photo-card { display:grid; grid-template-columns:1fr 2fr; align-items:center; min-width:0; background:var(--wp--preset--color--zp-white); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--lg); overflow:hidden; color:var(--wp--preset--color--zp-text); text-decoration:none; }
.zp-proof-photo-card>img { display:block; width:100%; height:100%; min-height:0; aspect-ratio:1; object-fit:cover; }
.zp-proof-card-copy { display:block; padding:var(--wp--preset--spacing--md); }
.zp-proof-card-copy strong { display:block; margin:0 0 var(--wp--preset--spacing--tiny); }
.zp-proof-card-copy .zp-t-small { display:block; color:var(--wp--preset--color--zp-muted); }
.zp-proof-card-note { color:var(--wp--preset--color--zp-muted); margin:var(--wp--preset--spacing--md) 0 0; }
.zp-proof-photo-card:hover { border-color:var(--wp--preset--color--zp-brand); }
@media(min-width:769px) { .zp-proof-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .zp-proof-photo-card { display:block; } .zp-proof-photo-card>img { height:auto; aspect-ratio:2/1; } .zp-proof-card-copy { padding:var(--wp--preset--spacing--xl); } }

/* Service overview: a compact online-service introduction and decision-material preview. */
.zp-service-overview .zp-t-eyebrow { color:var(--wp--preset--color--zp-brand); }
.zp-service-overview .zp-service-hero { padding-block:var(--wp--preset--spacing--xxxl); }
.zp-service-hero-grid { display:grid; gap:var(--wp--preset--spacing--xxxl); align-items:center; }
.zp-service-intro h1 { max-width:20ch; margin-block:var(--wp--preset--spacing--xl); }
.zp-service-intro > .zp-t-body { max-width:52ch; margin-bottom:var(--wp--preset--spacing--xxl); }
.zp-service-overview .zp-service-reassurance { margin-top:var(--wp--preset--spacing--md); }
.zp-service-intro > .zp-proof-link { margin-top:var(--wp--preset--spacing--xs); }
.zp-service-preview { border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--lg); overflow:hidden; background:var(--wp--preset--color--zp-bg); }
.zp-service-preview-top { display:flex; flex-wrap:wrap; gap:var(--wp--preset--spacing--xs); justify-content:space-between; align-items:center; padding:var(--wp--preset--spacing--xl); background:var(--wp--preset--color--zp-white); }
.zp-service-preview > img { display:block; width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; }
.zp-service-preview figcaption { display:grid; gap:var(--wp--preset--spacing--xs); padding:var(--wp--preset--spacing--xl); }
.zp-service-preview figcaption > span { color:var(--wp--preset--color--zp-muted); }
.zp-service-section { padding-block:var(--wp--preset--spacing--xxxl); scroll-margin-top:var(--wp--preset--spacing--xl); }
.zp-service-tinted { background:var(--wp--preset--color--zp-bg); }
.zp-service-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--wp--preset--spacing--md); margin-bottom:var(--wp--preset--spacing--xxl); }
.zp-service-overview h2 { margin-top:var(--wp--preset--spacing--xs); }
.zp-service-steps { list-style:none; margin:0; padding:0; display:grid; gap:var(--wp--preset--spacing--xl); }
.zp-service-steps li { border-top:2px solid var(--wp--preset--color--zp-border); padding-top:var(--wp--preset--spacing--md); }
.zp-service-steps li:first-child { border-color:var(--wp--preset--color--zp-brand); }
.zp-service-steps h3 { margin-block:var(--wp--preset--spacing--xs); }
.zp-service-materials { display:grid; gap:var(--wp--preset--spacing--xxl); align-items:center; }
.zp-service-materials h2 + p { margin-top:var(--wp--preset--spacing--md); max-width:56ch; }
.zp-service-person { display:flex; align-items:center; gap:var(--wp--preset--spacing--xl); margin-top:var(--wp--preset--spacing--xxl); }
.zp-service-person img { width:var(--wp--preset--spacing--section-xl); height:auto; border-radius:var(--wp--custom--radius--sm); }
.zp-service-person p { margin-top:var(--wp--preset--spacing--micro); }
.zp-service-close { display:grid; gap:var(--wp--preset--spacing--xxl); align-items:center; }
.zp-service-close h2 + p { margin-top:var(--wp--preset--spacing--md); max-width:60ch; }
@media(min-width:769px) {
 .zp-service-hero-grid { grid-template-columns:1.05fr 1fr; gap:var(--wp--preset--spacing--section-sm); }
 .zp-service-overview .zp-service-hero { padding-block:var(--wp--preset--spacing--section-md); }
 .zp-service-section { padding-block:var(--wp--preset--spacing--section-xs); }
 .zp-service-steps { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--wp--preset--spacing--xxxl); }
 .zp-service-materials { grid-template-columns:1.05fr 1fr; gap:var(--wp--preset--spacing--section-sm); }
 .zp-service-close { grid-template-columns:1.4fr 1fr; }
}
@media(max-width:768px) { .zp-service-overview .zp-proof-wrap { padding-inline:var(--wp--preset--spacing--xxl); } }

/* Illustrated editorial layout. Shared type roles above remain authoritative. */
.zp-editorial-surface { background:var(--wp--preset--color--zp-white); color:var(--wp--preset--color--zp-navy); }
.zp-editorial-wrap { width:100%; max-width:var(--wp--style--global--wide-size); margin-inline:auto; padding-inline:var(--wp--preset--spacing--xxxl); }
/* Home: pełne pasy bieli i błękitu jak na stronie analizy działki. */
.zp-editorial-main > .zp-editorial-wrap { max-width:none; padding-inline:0; margin-block:0; background:var(--wp--preset--color--zp-white); }
.zp-editorial-main > .zp-editorial-wrap:nth-child(even) { background:var(--wp--preset--color--zp-bg); }
.zp-editorial-main > .zp-editorial-wrap > .zp-editorial-row { max-width:var(--wp--style--global--wide-size); margin-inline:auto; padding-inline:var(--wp--preset--spacing--xxxl); box-sizing:border-box; }
/* Hero Home: typografia i proporcje jak w hero analizy działki. */
.zp-editorial-main .zp-editorial-hero .zp-editorial-copy { max-width:none; width:100%; }
.zp-editorial-main .zp-editorial-hero h1 { text-wrap:wrap; }
.zp-editorial-main .zp-editorial-hero > figure { width:85%; max-width:none; margin-inline:auto; }
@media(min-width:769px) { .zp-editorial-main > .zp-editorial-wrap > .zp-editorial-hero { column-gap:56px; } }
.zp-editorial-surface a { color:var(--wp--preset--color--zp-navy); }
.zp-editorial-surface a:focus-visible { outline:2px solid var(--wp--preset--color--zp-navy); outline-offset:var(--wp--preset--spacing--micro); }
.zp-editorial-navigation { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--wp--preset--spacing--xl); padding-block:var(--wp--preset--spacing--xxxl); }
.zp-site-brand { display:flex; align-items:center; gap:var(--wp--preset--spacing--md); width:var(--wp--custom--brand--logo-width); max-width:100%; flex-shrink:0; color:var(--wp--preset--color--zp-navy); line-height:var(--wp--custom--type--roles--h-3--line-height); text-decoration:none; font-size:var(--wp--custom--type--roles--h-3--size); font-weight:var(--wp--custom--type--roles--h-3--weight); letter-spacing:var(--wp--custom--type--roles--h-3--letter-spacing); white-space:nowrap; }
.zp-site-brand svg { width:var(--wp--preset--spacing--section-sm); height:var(--wp--preset--spacing--section-sm); flex-shrink:0; }

.zp-editorial-navigation nav,.zp-editorial-footer nav { display:flex; align-items:center; flex-wrap:wrap; gap:var(--wp--preset--spacing--xl); }
.zp-editorial-navigation nav a,.zp-editorial-footer nav a { display:inline-flex; align-items:center; min-height:var(--wp--preset--spacing--section-md); text-underline-offset:var(--wp--preset--spacing--micro); }
.zp-editorial-navigation nav a:hover,.zp-editorial-footer nav a:hover { text-decoration:underline; }
.zp-editorial-row { display:grid; grid-template-columns:minmax(0,1fr); align-items:center; gap:var(--wp--preset--spacing--xxxl); padding-block:var(--wp--preset--spacing--section-sm); }
.zp-editorial-copy { max-width:var(--wp--custom--editorial--copy-width); min-width:0; }
.zp-editorial-copy h1,.zp-editorial-copy h2 { margin:0; text-wrap:balance; color:var(--wp--preset--color--zp-navy); }
.zp-editorial-copy p { color:var(--wp--preset--color--zp-muted); margin:var(--wp--preset--spacing--xxl) 0 0; max-width:49ch; }
.zp-editorial-copy .wp-block-buttons { margin-top:var(--wp--preset--spacing--xxxl); }
.zp-editorial-surface .zp-editorial-art { width:100%; max-width:var(--wp--custom--editorial--art-mobile-width); margin:0 auto; }
.zp-editorial-art img { display:block; width:100%; height:auto; }
.zp-editorial-art figcaption { font-family:var(--wp--preset--font-family--inter); font-size:var(--wp--custom--type--roles--small--size); line-height:var(--wp--custom--type--roles--small--line-height); color:var(--wp--preset--color--zp-muted); text-align:center; margin-top:var(--wp--preset--spacing--xs); }
.zp-editorial-surface .zp-editorial-action .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:var(--wp--preset--spacing--xl); min-height:var(--wp--preset--spacing--section-md); padding:var(--wp--preset--spacing--lg) var(--wp--preset--spacing--xxxl); border-radius:var(--wp--custom--radius--pill); background:var(--wp--preset--color--zp-accent); color:var(--wp--preset--color--zp-white); font-family:inherit; font-size:var(--wp--custom--type--roles--button--size); font-weight:var(--wp--custom--type--roles--button--weight); line-height:var(--wp--custom--type--roles--button--line-height); text-decoration:none; }
.zp-editorial-surface .zp-editorial-action .wp-block-button__link:hover { background:var(--wp--preset--color--zp-navy); }
.zp-editorial-link { display:inline-flex; align-items:center; gap:var(--wp--preset--spacing--md); min-height:var(--wp--preset--spacing--section-md); border-bottom:1px solid var(--wp--preset--color--zp-accent); text-decoration:none; }
.zp-editorial-link:hover { border-bottom-color:var(--wp--preset--color--zp-navy); }
.zp-editorial-close { display:grid; justify-items:center; gap:var(--wp--preset--spacing--xxxl); text-align:center; padding:var(--wp--preset--spacing--section-sm) var(--wp--preset--spacing--xxl); margin-block:var(--wp--preset--spacing--xxxl) var(--wp--preset--spacing--section-sm); background:var(--wp--preset--color--zp-bg); border-radius:var(--wp--custom--radius--sm); }
.zp-editorial-close h2 { margin:0; text-wrap:balance; }
.zp-editorial-close .wp-block-buttons { margin:0; }
.zp-editorial-footer-row { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--wp--preset--spacing--xl); border-top:1px solid var(--wp--preset--color--zp-border); padding-block:var(--wp--preset--spacing--xxxl); }
@media(min-width:769px) {
 .zp-editorial-navigation { padding-block:var(--wp--preset--spacing--xxxl); }
 .zp-editorial-navigation nav,.zp-editorial-footer nav { gap:var(--wp--preset--spacing--xxxl); }
 .zp-editorial-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--wp--preset--spacing--section-xl); padding-block:var(--wp--preset--spacing--section-xl); min-height:calc(var(--wp--preset--spacing--section-xl) * 6); }
 .zp-editorial-row-art-first > .zp-editorial-art { grid-column:1; grid-row:1; }
 .zp-editorial-row-art-first > .zp-editorial-copy { grid-column:2; grid-row:1; }
 .zp-editorial-surface .zp-editorial-art { max-width:var(--wp--custom--editorial--art-width); }
 .zp-editorial-copy { width:100%; justify-self:center; }
 .zp-editorial-hero { min-height:calc(var(--wp--preset--spacing--section-xl) * 9); }
 .zp-editorial-close { padding-block:var(--wp--preset--spacing--section-xl); margin-block:var(--wp--preset--spacing--section-md) var(--wp--preset--spacing--section-xl); }
}
@media(max-width:480px) {
 .zp-editorial-navigation { padding-bottom:var(--wp--preset--spacing--xs); gap:var(--wp--preset--spacing--xs); }
 .zp-editorial-navigation nav { width:100%; justify-content:space-between; gap:var(--wp--preset--spacing--xs); }
 .zp-editorial-row { padding-block:var(--wp--preset--spacing--xxxl); }
 .zp-editorial-hero { padding-top:var(--wp--preset--spacing--xxxl); }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }


/* BEGIN compact service brief */
/* Reusable, compact service brief. Theme tokens provide its visual values. */
.zp-brief{background:var(--wp--preset--color--zp-white);color:var(--wp--preset--color--zp-navy);font-family:var(--wp--preset--font-family--inter);font-size:var(--wp--custom--type--roles--body--size);line-height:var(--wp--custom--type--roles--body--line-height)}
.zp-brief *{box-sizing:border-box}
.zp-brief .wp-block-group{margin-block:0}
.zp-brief :is(h1,h2,h3,p,figure){margin:0}
.zp-brief :is(h1,h2,h3){color:var(--wp--preset--color--zp-navy);text-wrap:balance}
.zp-brief h1{font-size:var(--wp--custom--type--roles--hero--mobile-size);font-weight:var(--wp--custom--type--roles--hero--weight);line-height:var(--wp--custom--type--roles--hero--line-height);letter-spacing:var(--wp--custom--type--roles--hero--letter-spacing)}
.zp-brief h2{font-size:var(--wp--custom--type--roles--h-2--mobile-size);font-weight:var(--wp--custom--type--roles--h-2--weight);line-height:var(--wp--custom--type--roles--h-2--line-height);letter-spacing:var(--wp--custom--type--roles--h-2--letter-spacing)}
.zp-brief h3{font-size:var(--wp--custom--type--roles--h-3--size);font-weight:var(--wp--custom--type--roles--h-3--weight);line-height:var(--wp--custom--type--roles--h-3--line-height);letter-spacing:var(--wp--custom--type--roles--h-3--letter-spacing)}
.zp-brief p{color:var(--wp--preset--color--zp-muted)}
.zp-brief a{color:inherit;text-underline-offset:var(--wp--preset--spacing--micro)}
.zp-brief a:focus-visible{outline:2px solid var(--wp--preset--color--zp-navy);outline-offset:var(--wp--preset--spacing--micro)}
.zp-brief .zp-brief-wrap{width:100%;max-width:var(--wp--style--global--wide-size);padding-inline:var(--wp--preset--spacing--xxxl);margin-inline:auto}
.zp-brief .zp-brief-breadcrumb{padding-top:var(--wp--preset--spacing--xxl);font-size:var(--wp--custom--type--roles--small--size);display:flex;flex-wrap:wrap;gap:var(--wp--preset--spacing--sm);align-items:center}
.zp-brief .zp-brief-breadcrumb a{text-decoration:none}
.zp-brief .zp-brief-breadcrumb a:hover{text-decoration:underline}
.zp-brief .zp-brief-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--xxxl);align-items:center;padding-block:var(--wp--preset--spacing--section-xs)}
.zp-brief .zp-brief-copy{width:100%;max-width:var(--wp--custom--editorial--copy-width);justify-self:center}
.zp-brief .zp-brief-copy>p:not(.zp-brief-eyebrow){margin-top:var(--wp--preset--spacing--xxl)}
.zp-brief .zp-brief-eyebrow{font-size:var(--wp--custom--type--roles--eyebrow--size);font-weight:var(--wp--custom--type--roles--eyebrow--weight);line-height:var(--wp--custom--type--roles--eyebrow--line-height);letter-spacing:var(--wp--custom--type--roles--eyebrow--letter-spacing);text-transform:uppercase;color:var(--wp--preset--color--zp-navy);margin-bottom:var(--wp--preset--spacing--xl)}
.zp-brief .zp-brief-art{width:100%;max-width:var(--wp--custom--editorial--art-mobile-width);justify-self:center}
.zp-brief .zp-brief-art img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.zp-brief .wp-block-buttons{display:flex;gap:var(--wp--preset--spacing--xl);flex-wrap:wrap;margin-top:var(--wp--preset--spacing--huge)}
.zp-brief .zp-brief-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:var(--wp--preset--spacing--section-md);padding:var(--wp--preset--spacing--xl) var(--wp--preset--spacing--xxxl);border-radius:var(--wp--custom--radius--pill);background:var(--wp--preset--color--zp-accent);color:var(--wp--preset--color--zp-white);font-size:var(--wp--custom--type--roles--button--size);font-weight:var(--wp--custom--type--roles--button--weight);line-height:var(--wp--custom--type--roles--button--line-height);text-decoration:none;box-shadow:none}
.zp-brief .zp-brief-button .wp-block-button__link:hover{background:var(--wp--preset--color--zp-navy)}
.zp-brief .zp-brief-band{background:var(--wp--preset--color--zp-bg);padding-block:var(--wp--preset--spacing--section-xs)}
.zp-brief .zp-brief-section-intro{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--xl);margin-bottom:var(--wp--preset--spacing--huge)}
.zp-brief .zp-brief-steps,.zp-brief .zp-brief-deliverables{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--xxxl)}
.zp-brief .zp-brief-step{padding-top:var(--wp--preset--spacing--xxl);border-top:1px solid var(--wp--preset--color--zp-border)}
.zp-brief .zp-brief-number{color:var(--wp--preset--color--zp-accent);font-size:var(--wp--custom--type--roles--small--size);font-weight:700;margin-bottom:var(--wp--preset--spacing--xl)}
.zp-brief .zp-brief-step h3{margin-bottom:var(--wp--preset--spacing--md)}
.zp-brief .zp-brief-outcome{padding-block:var(--wp--preset--spacing--section-sm)}
.zp-brief .zp-brief-deliverable{padding-left:var(--wp--preset--spacing--xl);border-left:2px solid var(--wp--preset--color--zp-accent)}
.zp-brief .zp-brief-deliverable h3{margin-bottom:var(--wp--preset--spacing--xs)}
.zp-brief .zp-brief-close{padding:var(--wp--preset--spacing--section-xs) var(--wp--preset--spacing--xxxl);text-align:center;background:var(--wp--preset--color--zp-bg);border-radius:var(--wp--custom--radius--sm);margin-bottom:var(--wp--preset--spacing--xxl)}
.zp-brief .zp-brief-close p{margin-top:var(--wp--preset--spacing--xl)}
.zp-brief .zp-brief-close .wp-block-buttons{justify-content:center}
.zp-brief .zp-brief-caption{font-size:var(--wp--custom--type--roles--small--size);text-align:center;padding-bottom:var(--wp--preset--spacing--xxxl)}
@media(min-width:701px){.zp-brief h1{font-size:var(--wp--custom--type--roles--hero--tablet-size)}.zp-brief h2{font-size:var(--wp--custom--type--roles--h-2--size)}.zp-brief .zp-brief-row,.zp-brief .zp-brief-section-intro{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--wp--preset--spacing--section-sm)}.zp-brief .zp-brief-art-first>.zp-brief-art{grid-column:1;grid-row:1}.zp-brief .zp-brief-art-first>.zp-brief-copy{grid-column:2;grid-row:1}.zp-brief .zp-brief-steps,.zp-brief .zp-brief-deliverables{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.zp-brief h1{font-size:var(--wp--custom--type--roles--hero--size)}.zp-brief .zp-brief-row{gap:var(--wp--preset--spacing--section-xl)}.zp-brief .zp-brief-art{max-width:calc(var(--wp--custom--editorial--art-width) * .8)}}

/* END compact service brief */

/* Linked top navigation: common touch targets and compact wrapping. */
.zp-site-menu>li>a,.zp-site-menu>li>details>summary{display:inline-flex;align-items:center;min-height:var(--wp--preset--spacing--section-md)}
@media(max-width:768px){.zp-site-menu,.zp-editorial-navigation nav{justify-content:flex-start;gap:0 var(--wp--preset--spacing--xl);width:100%}.zp-editorial-navigation nav a{min-height:var(--wp--preset--spacing--section-md)}}

/* Keep phone navigation rows stable when Inter replaces the system font. */
@media (max-width: 480px) {
 .zp-site-menu,
 .zp-editorial-navigation nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--wp--preset--spacing--xl);
  align-items: stretch;
 }
 .zp-site-menu > li { min-width: 0; }
 .zp-site-menu > li > a,
 .zp-editorial-navigation nav > a {
  display: flex;
  min-height: var(--wp--preset--spacing--section-md);
  line-height: 1.5;
  white-space: nowrap;
 }
}


/* BEGIN shared landing typography alignment */
/* Illustrated service layouts follow the same reading rhythm as the landing. */
.zp-editorial-main,.zp-brief{font-family:var(--wp--preset--font-family--inter);color:var(--wp--preset--color--zp-text);font-size:var(--wp--custom--type--roles--body--size);font-weight:var(--wp--custom--type--roles--body--weight);line-height:var(--wp--custom--type--roles--body--line-height);letter-spacing:var(--wp--custom--type--roles--body--letter-spacing)}
.zp-editorial-main :is(h1,h2,h3),.zp-brief :is(h1,h2,h3){color:var(--wp--preset--color--zp-text)}
.zp-editorial-main .zp-editorial-copy p{margin-top:var(--wp--preset--spacing--md)}
.zp-editorial-main .zp-editorial-copy p.zp-t-body-strong{margin-top:var(--wp--preset--spacing--xs)}
.zp-editorial-main .zp-editorial-copy .wp-block-buttons,.zp-brief .wp-block-buttons{margin-top:var(--wp--preset--spacing--xl)}
.zp-brief .zp-brief-copy>p:not(.zp-brief-eyebrow){margin-top:var(--wp--preset--spacing--md)}
.zp-brief .zp-brief-eyebrow{color:var(--wp--preset--color--zp-brand-soft);margin-bottom:var(--wp--preset--spacing--xs)}
.zp-brief .zp-brief-number{color:var(--wp--preset--color--zp-brand-soft);font-weight:var(--wp--custom--type--roles--eyebrow--weight);margin-bottom:var(--wp--preset--spacing--xs)}
.zp-brief .zp-brief-step h3{margin-bottom:var(--wp--preset--spacing--tiny)}
.zp-brief .zp-brief-deliverable{border-left-color:var(--wp--preset--color--zp-border)}
.zp-brief .zp-brief-section-intro{margin-bottom:var(--wp--preset--spacing--xxl)}
.zp-editorial-main .zp-editorial-link{color:var(--wp--preset--color--zp-brand);border-bottom-color:var(--wp--preset--color--zp-border);min-height:var(--wp--preset--spacing--section-md)}
.zp-editorial-main .zp-editorial-link:hover{border-bottom-color:var(--wp--preset--color--zp-brand)}
.zp-editorial-surface :is(.zp-editorial-action,.zp-brief-button) .wp-block-button__link{font-family:var(--wp--preset--font-family--inter);font-size:var(--wp--custom--type--roles--button--size);font-weight:var(--wp--custom--type--roles--button--weight);line-height:var(--wp--custom--type--roles--button--line-height);letter-spacing:var(--wp--custom--type--roles--button--letter-spacing);background:var(--wp--preset--color--zp-brand);padding:var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl);min-height:var(--wp--preset--spacing--section-md)}
.zp-editorial-surface :is(.zp-editorial-action,.zp-brief-button) .wp-block-button__link:hover{background:var(--wp--preset--color--zp-text)}
.zp-editorial-main .zp-editorial-row{padding-block:var(--wp--preset--spacing--xxxl);min-height:0}
.zp-editorial-main .zp-editorial-close{gap:var(--wp--preset--spacing--xl);padding-block:var(--wp--preset--spacing--section-xs);margin-block:var(--wp--preset--spacing--xxxl) var(--wp--preset--spacing--section-sm)}
.zp-editorial-main .zp-editorial-close .wp-block-buttons{margin-top:0}
.zp-brief .zp-brief-close p{margin-top:var(--wp--preset--spacing--md)}
@media(min-width:769px){.zp-editorial-surface :is(.zp-editorial-action,.zp-brief-button) .wp-block-button__link{min-height:0}.zp-editorial-main .zp-editorial-link{min-height:0;padding-block:var(--wp--preset--spacing--micro)}}

/* END shared landing typography alignment */


/* BEGIN technical detail layout */
/* Technical service detail: narrower than the main home layout. */
.zp-brief{width:100%;max-width:calc((var(--wp--style--global--wide-size) + var(--wp--style--global--content-size)) / 2);margin-inline:auto}
.zp-brief .zp-brief-hero{display:block;padding-block:var(--wp--preset--spacing--xxxl)}
.zp-brief .zp-brief-hero .zp-brief-copy{max-width:var(--wp--style--global--content-size);margin:0;justify-self:start}
.zp-brief .zp-brief-hero h1{max-width:22ch}
.zp-brief .zp-brief-hero .zp-brief-copy>p:not(.zp-brief-eyebrow){max-width:65ch}
.zp-brief .zp-brief-band{border-radius:var(--wp--custom--radius--sm)}
.zp-brief .zp-technical-study{padding-block:var(--wp--preset--spacing--section-xs);border-bottom:1px solid var(--wp--preset--color--zp-border)}
.zp-brief .zp-technical-study>p{margin-top:var(--wp--preset--spacing--md)}
.zp-brief .zp-technical-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--xxl);margin-top:var(--wp--preset--spacing--xxxl)}
.zp-brief .zp-technical-card{border:1px solid var(--wp--preset--color--zp-border);padding:var(--wp--preset--spacing--xl);background:var(--wp--preset--color--zp-white)}
.zp-brief .zp-technical-card figure{margin-block:var(--wp--preset--spacing--md)}
.zp-brief .zp-technical-card img{display:block;width:100%;max-width:calc(var(--wp--preset--spacing--section-md) * 3);height:auto;margin-inline:auto}
.zp-brief .zp-technical-card p{font-size:var(--wp--custom--type--roles--body--size);line-height:var(--wp--custom--type--roles--body--line-height)}
.zp-brief .zp-technical-note{font-size:var(--wp--custom--type--roles--small--size);line-height:var(--wp--custom--type--roles--small--line-height)}
.zp-brief .zp-technical-source{display:inline-flex;align-items:center;min-height:var(--wp--preset--spacing--section-md)}
.zp-brief .zp-technical-grid{grid-template-columns:minmax(0,1fr)}
.zp-brief .zp-technical-card{display:grid;grid-template-columns:calc(var(--wp--preset--spacing--section-md) * 2) minmax(0,1fr);column-gap:var(--wp--preset--spacing--xl);row-gap:var(--wp--preset--spacing--sm);align-content:center}.zp-brief .zp-technical-card figure{grid-column:1;grid-row:1 / 3;margin:0;align-self:center}.zp-brief .zp-technical-card h3{grid-column:2;grid-row:1;align-self:end}.zp-brief .zp-technical-card p{grid-column:2;grid-row:2;margin:0;align-self:start}
@media(min-width:701px){.zp-brief .zp-technical-card{grid-template-columns:calc(var(--wp--preset--spacing--xxxl) * 5) minmax(0,1fr);column-gap:var(--wp--preset--spacing--section-xs)}}
@media(min-width:769px){html body .zp-brief .zp-t-hero{font-size:var(--wp--custom--type--roles--hero--tablet-size)!important}.zp-brief .zp-brief-section-intro{grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--md)}}

/* END technical detail layout */

/* Technical hero illustration from the study. */
.zp-brief .zp-brief-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--wp--preset--spacing--xxxl)}
.zp-brief .zp-brief-hero>.zp-brief-copy{grid-column:auto;grid-row:auto}
.zp-brief .zp-brief-hero-plan{width:100%;margin:0}
.zp-brief .zp-brief-hero-plan img{display:block;width:100%;height:auto}
.zp-brief .zp-brief-hero-plan figcaption{font-size:var(--wp--custom--type--roles--small--size);line-height:var(--wp--custom--type--roles--small--line-height);color:var(--wp--preset--color--zp-muted);text-align:center;margin-top:var(--wp--preset--spacing--xs)}
.zp-brief .zp-brief-hero-plan figcaption a{display:inline-flex;align-items:center;min-height:var(--wp--preset--spacing--section-md)}
@media(min-width:769px){.zp-brief .zp-brief-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--wp--preset--spacing--section-xs)}.zp-brief .zp-brief-hero>.zp-brief-copy{grid-column:1;grid-row:1}.zp-brief .zp-brief-hero-plan{grid-column:2;grid-row:1}}

/* Longer study descriptions use the full reading width on mobile. */
@media(max-width:700px){.zp-brief .zp-technical-card{row-gap:var(--wp--preset--spacing--md)}.zp-brief .zp-technical-card figure{grid-row:1}.zp-brief .zp-technical-card h3{align-self:center}.zp-brief .zp-technical-card p{grid-column:1 / -1;grid-row:2}}

/* Compact study comparison. */
.zp-brief .zp-study-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-top:var(--wp--preset--spacing--xxxl);font-size:var(--wp--custom--type--roles--small--size);line-height:var(--wp--custom--type--roles--small--line-height)}.zp-brief .zp-study-table caption{text-align:left;font-weight:600;color:var(--wp--preset--color--zp-text);padding-bottom:var(--wp--preset--spacing--md)}.zp-brief .zp-study-table th,.zp-brief .zp-study-table td{text-align:left;padding:var(--wp--preset--spacing--md) var(--wp--preset--spacing--xs);border-bottom:1px solid var(--wp--preset--color--zp-border);vertical-align:top;overflow-wrap:break-word}.zp-brief .zp-study-table thead{background:var(--wp--preset--color--zp-muted-bg)}.zp-brief .zp-study-table th:first-child{width:19%}.zp-brief .zp-study-table th:nth-child(2),.zp-brief .zp-study-table th:nth-child(3){width:21%}

/* The same brand lockup is used in every header and footer. */
.zp-site-brand:hover { color:var(--wp--preset--color--zp-navy); }
.zp-site-brand:focus-visible { outline:2px solid var(--wp--preset--color--zp-navy); outline-offset:var(--wp--preset--spacing--micro); }

/* Contact keeps the shared type and Fluent Forms field styling. */
.zp-contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--wp--preset--spacing--section-xs); padding-block:var(--wp--preset--spacing--xxxl) var(--wp--preset--spacing--section-xs); align-items:start; }
.zp-contact .zp-brief-copy h2 { margin-top:var(--wp--preset--spacing--xxxl); }
.zp-contact-form { background:var(--wp--preset--color--zp-bg); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--sm); padding:var(--wp--preset--spacing--xxl); }
.zp-contact-form h2 { margin-bottom:var(--wp--preset--spacing--xxl); }
.zp-contact-form textarea { resize:vertical; }
.zp-contact-form>.zp-t-small { margin-top:var(--wp--preset--spacing--lg); }
@media(max-width:760px) { .zp-contact-grid { grid-template-columns:minmax(0,1fr); }.zp-contact-form { padding:var(--wp--preset--spacing--lg); } }

/* Complete studies share the functional-program reading layout. */
.zp-study .zp-brief-hero { align-items:center; }
.zp-study .zp-brief-hero-plan { max-width:430px; justify-self:end; }
.zp-study .zp-technical-study>.zp-brief-eyebrow { color:var(--wp--preset--color--zp-brand-soft); font-size:var(--wp--custom--type--roles--small--size); font-weight:600; margin:0 0 var(--wp--preset--spacing--xs); }
.zp-study .zp-technical-study>p { max-width:72ch; }
.zp-study .zp-brief-deliverables { margin-block:var(--wp--preset--spacing--xxl); }
.zp-study .zp-study-note { padding:var(--wp--preset--spacing--lg) var(--wp--preset--spacing--xl); background:var(--wp--preset--color--zp-bg); border-left:3px solid var(--wp--preset--color--zp-brand); font-size:var(--wp--custom--type--roles--small--size); }
.zp-study .zp-study-figure { margin:var(--wp--preset--spacing--xxl) 0; }
.zp-study .zp-study-figure img { display:block; width:100%; height:auto; }
.zp-study .zp-study-figure figcaption { margin-top:var(--wp--preset--spacing--xs); font-size:var(--wp--custom--type--roles--small--size); color:var(--wp--preset--color--zp-muted); }
.zp-study .zp-study-plan { max-width:640px; margin-inline:auto; }
.zp-study .zp-technical-card .zp-study-figure { margin:0; }
.zp-study .zp-study-table th:first-child { width:22%; }
.zp-study .zp-study-table th:nth-child(2) { width:20%; }
.zp-study .zp-study-table th:nth-child(3) { width:auto; }
.zp-study .zp-study-end { margin-block:var(--wp--preset--spacing--xxxl); padding-block:var(--wp--preset--spacing--xxl); }
.zp-study .zp-study-end p { margin-top:var(--wp--preset--spacing--md); }
.zp-study .zp-study-end a,.zp-study .zp-brief-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; color:var(--wp--preset--color--zp-brand); }
.zp-study a:focus-visible,.zp-study button:focus-visible,.zp-study input:focus-visible { outline:2px solid var(--wp--preset--color--zp-brand); outline-offset:4px; }
.zp-study-model { margin-top:var(--wp--preset--spacing--xxl); background:var(--wp--preset--color--zp-bg); padding:var(--wp--preset--spacing--xl); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--sm); }
.zp-study-model svg { display:block; width:100%; height:auto; }
.zp-model-controls { display:flex; flex-wrap:wrap; align-items:center; gap:var(--wp--preset--spacing--md); font-size:14px; }
.zp-model-controls input { flex:1; min-width:110px; min-height:44px; accent-color:var(--wp--preset--color--zp-brand); }
.zp-model-controls button { font:inherit; min-height:44px; border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--xs); padding:8px 14px; color:var(--wp--preset--color--zp-brand); background:white; cursor:pointer; }
.zp-model-controls output { min-width:38px; }
.zp-study .zp-model-legend { margin-top:var(--wp--preset--spacing--md); font-size:12px; }
#przyklady { scroll-margin-top:var(--wp--preset--spacing--xxxl); }
@media(max-width:700px) {
  .zp-study .zp-brief-hero-plan { justify-self:center; max-width:360px; }
  .zp-study .zp-study-table { font-size:12px; }
  .zp-study .zp-study-table th,.zp-study .zp-study-table td { padding:10px 5px; }
  .zp-study .zp-study-table th:first-child { width:23%; }
  .zp-study-model { padding:var(--wp--preset--spacing--md); }
  .zp-model-controls label { flex-basis:100%; }
}

/* Supporting examples follow the illustrated home and service pages. */
.zp-resource-page { background:var(--wp--preset--color--zp-bg); color:var(--wp--preset--color--zp-text); font-family:var(--wp--preset--font-family--inter); }
.zp-resource-page .zp-proof-wrap { max-width:var(--wp--style--global--wide-size); }
.zp-resource-page .zp-content-intro { padding-block:var(--wp--preset--spacing--xxxl); }
.zp-resource-page .zp-content-intro>.zp-proof-wrap { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:var(--wp--preset--spacing--section-xs); align-items:center; }
.zp-resource-page .zp-content-intro nav { color:var(--wp--preset--color--zp-muted); line-height:1.8; }
.zp-resource-page .zp-content-intro h1 { max-width:19ch; margin-block:var(--wp--preset--spacing--xxl) var(--wp--preset--spacing--xl); text-wrap:balance; }
.zp-resource-page p { color:var(--wp--preset--color--zp-muted); max-width:68ch; }
.zp-resource-page .zp-resource-hero { width:100%; max-width:440px; margin:0; justify-self:end; }
.zp-resource-page .zp-resource-hero img { display:block; width:100%; height:auto; }
.zp-resource-page .zp-resource-hero figcaption { margin-top:var(--wp--preset--spacing--xs); color:var(--wp--preset--color--zp-muted); text-align:center; }
.zp-resource-page .zp-proof-section { padding-block:var(--wp--preset--spacing--xxxl); background:transparent; }
.zp-resource-page .zp-proof-section:nth-of-type(odd) { background:var(--wp--preset--color--zp-white); }
.zp-resource-page .zp-content-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--wp--preset--spacing--xxxl); }
.zp-resource-page .zp-content-grid:has(>div:nth-child(3)) { grid-template-columns:repeat(3,minmax(0,1fr)); }
.zp-resource-page .zp-content-grid:has(>div:only-child) { grid-template-columns:minmax(0,1fr); }
.zp-resource-page .zp-content-grid>div:only-child { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--wp--preset--spacing--xxxl); }
.zp-resource-page article { padding-top:var(--wp--preset--spacing--xl); border-top:1px solid var(--wp--preset--color--zp-border); }
.zp-resource-page article p { margin-bottom:0; }
.zp-resource-page .zp-content-grid+p { margin-top:var(--wp--preset--spacing--xxl); font-size:var(--wp--custom--type--roles--small--size); }
.zp-resource-page .zp-content-media img { display:block; aspect-ratio:3/2; object-fit:cover; border-radius:0; }
.zp-resource-page .zp-related { gap:var(--wp--preset--spacing--md) var(--wp--preset--spacing--xxxl); }
.zp-resource-page .zp-related a { display:inline-flex; align-items:center; min-height:44px; color:var(--wp--preset--color--zp-brand); text-decoration:none; border-bottom:1px solid var(--wp--preset--color--zp-border); }
.zp-resource-page .zp-related a:hover { border-color:currentColor; }
.zp-resource-page a:focus-visible { outline:2px solid var(--wp--preset--color--zp-brand); outline-offset:4px; }
.zp-resource-page .zp-proof-section:last-child { padding-bottom:var(--wp--preset--spacing--section-xs); }
.zp-resource-page .zp-proof-button { background:var(--wp--preset--color--zp-brand); color:white; border-radius:var(--wp--custom--radius--pill); min-height:44px; }
@media(max-width:760px) {
  .zp-resource-page .zp-content-intro>.zp-proof-wrap,.zp-resource-page .zp-content-grid,.zp-resource-page .zp-content-grid:has(>div:nth-child(3)),.zp-resource-page .zp-content-grid>div:only-child { grid-template-columns:minmax(0,1fr); }
  .zp-resource-page .zp-resource-hero { max-width:360px; justify-self:center; }
  .zp-resource-page .zp-content-intro h1 { margin-top:var(--wp--preset--spacing--xl); }
  .zp-resource-page .zp-proof-section { padding-block:var(--wp--preset--spacing--xxl); }
}

/* Plot enquiry form: retain the landing page's field and button styles. */
:is(#formularz, .zp-contact-form) .fluentform { width:100%; }
:is(#formularz, .zp-contact-form) .fluentform .ff-el-group { margin-bottom:var(--wp--preset--spacing--sm); }
:is(#formularz, .zp-contact-form) .fluentform .ff-el-input--label label { color:var(--wp--preset--color--zp-text); font-family:inherit; font-size:var(--wp--custom--type--roles--small--size,14px); font-weight:500; }
:is(#formularz, .zp-contact-form) .fluentform .ff-el-form-control { width:100%; min-height:44px; padding:var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--xs); background:var(--wp--preset--color--zp-white); color:var(--wp--preset--color--zp-text); font-family:inherit; font-size:var(--wp--custom--type--roles--body--size,16px); }
:is(#formularz, .zp-contact-form) .fluentform .ff-el-form-control:focus { border-color:var(--wp--preset--color--zp-brand); outline:2px solid var(--wp--preset--color--zp-brand); outline-offset:2px; }
:is(#formularz, .zp-contact-form) .fluentform .ff-btn-submit { width:100%; min-height:44px; padding:var(--wp--preset--spacing--sm) var(--wp--preset--spacing--xl); border:0; border-radius:var(--wp--custom--radius--pill); background:var(--wp--preset--color--zp-brand); color:var(--wp--preset--color--zp-white); font-family:inherit; font-weight:600; white-space:normal; }
:is(#formularz, .zp-contact-form) .fluentform .ff-btn-submit:focus-visible { outline:2px solid var(--wp--preset--color--zp-brand); outline-offset:3px; }
:is(#formularz, .zp-contact-form) .fluentform .ff_submit_btn_wrapper { margin-bottom:0; }
:is(#formularz, .zp-contact-form) .fluentform .ff-message-success { margin-top:0; padding:var(--wp--preset--spacing--md); border:1px solid var(--wp--preset--color--zp-border); border-radius:var(--wp--custom--radius--xs); color:var(--wp--preset--color--zp-text); box-shadow:none; }


/* Minimalistyczna strona O nas. */
.zp-about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-block:32px}
.zp-about-value p{margin-top:12px}.zp-about .zp-technical-study{padding-block:40px}.zp-about .zp-study-end{margin-top:40px}.zp-about .zp-brief-hero img{display:block;width:100%;height:auto}
@media(max-width:760px){.zp-about-values{grid-template-columns:1fr;gap:24px}}

.zp-about-founder{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:40px;margin-top:36px}.zp-about-founder figure{margin:0}.zp-about-founder img{display:block;width:100%;height:auto;border-radius:8px}.zp-about-founder-copy p{margin-top:16px}.zp-about-founder-copy .zp-brief-eyebrow{margin-top:0}@media(max-width:600px){.zp-about-founder{grid-template-columns:1fr;gap:24px}.zp-about-founder figure{max-width:240px}}

.zp-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:40px}.zp-team-person figure{margin:0 0 20px}.zp-team-person img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;display:block;border-radius:8px}.zp-team-person h2{margin:0}.zp-team-person p{margin-top:8px}.zp-team-person .zp-team-demo{font-size:12px;color:var(--wp--preset--color--zp-muted)}@media(max-width:900px){.zp-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.zp-team-grid{grid-template-columns:1fr}.zp-team-person img{max-height:380px}}

/* Zespół: profile jeden pod drugim. */
.zp-team .zp-team-grid{grid-template-columns:minmax(0,1fr);gap:40px}.zp-team .zp-team-person{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:32px;align-content:center;border-bottom:1px solid var(--wp--preset--color--zp-border);padding-bottom:32px}.zp-team .zp-team-person figure{grid-column:1;grid-row:1 / span 3;margin:0}.zp-team .zp-team-person h2,.zp-team .zp-team-person p{grid-column:2;align-self:center}.zp-team .zp-team-person h2{align-self:end}.zp-team .zp-team-person p:last-child{align-self:start}.zp-team .zp-team-person:last-child{border-bottom:0}@media(max-width:480px){.zp-team .zp-team-person{grid-template-columns:120px minmax(0,1fr);column-gap:20px}.zp-team .zp-team-person h2{font-size:16px}}

.zp-team .zp-team-person figure{grid-row:1 / span 4}.zp-team .zp-team-person .zp-team-description{max-width:65ch;line-height:1.65;margin-top:16px;align-self:start}.zp-team .zp-team-person h2{align-self:start}@media(max-width:600px){.zp-team .zp-team-person .zp-team-description{grid-column:1 / -1}.zp-team .zp-team-person figure{grid-row:1 / span 3}}

/* Home: grafika hero po lewej, tekst po prawej. */
@media(min-width:782px){.zp-editorial-main > .zp-section-hero .wp-block-columns.zp-hero-grid{flex-direction:row-reverse}.zp-editorial-main > .zp-section-hero .zp-hero-grid figure{margin-left:0!important;margin-right:auto}}

@media(min-width:782px){.zp-editorial-main > .zp-section-hero .zp-hero-grid figure.alignright{float:none!important;display:block;margin-inline:0!important;width:85%;justify-self:start}}

/* Home hero: więcej oddechu między kolumnami i wokół treści. */
@media(min-width:1000px){.zp-editorial-main > .zp-section-hero .wp-block-columns.zp-hero-grid{gap:112px!important}.zp-editorial-main > .zp-section-hero{padding-top:80px!important;padding-bottom:64px!important}.zp-editorial-main > .zp-section-hero .zp-hero-grid figure.alignright{width:100%;max-width:100%!important}}

/* Home: niższa sekcja poznania działki. */
.zp-editorial-main > .zp-editorial-wrap:nth-child(2) > .zp-editorial-row{padding-block:16px}.zp-editorial-main > .zp-editorial-wrap > .zp-editorial-row > figure{width:60%;max-width:310px;margin:0 auto}

/* Home: nagłówek hero o poziom spokojniejszy od landing page. */
html body .zp-editorial-main > .zp-section-hero .zp-t-hero{font-size:36px!important;font-weight:700!important;line-height:1.12!important;letter-spacing:-0.025em!important}@media(max-width:1024px){html body .zp-editorial-main > .zp-section-hero .zp-t-hero{font-size:32px!important}}@media(max-width:600px){html body .zp-editorial-main > .zp-section-hero .zp-t-hero{font-size:28px!important}}

/* Home: spokojniejsza skala typografii spójna z hero 36 px. */
.zp-editorial-main{--wp--custom--type--roles--h-2--size:22px;--wp--custom--type--roles--h-2--tablet-size:21px;--wp--custom--type--roles--h-2--mobile-size:20px;--wp--custom--type--roles--h-2--weight:600;--wp--custom--type--roles--body--size:14px;--wp--custom--type--roles--body--line-height:1.6;--wp--custom--type--roles--body-strong--size:14px;--wp--custom--type--roles--body-strong--weight:600;--wp--custom--type--roles--body-strong--line-height:1.5}

/* Program funkcjonalny: ilustracja drugoplanowa wobec hero Home. */
.page-id-216 .zp-brief-wrap:first-child > .zp-brief-row > figure{width:74%;max-width:310px;margin-inline:auto}.page-id-216 .zp-brief-wrap:first-child > .zp-brief-row > figure img{display:block;width:100%;height:auto}

/* Zespół: małe, okrągłe portrety z kadrem na twarz. */
.zp-trust-split .zp-trust-business-card{flex-direction:column;align-items:stretch!important;min-width:0}
.zp-trust-business-card .zp-trust-photo{flex:none!important;width:calc(100% - 32px);max-width:240px;min-width:0;margin:16px 0 0 16px}
.zp-trust-business-card .zp-trust-who-main{min-width:0}
.zp-trust-business-card .zp-trust-photo img{width:100%;height:auto;display:block}
@media(max-width:768px){.zp-trust-split .zp-trust-business-card{flex-direction:column}.zp-trust-business-card .zp-trust-photo{flex:none!important;width:calc(100% - 32px);margin:16px auto 0}}
.zp-team .zp-brief-wrap > .zp-team-grid{padding-top:60px}
.zp-team .zp-team-person{grid-template-columns:89.6px minmax(0,1fr)}
.zp-team .zp-team-person figure{position:relative;width:89.6px;height:89.6px;overflow:hidden;border-radius:50%;border:1px solid var(--wp--preset--color--zp-border);box-sizing:border-box;align-self:start}
.zp-team .zp-team-person figure img{position:absolute;left:50%;top:-18%;width:200%;max-width:none;height:auto;max-height:none;aspect-ratio:auto;transform:translateX(-50%);border-radius:0}
.zp-team .zp-team-person:first-child figure img{left:45%;top:-15%}
.zp-team .zp-team-person:nth-child(3) figure img{top:-32%}
@media(max-width:480px){.zp-team .zp-team-person{grid-template-columns:64px minmax(0,1fr)}.zp-team .zp-team-person figure{width:64px;height:64px}}

/* Shared footer — Studio design update 2026-09-19. */
.zp-unified-footer{background:#F3F7FB;color:#0F2744;border-top:1px solid #D2E0EF;padding:32px 24px 24px;margin-block-start:0;font-family:Inter,sans-serif;}
.zp-footer-inner{max-width:1072px;margin-inline:auto;}
.zp-footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;padding-bottom:28px;}
.zp-footer-name{display:inline-block;color:#002D62;font-size:18px;font-weight:700;line-height:1.4;letter-spacing:-.02em;text-decoration:none;}
.zp-footer-about p{margin:10px 0 0;color:#5A6F86;font-size:13px;line-height:1.6;}
.zp-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px;}
.zp-unified-footer a{color:#1E4A7A;text-decoration:none;}
.zp-footer-links a{display:flex;align-items:center;min-height:44px;font-size:13px;line-height:1.5;}
.zp-unified-footer a:hover{text-decoration:underline;text-underline-offset:4px;}
.zp-unified-footer a:focus-visible{outline:2px solid #0284C7;outline-offset:4px;border-radius:2px;}
.zp-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;border-top:1px solid #D2E0EF;padding-top:16px;color:#5A6F86;font-size:12px;line-height:1.5;}
.zp-footer-bottom a{display:inline-flex;align-items:center;min-height:44px;}
@media(max-width:780px){.zp-unified-footer{padding:28px 24px 24px;}.zp-footer-top{flex-direction:column;gap:20px;padding-bottom:20px;}.zp-footer-links{width:100%;gap:4px 16px;}.zp-footer-bottom{flex-wrap:wrap;}}

/* Landing: illustration fills its column, larger than the Home hero. */
@media(min-width:782px){
 body.page-id-137 .zp-section-hero .zp-hero-image{float:none;width:100%;max-width:100%!important;margin:0!important;}
 body.page-id-137 .zp-section-hero .zp-hero-image picture{display:block;width:100%;}
 body.page-id-137 .zp-section-hero .zp-hero-image img{display:block;width:100%;height:auto;}
 body.page-id-137 .zp-section-hero .zp-hero-grid>.wp-block-column:last-child{display:flex;align-items:center;}
}

.zp-unified-footer,.zp-unified-footer *{box-sizing:border-box}.zp-footer-about,.zp-footer-links{min-width:0}.zp-footer-bottom{justify-content:flex-end}.zp-footer-links a{overflow-wrap:anywhere}

/* Footer links: one horizontal row, scrollable on narrow screens. */
.zp-footer-top{flex-direction:column;gap:20px;padding-bottom:0;}
.zp-footer-links{display:flex;flex-wrap:nowrap;align-items:center;gap:24px;width:100%;max-width:100%;overflow-x:auto;padding-top:12px;border-top:1px solid #D2E0EF;}
.zp-footer-links a{flex:0 0 auto;white-space:nowrap;overflow-wrap:normal;}
@media(max-width:780px){.zp-footer-links{gap:20px;}.zp-footer-top{padding-bottom:0;}}
