/**
 * AdepaTrade — homepage sections (W2 0.3.0 · W2-R1 0.3.1 · W2-R1 final 0.4.0) and the reusable
 * sections that left the homepage in 0.4.0.
 * Loaded whenever a block with an `adepa-home-*` class renders, on any page (inc/homepage.php), and
 * always in the editor. Uses the frozen W1B-R1 tokens only. Mobile-first; breakpoints 600 / 782 / 1024 / 1280.
 *
 * Homepage (0.4.0, seven sections): 01 hero + proof · 02 about (partner) · 03 From Pole to Plug +
 * pathways · 04 integrated supply · 05 project experience · 06 supply network (six names) · 07 closer.
 * Environments: charcoal → white → warm grey → charcoal → white → warm grey → charcoal (closer,
 * flowing into the footer).
 *
 * Reusable sections (pattern category "AdepaTrade — reusable sections"): why pillars, solution rows,
 * full manufacturer network, detailed projects, markets map, process, insights.
 */

/* =========================================================
 * Page frame
 * ========================================================= */
.adepa-main--home { padding-bottom: 0; margin-block-start: 0 !important; }
.adepa-content--home > * { margin-block: 0 !important; }
.adepa-content--home > :where(.wp-block-group.alignfull) { margin-block: 0; }

[class*="adepa-home-"] > :where(.alignwide) { margin-inline: auto; }

/* Shared section-head rhythm */
.adepa-home-partner__head .is-style-eyebrow,
.adepa-home-why__head .is-style-eyebrow,
.adepa-home-supply__head .is-style-eyebrow,
.adepa-home-exp__head .is-style-eyebrow,
.adepa-home-brands__head .is-style-eyebrow,
.adepa-home-ptp__head .is-style-eyebrow,
.adepa-home-solutions__head .is-style-eyebrow,
.adepa-home-network__head .is-style-eyebrow,
.adepa-home-projects__head .is-style-eyebrow,
.adepa-home-markets__copy .is-style-eyebrow,
.adepa-home-insights__head .is-style-eyebrow { margin: 0 0 var(--wp--preset--spacing--40); }
[class*="adepa-home-"] :where(h2.wp-block-heading) { margin-top: 0; margin-bottom: 0; }
/* W2-R1 scale contrast: three statement sections (Pole to Plug, Integrated Project Supply, the
   closer) carry a larger display H2 between the hero H1 (92px) and the standard H2 (62px). */
.adepa-home-ptp .adepa-home-ptp__heading,
.adepa-home-supply .adepa-home-supply__title,
.adepa-home-closer .adepa-home-closer__title {
	font-size: clamp(2.5rem, 1.6rem + 3vw, 4.5rem);
	line-height: 1.02;
	letter-spacing: var(--wp--custom--letter-spacing--display);
}
.adepa-home-ptp__head,
.adepa-home-solutions__head,
.adepa-home-projects__head,
.adepa-home-exp__head,
.adepa-home-insights__head {
	display: grid;
	gap: var(--wp--preset--spacing--40) var(--wp--preset--spacing--70);
	align-items: end;
}
.adepa-home-ptp__head > *,
.adepa-home-exp__head > *,
.adepa-home-solutions__head > *,
.adepa-home-projects__head > *,
.adepa-home-insights__head > * { margin: 0; }
@media (min-width: 1024px) {
	.adepa-home-solutions__head,
	.adepa-home-insights__head { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
	.adepa-home-ptp__head,
	.adepa-home-exp__head { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
	.adepa-home-projects__head { grid-template-columns: minmax(0, 1fr) auto; }
}

/* =========================================================
 * 1 · Hero  +  2 · Proof strip
 * W2-R1: larger, tighter H1; deliberate photo relationship.
 *  · Phones/tablets: copy first (scope → H1 → descriptor → lead → CTAs) on a stepped
 *    vertical rhythm, then a full-bleed photograph (the Owner's 1.965:1 crop, uncropped, since 0.4.2), then the proof strip.
 *  · Desktop ≥1024: copy | photo split at the page centre line. The photograph runs the full
 *    hero height to the viewport edge. The H1 sits on a charcoal plate that deliberately
 *    overlaps the photo's left edge (the one overlap); everything else aligns to that edge: the
 *    proof strip ends exactly on it, and the red engineering line runs in from the page edge
 *    and terminates in a node on the photo's edge.
 * ========================================================= */
.adepa-home-hero {
	position: relative;
	padding: 0 !important;
	overflow: hidden;
	--hero-gutter: max(var(--wp--style--root--padding-left, 20px), calc((100vw - var(--wp--style--global--wide-size)) / 2));
}
.adepa-home-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	margin-block: 0 !important;
}
.adepa-home-hero > .adepa-home-hero__grid { margin-inline: 0 !important; max-width: none; width: 100%; }
.adepa-home-hero__copy {
	padding: var(--wp--preset--spacing--60) var(--wp--style--root--padding-right, 20px) var(--wp--preset--spacing--70) var(--wp--style--root--padding-left, 20px);
}
.adepa-home-hero__copy > * { margin: 0; }
.adepa-home-hero__scope {
	display: inline-flex;
	align-items: center;
	gap: 0.75em;
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	line-height: 1.2;
	color: var(--wp--preset--color--white) !important;
}
/* line + node lead-in (decorative) */
.adepa-home-hero__scope::before {
	content: "";
	flex: none;
	width: 2.5rem;
	height: 2px;
	background: var(--wp--preset--color--brand-red-bright);
}
/* Rhythm steps (phones → desktop): scope ·24–32· H1 ·16–24· descriptor ·24–32· lead ·32–48· CTAs */
.adepa-home-hero .adepa-home-hero__title {
	margin-top: var(--wp--preset--spacing--50) !important;
	font-size: clamp(2.875rem, 1.92rem + 4.26vw, 4.5rem) !important;
	line-height: 1;
	letter-spacing: var(--wp--custom--letter-spacing--display);
	max-width: 11em;
	color: var(--wp--preset--color--white);
}
.adepa-home-hero__descriptor {
	margin-top: var(--wp--preset--spacing--40) !important;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.5;
	color: var(--wp--preset--color--grey-300) !important;
}
.adepa-home-hero__lead {
	margin-top: var(--wp--preset--spacing--50) !important;
	max-width: 54ch;
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 1.55;
	color: var(--wp--preset--color--white) !important;
}
.adepa-home-hero__actions {
	margin-top: var(--wp--preset--spacing--60) !important;
	gap: var(--wp--preset--spacing--30) !important;
}
.adepa-home-hero__media {
	position: relative;
	margin: 0 !important;
	aspect-ratio: 4971 / 2530;   /* 0.4.2 (t13u): phones + tablets show the Owner's crop uncropped (was 4:3 / 16:10) */
	overflow: hidden;
	background: var(--wp--preset--color--charcoal-2);
}
.adepa-home-hero__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	object-position: 50% 50%;   /* < 1024: the box has the photo's ratio, nothing is cropped */
}
/* Phones: the two CTAs share one full-width column (equal targets, one clean edge) */
@media (max-width: 599.98px) {
	.adepa-home-hero__actions { flex-direction: column; align-items: stretch !important; }
	.adepa-home-hero__actions > .wp-block-button { width: 100%; }
	.adepa-home-hero__actions > .wp-block-button > .wp-block-button__link { display: block; width: 100%; text-align: center; box-sizing: border-box; }
}
/* Proof strip: W1B proof-point language on charcoal */
.adepa-home-proof {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	margin: 0 !important;
	padding: var(--wp--preset--spacing--40) var(--wp--style--root--padding-right, 20px) var(--wp--preset--spacing--50) var(--wp--style--root--padding-left, 20px);
	border-top: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-proof__item {
	display: grid;
	grid-template-columns: 7.5rem minmax(0, 1fr);
	align-items: baseline;
	gap: var(--wp--preset--spacing--30);
	padding-block: var(--wp--preset--spacing--30);
	margin: 0 !important;
}
.adepa-home-proof__item + .adepa-home-proof__item { border-top: 1px solid var(--wp--preset--color--charcoal-2); }
.adepa-home-proof__value {
	margin: 0;
	font-size: var(--wp--preset--font-size--heading-2);
	font-weight: 600;
	line-height: 1;
	letter-spacing: var(--wp--custom--letter-spacing--heading);
	white-space: nowrap;
	color: var(--wp--preset--color--white) !important;
}
.adepa-home-proof__item:last-child .adepa-home-proof__value { color: var(--wp--preset--color--brand-red-bright) !important; }
.adepa-home-proof__label {
	margin: 0;
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	text-transform: uppercase;
	line-height: 1.4;
	color: var(--wp--preset--color--grey-300) !important;
}
/* the red line + node: systems connected through AdepaTrade (decorative) */
.adepa-home-proof::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 72%;
	height: 2px;
	background: var(--wp--preset--color--brand-red-bright);
	transform-origin: left center;
}
.adepa-home-proof::after {
	content: "";
	position: absolute;
	top: -7px;
	left: calc(72% - 7px);
	width: 14px;
	height: 14px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 2px solid var(--wp--preset--color--brand-red-bright);
	background: radial-gradient(circle, var(--wp--preset--color--brand-red-bright) 0 2.5px, var(--wp--preset--color--charcoal) 3px);
}
@media (prefers-reduced-motion: no-preference) {
	.adepa-home-hero .adepa-home-proof::before { animation: adepa-home-draw 1.1s var(--adepa-ease) 0.25s both; }
	.adepa-home-hero .adepa-home-proof::after { animation: adepa-home-fade 0.4s linear 1.2s both; }
}
@keyframes adepa-home-draw { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes adepa-home-fade { from { opacity: 0; } to { opacity: 1; } }

@media (min-width: 600px) {
	.adepa-home-proof { grid-template-columns: repeat(3, minmax(0, 1fr)); padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
	.adepa-home-proof__item { grid-template-columns: minmax(0, 1fr); align-content: start; padding: 0 var(--wp--preset--spacing--40); gap: var(--wp--preset--spacing--20); }
	.adepa-home-proof__item:first-child { padding-left: 0; }
	.adepa-home-proof__item + .adepa-home-proof__item { border-top: 0; border-left: 1px solid var(--wp--preset--color--charcoal-2); }
}
@media (min-width: 1024px) {
	.adepa-home-hero__grid {
		grid-template-columns: var(--hero-gutter) minmax(0, 7fr) minmax(0, 5fr);
		grid-template-rows: minmax(0, 1fr) auto;
		min-height: clamp(640px, calc(100svh - var(--adepa-header-h)), 900px);
	}
	.adepa-home-hero__copy {
		position: relative;
		z-index: 2;
		grid-column: 2;
		grid-row: 1;
		align-self: center;
		padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60) var(--wp--preset--spacing--50) 0;
	}
	/* The H1 plate: may run past the copy column onto the photograph (negative right margin
	   widens the line box; fit-content keeps the plate tight to the two lines). */
	.adepa-home-hero .adepa-home-hero__title {
		width: fit-content;
		max-width: none;
		margin-right: -40vw !important;
		margin-top: var(--wp--preset--spacing--40) !important;
		padding: 0.12em 0.42em 0.16em 0;
		font-size: clamp(4rem, 6.73vw - 0.3rem, 5.75rem) !important;
		line-height: 0.98;
		background: var(--wp--preset--color--charcoal);
	}
	.adepa-home-hero__descriptor { margin-top: var(--wp--preset--spacing--40) !important; }
	.adepa-home-hero__media { grid-column: 3; grid-row: 1 / span 2; aspect-ratio: auto; min-height: 100%; }
	.adepa-home-hero__media img { object-position: 76% 50%; }   /* 0.4.2, 1024–1279 (≈0.55:1 column of a 1.965:1 frame): transformer compartment */
	.adepa-home-proof {
		grid-column: 2;
		grid-row: 2;
		z-index: 1;
		padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50) 0;
		background: var(--wp--preset--color--charcoal);
		border-top: 0;
	}
	/* the line runs in from the page edge and ends in a node on the photograph's edge */
	.adepa-home-proof::before { left: calc(-1 * var(--hero-gutter)); width: calc(100% + var(--hero-gutter)); }
	.adepa-home-proof::after { left: calc(100% - 7px); }
}
@media (min-width: 1280px) {
	/* the photo field grows to half the page: copy | photo meet on the centre line */
	.adepa-home-hero__grid { grid-template-columns: var(--hero-gutter) minmax(0, 1fr) minmax(0, 1fr); }
	.adepa-home-hero__media img { object-position: 50% 50%; }   /* 0.4.2, ≥1280 (≈0.78–1.07:1 column): centred on the substation, switchgear + transformer */
}
/* Standalone proof strip (inserted outside the hero) */
:where(.adepa-content, .entry-content) > .adepa-home-proof { padding-inline: var(--wp--style--root--padding-left, 20px); }

/* =========================================================
 * 02 · About AdepaTrade (0.4.0: About + Why merged into one editorial composition)
 * 5/7 grid: heading | statement paragraph, body, three understated strengths on a ruled line
 * (hollow red nodes, no cards), text link.
 * ========================================================= */
.adepa-home-partner { padding-block: var(--wp--custom--section--md); }
.adepa-home-partner__grid { display: grid; gap: var(--wp--preset--spacing--50); }
.adepa-home-partner__grid > * { margin: 0; }
.adepa-home-partner__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-partner__body > * { margin: 0 !important; }
.adepa-home-partner__body > * + * { margin-top: var(--wp--preset--spacing--40) !important; }
.adepa-home-partner__body p { max-width: 60ch; color: var(--wp--preset--color--grey-700); }
.adepa-home-partner__body .adepa-home-partner__lead {
	max-width: 36ch;
	font-size: clamp(1.375rem, 1.05rem + 1.25vw, 2.125rem);
	line-height: 1.32;
	letter-spacing: var(--wp--custom--letter-spacing--snug);
	color: var(--wp--preset--color--ink);
}
.adepa-home-partner__body > .adepa-home-partner__strengths { margin-top: var(--wp--preset--spacing--50) !important; }
.adepa-home-partner__strengths {
	display: grid;
	padding: 0 !important;
	border-top: 1px solid var(--wp--preset--color--grey-200);
	border-bottom: 1px solid var(--wp--preset--color--grey-200);
}
.adepa-home-partner__strengths > li {
	position: relative;
	margin: 0;
	padding: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--30) 1.5rem;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	line-height: 1.35;
	color: var(--wp--preset--color--ink);
}
.adepa-home-partner__strengths > li + li { border-top: 1px solid var(--wp--preset--color--grey-200); }
.adepa-home-partner__strengths > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(var(--wp--preset--spacing--30) + 0.4em);
	width: 9px;
	height: 9px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1.5px solid var(--wp--preset--color--brand-red);
}
@media (min-width: 600px) {
	.adepa-home-partner__strengths { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.adepa-home-partner__strengths > li { padding-right: var(--wp--preset--spacing--30); }
	.adepa-home-partner__strengths > li + li { border-top: 0; border-left: 1px solid var(--wp--preset--color--grey-200); padding-left: calc(var(--wp--preset--spacing--40) + 1.5rem); }
	.adepa-home-partner__strengths > li + li::before { left: var(--wp--preset--spacing--40); }
}
@media (min-width: 1024px) {
	.adepa-home-partner__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--wp--preset--spacing--70); }
	.adepa-home-partner__head { padding-top: 0.35rem; }
}
/* 0.4.4 A7: at 125–150% text the three strengths no longer fit side by side in the body column
   (e.g. 1024px @150% = 21rem) — stack them instead of overflowing. The narrowest body column at
   100% is 31.3rem (1024px), so the 100% layout is unchanged. */
.adepa-home-partner__body { container: adepa-partner-body / inline-size; }
@container adepa-partner-body (width < 30rem) {
	.adepa-home-partner__strengths { grid-template-columns: minmax(0, 1fr); }
	.adepa-home-partner__strengths > li { padding: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--30) 1.5rem; }
	.adepa-home-partner__strengths > li + li { border-left: 0; border-top: 1px solid var(--wp--preset--color--grey-200); padding-left: 1.5rem; }
	.adepa-home-partner__strengths > li + li::before { left: 0; }
}

/* =========================================================
 * R1 · Why AdepaTrade — five pillars (reusable; was homepage section 4)
 * W2-R1: a charcoal band (dark/light alternation after the white partner statement); larger
 * red numerals and pillar names. No section hairline: the tone change is the transition.
 * ========================================================= */
.adepa-home-why { padding-block: var(--wp--custom--section--md); }
.adepa-home-why__grid { display: grid; gap: var(--wp--preset--spacing--60); }
.adepa-home-why__grid > * { margin: 0; }
.adepa-home-why__head > * { margin: 0; }
.adepa-home-why__title { font-size: var(--wp--preset--font-size--heading-1); color: var(--wp--preset--color--white); }
.adepa-home-why__intro {
	margin-top: var(--wp--preset--spacing--50) !important;
	max-width: 44ch;
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 1.55;
	color: var(--wp--preset--color--grey-300) !important;
}
.adepa-home-why__pillars { counter-reset: none; border-bottom: 1px solid var(--wp--preset--color--charcoal-2); }
.adepa-home-why__pillar {
	position: relative;
	display: grid;
	grid-template-columns: 3.5rem minmax(0, 1fr);
	column-gap: var(--wp--preset--spacing--40);
	padding-block: var(--wp--preset--spacing--50);
	margin: 0 !important;
	border-top: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-why__pillar > * { margin: 0; grid-column: 2; }
.adepa-home-why__num {
	grid-column: 1 !important;
	grid-row: 1 / span 2;
	font-size: var(--wp--preset--font-size--heading-2);
	font-weight: 500;
	line-height: 1;
	letter-spacing: var(--wp--custom--letter-spacing--heading);
	color: var(--wp--preset--color--brand-red-bright) !important;
	font-variant-numeric: tabular-nums;
}
.adepa-home-why__name { font-size: var(--wp--preset--font-size--heading-3); line-height: 1.2; color: var(--wp--preset--color--white); }
.adepa-home-why__text { margin-top: var(--wp--preset--spacing--20) !important; max-width: 56ch; color: var(--wp--preset--color--grey-300) !important; }
/* the red rule runs along the top of the list and draws on reveal */
.adepa-home-why__pillar:first-child::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 6rem;
	height: 2px;
	background: var(--wp--preset--color--brand-red-bright);
	transform-origin: left center;
	transition: transform 0.8s var(--adepa-ease);
}
.adepa-home-why__pillars.is-pending .adepa-home-why__pillar:first-child::before { transform: scaleX(0); }
@media (min-width: 782px) {
	.adepa-home-why__pillar { grid-template-columns: 5.5rem minmax(0, 15rem) minmax(0, 1fr); column-gap: var(--wp--preset--spacing--50); align-items: baseline; }
	.adepa-home-why__num { grid-row: 1; font-size: var(--wp--preset--font-size--heading-1); font-weight: 400; }
	.adepa-home-why__name { grid-column: 2; }
	.adepa-home-why__text { grid-column: 3 !important; margin-top: 0 !important; }
}
@media (min-width: 1280px) {
	.adepa-home-why__pillar { grid-template-columns: 6rem minmax(0, 19.5rem) minmax(0, 1fr); }
}
@media (min-width: 1024px) {
	.adepa-home-why__grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: var(--wp--preset--spacing--70); }
	.adepa-home-why__head { position: sticky; top: calc(var(--wp--custom--header--height-compact) + 2.5rem); align-self: start; }
	.adepa-home-why__pillar:first-child { border-top-color: transparent; padding-top: 0.25rem; }
	.adepa-home-why__pillar:first-child::before { display: none; }
}

/* =========================================================
 * 03 · From Pole to Plug — journey + six solution pathways
 * 0.4.1 (W2 final refinement): the stages carry labels only (no equipment lines) and the branch
 * only its label, so the journey is tightened: shorter stage runs, one-row branch label on desktop.
 * Mobile: vertical spine (left) · Desktop ≥1024: five columns, the branch is a subgrid loop
 * enclosing 02–04. home.js adds hover/focus tracing; without it the full chain is shown lit.
 * ========================================================= */
.adepa-home-ptp {
	padding-block: var(--wp--custom--section--md);
	background: var(--wp--preset--color--grey-100);
	--ptp-node: 26px;
	--ptp-rail: 2px;
	--ptp-red: var(--wp--preset--color--brand-red);
	--ptp-dim: var(--wp--preset--color--grey-300);
}

.adepa-home-ptp__intro {
	max-width: 46ch;
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 1.55;
	color: var(--wp--preset--color--grey-700);
}
.adepa-home-ptp__journey { position: relative; margin-top: var(--wp--preset--spacing--70) !important; }
.adepa-home-ptp__journey > *, .adepa-home-ptp__branch > * { margin: 0 !important; }
.adepa-home-ptp__stage {
	position: relative;
	padding: 0 0 var(--wp--preset--spacing--40) calc(var(--ptp-node) + 1.25rem);   /* 0.4.1: was spacing-50 */
	outline-offset: 6px;
}
.adepa-home-ptp__stage > * { margin: 0; }
.adepa-home-ptp__num {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	line-height: var(--ptp-node);
	color: var(--wp--preset--color--brand-red);
	font-variant-numeric: tabular-nums;
	transition: color var(--wp--custom--motion--base) linear;
}
.adepa-home-ptp__title {
	margin-top: var(--wp--preset--spacing--10) !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.3;
	color: var(--wp--preset--color--ink);
	transition: color var(--wp--custom--motion--base) linear;
}
.adepa-home-ptp__scope {
	margin-top: var(--wp--preset--spacing--20) !important;
	max-width: 30ch;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.55;
	color: var(--wp--preset--color--grey-700);
	transition: color var(--wp--custom--motion--base) linear;
}
/* node: hairline ring + red core */
.adepa-home-ptp__stage::before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	width: var(--ptp-node);
	height: var(--ptp-node);
	box-sizing: border-box;
	border-radius: 50%;
	border: 1px solid var(--ptp-red);
	background: radial-gradient(circle, var(--ptp-red) 0 4.5px, var(--wp--preset--color--white) 5px);
	transition: background var(--wp--custom--motion--base) linear, border-color var(--wp--custom--motion--base) linear, box-shadow var(--wp--custom--motion--base) linear;
}
.adepa-home-ptp__stage.is-stage-1::before { border-radius: 2px; background: var(--wp--preset--color--white); border-width: 2px; box-shadow: inset 0 0 0 5px var(--wp--preset--color--white), inset 0 0 0 13px var(--ptp-red); }
.adepa-home-ptp__stage.is-stage-5::before { background: var(--ptp-red); box-shadow: inset 0 0 0 7px var(--ptp-red), inset 0 0 0 9px var(--wp--preset--color--white); }
/* rail segment: from this node to the next (vertical on mobile) */
.adepa-home-ptp__stage::after {
	content: "";
	position: absolute;
	z-index: 1;
	left: calc(var(--ptp-node) / 2 - var(--ptp-rail) / 2);
	top: var(--ptp-node);
	bottom: 0;
	width: var(--ptp-rail);
	background: linear-gradient(var(--ptp-red), var(--ptp-red)) top / 100% var(--ptp-fill, 100%) no-repeat, var(--ptp-dim);
	transform-origin: top center;
	transition: background-size 0.45s var(--adepa-ease), transform 0.6s var(--adepa-ease);
}
.adepa-home-ptp__stage.is-stage-5::after { display: none; }
/* Branch (mobile): a white panel the spine runs past */
.adepa-home-ptp__branch {
	position: relative;
	margin-left: calc(var(--ptp-node) + 0.5rem) !important;
	margin-bottom: var(--wp--preset--spacing--50) !important;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) 0 0.75rem;
	background: var(--wp--preset--color--white);
	border-left: 1px solid var(--ptp-red);
	--ptp-out: calc(var(--ptp-node) + 0.5rem + 1px);          /* branch padding box → journey edge */
	--ptp-shift: calc(var(--ptp-out) + 0.75rem);               /* stage box → journey edge */
}
.adepa-home-ptp__branch::before {   /* the spine continues past the branch label and into stage 05 */
	content: "";
	position: absolute;
	left: calc(var(--ptp-node) / 2 - var(--ptp-rail) / 2 - var(--ptp-out));
	top: 0;
	bottom: calc(-1 * var(--wp--preset--spacing--50));
	width: var(--ptp-rail);
	background: var(--ptp-red);
}
.adepa-home-ptp__branch .adepa-home-ptp__stage { padding-left: 0; }
.adepa-home-ptp__branch .adepa-home-ptp__stage::before { left: calc(-1 * var(--ptp-shift)); }
.adepa-home-ptp__branch .adepa-home-ptp__stage::after { left: calc(var(--ptp-node) / 2 - var(--ptp-rail) / 2 - var(--ptp-shift)); }
.adepa-home-ptp__branch-label { padding-bottom: var(--wp--preset--spacing--40); margin-bottom: var(--wp--preset--spacing--40) !important; border-bottom: 1px solid var(--wp--preset--color--grey-200); }
.adepa-home-ptp__branch-label > * { margin: 0; }
.adepa-home-ptp__branch-kicker {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	text-transform: uppercase;
	color: var(--wp--preset--color--brand-red);
}
.adepa-home-ptp__branch-title {
	margin-top: var(--wp--preset--spacing--10) !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.3;
}
.adepa-home-ptp__branch-scope { margin-top: var(--wp--preset--spacing--10) !important; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--grey-700); }
.adepa-home-ptp__foot { margin-top: var(--wp--preset--spacing--40) !important; }
.adepa-home-ptp__caption { margin: 0; }

/* Desktop journey */
@media (min-width: 1024px) {
	.adepa-home-ptp { --ptp-node: 36px; --ptp-gap: clamp(1.5rem, 2.6vw, 3rem); }
	.adepa-home-ptp__journey {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		grid-template-rows: auto auto;
		column-gap: var(--ptp-gap);
		margin-top: var(--wp--preset--spacing--80) !important;
	}
	.adepa-home-ptp__stage {
		grid-row: 1;
		padding: calc(var(--ptp-node) + 1.75rem) 0 var(--wp--preset--spacing--40) 0;   /* 0.4.1: was spacing-60 */
		cursor: default;
	}
	/* stages 02–04 sit in the branch subgrid's columns 1–3 (page columns 2–4) */
	.adepa-home-ptp__stage.is-stage-1 { grid-column: 1; }
	.adepa-home-ptp__stage.is-stage-2 { grid-column: 1; }
	.adepa-home-ptp__stage.is-stage-3 { grid-column: 2; }
	.adepa-home-ptp__stage.is-stage-4 { grid-column: 3; }
	.adepa-home-ptp__stage.is-stage-5 { grid-column: 5; }
	.adepa-home-ptp__stage::after {
		left: var(--ptp-node);
		top: calc(var(--ptp-node) / 2 - var(--ptp-rail) / 2);
		bottom: auto;
		width: calc(100% + var(--ptp-gap) - var(--ptp-node));
		height: var(--ptp-rail);
		background: linear-gradient(var(--ptp-red), var(--ptp-red)) left / var(--ptp-fill, 100%) 100% no-repeat, var(--ptp-dim);
		transform-origin: left center;
	}
	.adepa-home-ptp__num { font-size: var(--wp--preset--font-size--heading-4); font-weight: 600; letter-spacing: 0; line-height: 1.1; }
	.adepa-home-ptp__title { margin-top: var(--wp--preset--spacing--20) !important; font-size: var(--wp--preset--font-size--small); letter-spacing: 0.03em; overflow-wrap: anywhere; }
	.adepa-home-ptp__scope { font-size: var(--wp--preset--font-size--small); }
	/* branch = subgrid over columns 2–4, rows 1–2: a loop under 02–04 */
	.adepa-home-ptp__branch {
		grid-column: 2 / 5;
		grid-row: 1 / 3;
		display: grid;
		grid-template-columns: subgrid;
		grid-template-rows: subgrid;
		margin: 0 !important;
		padding: 0;
		background: none;
		border: 0;
	}
	.adepa-home-ptp__branch::before {
		left: calc(var(--ptp-gap) / -2);
		right: calc(var(--ptp-gap) / -2);
		top: calc(var(--ptp-node) / 2);
		bottom: 0;
		width: auto;
		background: none;
		border: 1px solid var(--ptp-red);
		border-top: 0;
		transition: border-color var(--wp--custom--motion--base) linear;
	}
	.adepa-home-ptp__branch .adepa-home-ptp__stage { padding: calc(var(--ptp-node) + 1.75rem) var(--wp--preset--spacing--20) var(--wp--preset--spacing--40) 0; }
	.adepa-home-ptp__branch .adepa-home-ptp__stage::before { left: 0; }
	.adepa-home-ptp__branch .adepa-home-ptp__stage::after { left: var(--ptp-node); }
	.adepa-home-ptp__branch-label {
		grid-column: 1 / 4;
		grid-row: 2;
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 0.25rem 1.25rem;
		margin: 0 !important;
		padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);   /* 0.4.1: one row (kicker · title) */
		border: 0;
		background: var(--wp--preset--color--white);
		cursor: default;
	}
	.adepa-home-ptp__branch-label > * { margin: 0 !important; }
	.adepa-home-ptp__branch-title { font-size: var(--wp--preset--font-size--small); }
	.adepa-home-ptp__branch-kicker { flex-basis: auto; }
	.adepa-home-ptp__foot { margin-top: var(--wp--preset--spacing--50) !important; }
}

/* Tracing state (home.js) — default without interaction: the whole chain is lit */
.adepa-home-ptp__stage.is-ahead::before { border-color: var(--ptp-dim); background: radial-gradient(circle, var(--ptp-dim) 0 4.5px, var(--wp--preset--color--white) 5px); }
.adepa-home-ptp__stage.is-stage-5.is-ahead::before { background: var(--ptp-dim); box-shadow: inset 0 0 0 7px var(--ptp-dim), inset 0 0 0 9px var(--wp--preset--color--white); }
.adepa-home-ptp__stage.is-ahead .adepa-home-ptp__num { color: var(--wp--preset--color--grey-500); }
.adepa-home-ptp__stage.is-ahead .adepa-home-ptp__title,
.adepa-home-ptp__stage.is-ahead .adepa-home-ptp__scope { color: var(--wp--preset--color--grey-500); }
.adepa-home-ptp__stage.is-ahead::after,
.adepa-home-ptp__stage.is-active::after { --ptp-fill: 0%; }
.adepa-home-ptp__journey.is-branch .adepa-home-ptp__stage.is-active:not(.is-stage-4)::after { --ptp-fill: 100%; }
.adepa-home-ptp__stage.is-active::before { box-shadow: 0 0 0 6px rgba(179, 31, 42, 0.14); }
.adepa-home-ptp__stage.is-stage-1.is-active::before { box-shadow: inset 0 0 0 5px var(--wp--preset--color--white), inset 0 0 0 13px var(--ptp-red), 0 0 0 6px rgba(179, 31, 42, 0.14); }
.adepa-home-ptp__stage.is-stage-5.is-active::before { box-shadow: inset 0 0 0 7px var(--ptp-red), inset 0 0 0 9px var(--wp--preset--color--white), 0 0 0 6px rgba(179, 31, 42, 0.14); }
.adepa-home-ptp__stage.is-active .adepa-home-ptp__title { color: var(--wp--preset--color--brand-red); }
.adepa-home-ptp__stage.is-active .adepa-home-ptp__scope { color: var(--wp--preset--color--ink); }
.adepa-home-ptp__journey.is-tracing:not(.is-branch) .adepa-home-ptp__branch::before { border-color: var(--ptp-dim); }
.adepa-home-ptp__journey.is-tracing:not(.is-branch) .adepa-home-ptp__branch-kicker { color: var(--wp--preset--color--grey-500); }
.adepa-home-ptp__journey.is-branch .adepa-home-ptp__branch-label { box-shadow: inset 0 2px 0 var(--ptp-red); }
.adepa-home-ptp__branch-label:focus-visible,
.adepa-home-ptp__stage:focus-visible { outline: 2px solid var(--wp--preset--color--brand-red); outline-offset: 6px; }

/* Pathways (0.4.0): six numbered rows under the journey — number, name, one line. 3 × 2 at ≥1024,
   2 × 3 at ≥600, one column on phones. Planned (no link) by default; once the name is linked
   (manual activation) the whole row becomes the link target, with the text-link arrow. */
.adepa-home-paths {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	margin-top: var(--wp--preset--spacing--70) !important;
	border-top: 2px solid var(--wp--preset--color--ink);
}
.adepa-home-path {
	position: relative;
	display: grid;
	grid-template-columns: 2.5rem minmax(0, 1fr);
	column-gap: var(--wp--preset--spacing--20);
	align-content: start;
	margin: 0 !important;
	padding-block: var(--wp--preset--spacing--40);
	border-bottom: 1px solid var(--wp--preset--color--grey-300);
}
.adepa-home-path > * { margin: 0 !important; grid-column: 2; }
.adepa-home-path__num {
	grid-column: 1 !important;
	grid-row: 1 / span 2;
	padding-top: 0.3em;
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	line-height: 1.2;
	color: var(--wp--preset--color--brand-red);
	font-variant-numeric: tabular-nums;
}
.adepa-home-path__name {
	overflow-wrap: break-word; /* 0.4.4 A7: a single long word ("Infrastructure") breaks only when it cannot fit its column at 150% text; no effect at 100% */
	font-size: var(--wp--preset--font-size--heading-4);
	line-height: 1.25;
	letter-spacing: var(--wp--custom--letter-spacing--snug);
	color: var(--wp--preset--color--ink);
}
.adepa-home-path__line {
	margin-top: var(--wp--preset--spacing--10) !important;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
	color: var(--wp--preset--color--grey-700);
}
/* Active state (after manual activation: heading text linked, `adepa-link-planned` removed) */
.adepa-home-path__name a { color: inherit; text-decoration: none; }
.adepa-home-path__name a::before { content: ""; position: absolute; inset: 0; }
.adepa-home-path__name a::after {
	content: "";
	display: inline-block;
	width: 1em;
	height: 0.66em;
	margin-left: 0.5em;
	background-color: var(--wp--preset--color--brand-red);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12'%3E%3Cpath d='M0 5.25h15.1L10.9 1.06 11.96 0 18 6l-6.04 6-1.06-1.06 4.2-4.19H0z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12'%3E%3Cpath d='M0 5.25h15.1L10.9 1.06 11.96 0 18 6l-6.04 6-1.06-1.06 4.2-4.19H0z'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform var(--wp--custom--motion--base) var(--adepa-ease);
}
.adepa-home-path__name a:is(:hover, :focus-visible) { color: var(--wp--preset--color--brand-red); }
.adepa-home-path__name a:is(:hover, :focus-visible)::after { transform: translateX(4px); }
.adepa-home-path__name a:focus-visible { outline: none; }
.adepa-home-path:has(a:focus-visible) { outline: 2px solid var(--wp--preset--color--brand-red); outline-offset: 4px; }
.adepa-home-paths__foot { margin-top: var(--wp--preset--spacing--50) !important; }
@media (min-width: 600px) {
	.adepa-home-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--wp--preset--spacing--60); }
}
@media (min-width: 1024px) {
	.adepa-home-paths { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--wp--preset--spacing--60) !important; }
	.adepa-home-path { padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50); }
}

/* =========================================================
 * R2 · Electrical Power Solutions — six detailed rows (reusable)
 * ========================================================= */
.adepa-home-solutions { padding-block: var(--wp--custom--section--md) var(--wp--custom--section--lg); }
.adepa-home-solutions__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-solutions__intro { max-width: 40ch; font-size: var(--wp--preset--font-size--heading-4); line-height: 1.4; color: var(--wp--preset--color--grey-700); }
.adepa-home-solutions__list {
	margin-top: var(--wp--preset--spacing--70) !important;
	border-top: 2px solid var(--wp--preset--color--ink);
	counter-reset: none;
}
.adepa-home-sol {
	position: relative;
	display: grid;
	grid-template-columns: 2.5rem minmax(0, 1fr) 6.5rem;
	grid-template-areas: "num body media" "num action media";
	column-gap: var(--wp--preset--spacing--40);
	row-gap: var(--wp--preset--spacing--20);
	align-items: start;
	margin: 0 !important;
	padding-block: var(--wp--preset--spacing--50);
	border-bottom: 1px solid var(--wp--preset--color--grey-200);
}
.adepa-home-sol > * { margin: 0 !important; }
.adepa-home-sol__num {
	grid-area: num;
	font-size: var(--wp--preset--font-size--heading-4);
	font-weight: 500;
	line-height: 1.2;
	color: var(--wp--preset--color--brand-red);
	font-variant-numeric: tabular-nums;
}
.adepa-home-sol__media { grid-area: media; overflow: hidden; background: var(--wp--preset--color--grey-100); }
.adepa-home-sol__media img { display: block; width: 100%; transition: transform 0.7s var(--adepa-ease); }
.adepa-home-sol__body { grid-area: body; }
.adepa-home-sol__body > * { margin: 0; }
.adepa-home-sol__title { font-size: var(--wp--preset--font-size--heading-4); line-height: 1.2; letter-spacing: var(--wp--custom--letter-spacing--snug); hyphens: manual; overflow-wrap: break-word; }
.adepa-home-sol__title a { color: var(--wp--preset--color--ink); text-decoration: none; transition: color var(--wp--custom--motion--fast) linear; }
.adepa-home-sol__title a:hover { color: var(--wp--preset--color--brand-red); }
.adepa-home-sol__scope { margin-top: var(--wp--preset--spacing--20) !important; max-width: 52ch; font-size: var(--wp--preset--font-size--small); line-height: 1.55; color: var(--wp--preset--color--grey-700); }
.adepa-home-sol__action { grid-area: action; }
.adepa-home-sol__action, .adepa-home-sol__action a { white-space: nowrap; }
.adepa-home-sol::before { /* red rule grows on hover */
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 100%;
	height: 1px;
	background: var(--wp--preset--color--brand-red);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.5s var(--adepa-ease);
}
@media (hover: hover) {
	.adepa-home-sol:hover::before, .adepa-home-sol:focus-within::before { transform: scaleX(1); }
	.adepa-home-sol:hover .adepa-home-sol__media img { transform: scale(1.04); }
}
@media (min-width: 782px) {
	.adepa-home-sol {
		grid-template-columns: 3.5rem 13rem minmax(0, 1fr);
		grid-template-areas: "num media body" "num media action";
		column-gap: var(--wp--preset--spacing--50);
		align-items: start;
	}
	.adepa-home-sol__action { align-self: end; }
	.adepa-home-sol__title { font-size: var(--wp--preset--font-size--heading-3); }
	.adepa-home-sol__num { font-size: var(--wp--preset--font-size--heading-3); line-height: 1.15; }
}
@media (min-width: 782px) {
	/* aligned "Supplied" rows when the three entries sit side by side */
	.adepa-home-projects .adepa-home-project__name { min-height: 3.6em; }
}
@media (min-width: 1280px) {
	.adepa-home-projects .adepa-home-project__name { min-height: 2.4em; }
}
@media (min-width: 1280px) {
	.adepa-home-sol {
		grid-template-columns: 5rem 17rem minmax(0, 1fr) 13rem;
		grid-template-areas: "num media body action";
		align-items: center;
		padding-block: var(--wp--preset--spacing--40);
	}
	.adepa-home-sol__action { justify-self: end; align-self: center; }
	.adepa-home-sol__body { padding-right: var(--wp--preset--spacing--50); }
	.adepa-home-sol__num { align-self: start; padding-top: 0.4rem; }
}

/* =========================================================
 * 04 · Integrated Project Supply — convergence (charcoal)
 * 0.4.0: eyebrow + statement heading beside the copy (one row instead of two) to keep the band
 * prominent but not tall; graphic, benefit statement and caption unchanged.
 * ========================================================= */
.adepa-home-supply { padding-block: var(--wp--custom--section--md) var(--wp--preset--spacing--70); }
.adepa-home-supply__head { display: grid; gap: var(--wp--preset--spacing--50) var(--wp--preset--spacing--80); }
.adepa-home-supply__head > * { margin: 0; }
.adepa-home-supply__title { color: var(--wp--preset--color--white); }
.adepa-home-supply__copy > * { margin: 0; }
.adepa-home-supply__copy > * + * { margin-top: var(--wp--preset--spacing--40); }
.adepa-home-supply__copy .adepa-home-supply__lead { font-size: var(--wp--preset--font-size--heading-4); line-height: 1.45; color: var(--wp--preset--color--white); }
.adepa-home-supply__copy p { max-width: 54ch; }
.adepa-home-supply__copy .wp-block-buttons { margin-top: var(--wp--preset--spacing--50); }
.adepa-home-supply__head-title > * { margin: 0; }
@media (min-width: 1024px) {
	.adepa-home-supply__head { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; column-gap: var(--wp--preset--spacing--70); }
}
.adepa-home-supply__graphic { margin-top: var(--wp--preset--spacing--60) !important; }
.adepa-cv { margin: 0; }
.adepa-cv__svg { display: block; width: 100%; height: auto; overflow: visible; font-family: var(--wp--preset--font-family--rubik); }
.adepa-cv__svg.is-horizontal { display: none; }
.adepa-cv__svg.is-vertical { max-width: 420px; margin-inline: auto; }
@media (min-width: 1024px) {
	.adepa-cv__svg.is-horizontal { display: block; }
	.adepa-cv__svg.is-vertical { display: none; }
}
.adepa-cv__ring { fill: var(--wp--preset--color--charcoal); stroke: var(--wp--preset--color--grey-500); stroke-width: 1; }
.adepa-cv__core { fill: var(--wp--preset--color--brand-red-bright); }
.adepa-cv__flow { fill: none; stroke: var(--wp--preset--color--brand-red-bright); stroke-width: 2; stroke-linecap: round; }
.adepa-cv__trunk { fill: none; stroke: var(--wp--preset--color--brand-red-bright); stroke-width: 3; }
.adepa-cv__arrow { fill: none; stroke: var(--wp--preset--color--brand-red-bright); stroke-width: 2; stroke-linejoin: miter; }
.adepa-cv__index { fill: var(--wp--preset--color--grey-300); font-size: 12px; font-weight: 700; letter-spacing: 0.08em; }
.adepa-cv__label { fill: var(--wp--preset--color--white); font-size: 15px; font-weight: 600; letter-spacing: 0.06em; }
/* 0.4.3 mobile (viewBox 360 wide; drawn 320–390px): 13 / 12.5 units → ≥ 11.5 / 11.1px at 360, uppercase Rubik, measured tracking */
.adepa-cv__index.is-small { font-size: 12.5px; letter-spacing: 0.1em; }   /* grey-300 on charcoal 10.75:1 (brand red would be 4.19:1) */
.adepa-cv__label.is-small { font-size: 13px; line-height: 16px; letter-spacing: 0.05em; }
.adepa-cv__core.is-small { fill: var(--wp--preset--color--brand-red-bright); }
.adepa-cv__hub rect { fill: var(--wp--preset--color--brand-red); }
.adepa-cv__hub text { fill: var(--wp--preset--color--white); font-size: 26px; font-weight: 700; letter-spacing: 0.14em; }
.is-vertical .adepa-cv__hub text { font-size: 22px; }
.adepa-cv__target rect { fill: none; stroke: var(--wp--preset--color--white); stroke-width: 1; }
.adepa-cv__target text { fill: var(--wp--preset--color--white); font-size: 15px; font-weight: 700; letter-spacing: 0.12em; }
.adepa-cv__node image { transition: opacity 0.5s linear; }
.adepa-home-supply__benefits {
	display: grid;
	gap: 0;
	margin-top: var(--wp--preset--spacing--60) !important;
	border-top: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-supply__benefit {
	position: relative;
	margin: 0 !important;
	padding: var(--wp--preset--spacing--40) 0 var(--wp--preset--spacing--40) 1.75rem;
	font-size: var(--wp--preset--font-size--body-lg);
	font-weight: 500;
	line-height: 1.4;
	color: var(--wp--preset--color--white) !important;
	border-bottom: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-supply__benefit::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(var(--wp--preset--spacing--40) + 0.45em);
	width: 9px;
	height: 9px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1.5px solid var(--wp--preset--color--brand-red-bright);
}
@media (min-width: 782px) {
	.adepa-home-supply__benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.adepa-home-supply__benefit { border-bottom: 0; padding-right: var(--wp--preset--spacing--50); }
	.adepa-home-supply__benefit + .adepa-home-supply__benefit { border-left: 1px solid var(--wp--preset--color--charcoal-2); padding-left: calc(var(--wp--preset--spacing--50) + 1.75rem); }
	.adepa-home-supply__benefit + .adepa-home-supply__benefit::before { left: var(--wp--preset--spacing--50); }
}
.adepa-home-supply__foot { margin-top: var(--wp--preset--spacing--30) !important; }
.adepa-home-supply .adepa-graphic-caption { margin: 0; color: var(--wp--preset--color--grey-300); }
/* reveal (reveal.js): flows draw, nodes and hub follow */
.adepa-cv .adepa-draw { stroke-dasharray: 1; stroke-dashoffset: 0; transition: stroke-dashoffset 1s var(--adepa-ease); transition-delay: calc(var(--i, 0) * 70ms); }
.adepa-cv__node, .adepa-cv__hub, .adepa-cv__target, .adepa-cv__arrow, .adepa-cv__core { transition: opacity 0.5s linear; }
.adepa-reveal.is-pending .adepa-cv__node, .adepa-reveal.is-pending .adepa-cv__hub, .adepa-reveal.is-pending .adepa-cv__target, .adepa-reveal.is-pending .adepa-cv__arrow, .adepa-reveal.is-pending .adepa-cv__core { opacity: 0; }
.adepa-reveal.is-visible .adepa-cv__node { transition-delay: calc(var(--i, 0) * 70ms); }
.adepa-reveal.is-visible .adepa-cv__core { transition-delay: 300ms; }
.adepa-reveal.is-visible .adepa-cv__hub { transition-delay: 800ms; }
.adepa-reveal.is-visible .adepa-cv__trunk { transition-delay: 1000ms; }
.adepa-reveal.is-visible .adepa-cv__arrow, .adepa-reveal.is-visible .adepa-cv__target { transition-delay: 1250ms; }

/* =========================================================
 * R4 · Full manufacturer network, 14 names (reusable; was homepage section 8 — charcoal)
 * ========================================================= */
.adepa-home-network { padding-block: 0 var(--wp--custom--section--lg); }
.adepa-home-network__grid {
	display: grid;
	gap: var(--wp--preset--spacing--60);
	padding-top: var(--wp--custom--section--sm);
	border-top: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-network__grid > *, .adepa-home-network__head > *, .adepa-home-network__body > * { margin: 0; }
.adepa-home-network__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-network__statement {
	margin-top: var(--wp--preset--spacing--50) !important;
	max-width: 32ch;
	font-size: var(--wp--preset--font-size--heading-4);
	line-height: 1.4;
	color: var(--wp--preset--color--white) !important;
}
.adepa-home-network__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 !important;
	padding: 0 !important;
	border-top: 1px solid var(--wp--preset--color--grey-500);
}
.adepa-home-network__list > li {
	margin: 0;
	padding: 0.95rem 1rem 0.95rem 0;
	border-bottom: 1px solid var(--wp--preset--color--charcoal-2);
	font-size: var(--wp--preset--font-size--body-lg);
	font-weight: 500;
	line-height: 1.3;
	color: var(--wp--preset--color--white);
	transition: color var(--wp--custom--motion--base) linear;
}
.adepa-home-network__list > li:nth-child(even) { padding-left: 1rem; border-left: 1px solid var(--wp--preset--color--charcoal-2); }
.adepa-home-network__list:hover > li { color: var(--wp--preset--color--grey-300); }
.adepa-home-network__list:hover > li:hover { color: var(--wp--preset--color--white); }
.adepa-home-network__note {
	margin-top: var(--wp--preset--spacing--50) !important;
	max-width: 60ch;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.55;
	color: var(--wp--preset--color--grey-300) !important;
}
@media (min-width: 782px) {
	.adepa-home-network__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.adepa-home-network__list > li:nth-child(even) { padding-left: 0; border-left: 0; }
	.adepa-home-network__list > li:not(:nth-child(3n + 1)) { padding-left: 1.25rem; border-left: 1px solid var(--wp--preset--color--charcoal-2); }
}
@media (min-width: 1024px) {
	.adepa-home-network__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--wp--preset--spacing--80); }
	.adepa-home-network__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.adepa-home-network__list > li:not(:nth-child(3n + 1)) { padding-left: 0; border-left: 0; }
	.adepa-home-network__list > li:nth-child(even) { padding-left: 1.5rem; border-left: 1px solid var(--wp--preset--color--charcoal-2); }
	.adepa-home-network__list > li { padding-block: 1.1rem; font-size: var(--wp--preset--font-size--body); }
}
@media (min-width: 1280px) {
	.adepa-home-network__list > li { font-size: var(--wp--preset--font-size--heading-4); }
}

/* =========================================================
 * R7 · Selected Projects with supplied quantities (reusable; was homepage section 9)
 * ========================================================= */
.adepa-home-projects { padding-block: var(--wp--custom--section--md); }
.adepa-home-projects__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-projects__list { display: grid; gap: 0; margin-top: var(--wp--preset--spacing--70) !important; }
.adepa-home-project {
	position: relative;
	margin: 0 !important;
	padding: var(--wp--preset--spacing--50) 0 var(--wp--preset--spacing--60);
	border-top: 1px solid var(--wp--preset--color--grey-300);
}
.adepa-home-project::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 3rem;
	height: 2px;
	background: var(--wp--preset--color--brand-red);
}
.adepa-home-project > * { margin: 0; }
.adepa-home-project__country {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	color: var(--wp--preset--color--brand-red);
}
.adepa-home-project__name {
	margin-top: var(--wp--preset--spacing--30) !important;
	max-width: 18ch;
	font-size: var(--wp--preset--font-size--heading-3);
	line-height: 1.2;
}
.adepa-home-project__label {
	margin-top: var(--wp--preset--spacing--50) !important;
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	text-transform: uppercase;
	color: var(--wp--preset--color--grey-500);
}
.adepa-home-project__scope { margin-top: var(--wp--preset--spacing--20) !important; }
.adepa-home-project__item {
	margin: 0;
	padding-block: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--grey-700);
}
.adepa-home-project__item strong {
	display: block;
	margin-bottom: 0.15rem;
	font-size: var(--wp--preset--font-size--heading-3);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: var(--wp--custom--letter-spacing--heading);
	color: var(--wp--preset--color--ink);
	white-space: nowrap;
}
@media (min-width: 782px) {
	.adepa-home-projects__list { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--wp--preset--spacing--60); }
}
@media (min-width: 1280px) {
	/* W2-R1: the supplied quantities read as evidence figures */
	.adepa-home-project__item strong { font-size: var(--wp--preset--font-size--heading-2); margin-bottom: 0.3rem; }
	.adepa-home-project__item + .adepa-home-project__item { margin-top: var(--wp--preset--spacing--20); }
}

/* =========================================================
 * R5 · Experience Across Markets — map + list (reusable; was homepage section 10)
 * W2-R1: one connected composition.
 *  · Desktop ≥1024: heading + numbered markets + sectors in the left column; the map is the
 *    full-bleed moment, running to the viewport's right edge at ~60 % of the page width.
 *  · Phones: heading → map (full-bleed, zoomed to West Africa ↔ Türkiye ↔ Iraq so all seven
 *    markers and the origin stay legible) → 30+ note → numbered list → sectors.
 *  · Every list number is drawn as the same red numbered marker used on the map; hovering a
 *    list item highlights its country and marker, hovering a marker highlights its list item.
 * ========================================================= */
.adepa-home-markets {
	padding-block: var(--wp--custom--section--md);
	background: var(--wp--preset--color--grey-100);
	overflow-x: clip;
	--mk-gutter: max(var(--wp--style--root--padding-left, 20px), calc((100vw - var(--wp--style--global--wide-size)) / 2));
}
.adepa-home-markets__grid { display: grid; gap: var(--wp--preset--spacing--60); align-items: start; }
.adepa-home-markets__grid > *,
.adepa-home-markets__head > *,
.adepa-home-markets__map > *,
.adepa-home-markets__details > *,
.adepa-home-markets__group > * { margin: 0; }
.adepa-home-markets__title { font-size: var(--wp--preset--font-size--heading-1); max-width: 12ch; }
.adepa-home-markets__statement { margin-top: var(--wp--preset--spacing--40) !important; max-width: 40ch; font-size: var(--wp--preset--font-size--body-lg); line-height: 1.5; color: var(--wp--preset--color--grey-700); }
.adepa-home-markets__details { display: grid; gap: var(--wp--preset--spacing--50); }
.adepa-home-markets__label {
	padding-bottom: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	text-transform: uppercase;
	color: var(--wp--preset--color--grey-700);
	border-bottom: 2px solid var(--wp--preset--color--ink);
}
.adepa-home-markets__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: var(--wp--preset--spacing--40);
	margin: 0 !important;
	padding: 0 !important;
	counter-reset: adepa-market;
	list-style: none;
}
.adepa-home-markets__list > li {
	counter-increment: adepa-market;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0;
	padding-block: 0.7rem;
	border-bottom: 1px solid var(--wp--preset--color--grey-200);
	font-size: var(--wp--preset--font-size--heading-4);
	font-weight: 600;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
	transition: color var(--wp--custom--motion--base) linear;
}
/* the list number = the map marker (red disc, white numeral, white ring) */
.adepa-home-markets__list > li::before {
	content: counter(adepa-market, decimal-leading-zero);
	flex: none;
	display: grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: var(--wp--preset--color--brand-red);
	box-shadow: 0 0 0 2px var(--wp--preset--color--white);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1;
	color: var(--wp--preset--color--white);
	font-variant-numeric: tabular-nums;
	transition: background var(--wp--custom--motion--base) linear;
}
.adepa-home-markets__sectors {
	margin-top: var(--wp--preset--spacing--30) !important;
	max-width: 36ch;
	font-size: var(--wp--preset--font-size--heading-4);
	font-weight: 500;
	line-height: 1.55;
	letter-spacing: var(--wp--custom--letter-spacing--snug);
	color: var(--wp--preset--color--ink);
}
.adepa-home-markets__note {
	position: relative;
	margin-top: var(--wp--preset--spacing--30) !important;
	padding-left: 1.5rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 600;
	line-height: 1.45;
	color: var(--wp--preset--color--ink);
}
.adepa-home-markets__note::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.4em;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--wp--preset--color--brand-red);
}
.adepa-map { margin: 0; }
.adepa-map__svg { display: block; width: 100%; height: auto; font-family: var(--wp--preset--font-family--rubik); }
.adepa-map__grat path { fill: none; stroke: var(--wp--preset--color--grey-300); stroke-width: 0.6; stroke-dasharray: 2 5; }
.adepa-map__land { fill: var(--wp--preset--color--grey-200); stroke: var(--wp--preset--color--grey-100); stroke-width: 0.8; stroke-linejoin: round; }
.adepa-map__land.is-market { fill: var(--wp--preset--color--charcoal); transition: fill var(--wp--custom--motion--base) linear; }
.adepa-map__land.is-origin { fill: var(--wp--preset--color--white); stroke: var(--wp--preset--color--brand-red); stroke-width: 1; }
.adepa-map__marker circle { fill: var(--wp--preset--color--brand-red); stroke: var(--wp--preset--color--white); stroke-width: 2; transition: fill var(--wp--custom--motion--base) linear; }
.adepa-map__num { fill: var(--wp--preset--color--white); font-size: 12px; font-weight: 700; letter-spacing: 0.02em; }
.adepa-map__name { fill: var(--wp--preset--color--ink); font-size: 14px; font-weight: 600; paint-order: stroke; stroke: var(--wp--preset--color--grey-100); stroke-width: 4px; stroke-linejoin: round; }
.adepa-map__origin rect { fill: var(--wp--preset--color--brand-red); }
.adepa-map__origin-name { fill: var(--wp--preset--color--ink); font-size: 13px; font-weight: 700; letter-spacing: 0.08em; paint-order: stroke; stroke: var(--wp--preset--color--grey-100); stroke-width: 4px; }
.adepa-map__origin-city { fill: var(--wp--preset--color--grey-700); font-size: 12px; paint-order: stroke; stroke: var(--wp--preset--color--grey-100); stroke-width: 4px; }
/* list ↔ map, both directions (progressive, :has) */
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(1):hover, .adepa-map__marker.is-m-ghana:hover) :is(.adepa-map__land.is-m-ghana, .adepa-map__marker.is-m-ghana circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(2):hover, .adepa-map__marker.is-m-nigeria:hover) :is(.adepa-map__land.is-m-nigeria, .adepa-map__marker.is-m-nigeria circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(3):hover, .adepa-map__marker.is-m-iraq:hover) :is(.adepa-map__land.is-m-iraq, .adepa-map__marker.is-m-iraq circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(4):hover, .adepa-map__marker.is-m-jordan:hover) :is(.adepa-map__land.is-m-jordan, .adepa-map__marker.is-m-jordan circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(5):hover, .adepa-map__marker.is-m-kenya:hover) :is(.adepa-map__land.is-m-kenya, .adepa-map__marker.is-m-kenya circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(6):hover, .adepa-map__marker.is-m-ethiopia:hover) :is(.adepa-map__land.is-m-ethiopia, .adepa-map__marker.is-m-ethiopia circle),
.adepa-home-markets:has(.adepa-home-markets__list > li:nth-child(7):hover, .adepa-map__marker.is-m-angola:hover) :is(.adepa-map__land.is-m-angola, .adepa-map__marker.is-m-angola circle) { fill: var(--wp--preset--color--brand-red-dark); }
.adepa-home-markets:has(.adepa-map__marker.is-m-ghana:hover) .adepa-home-markets__list > li:nth-child(1),
.adepa-home-markets:has(.adepa-map__marker.is-m-nigeria:hover) .adepa-home-markets__list > li:nth-child(2),
.adepa-home-markets:has(.adepa-map__marker.is-m-iraq:hover) .adepa-home-markets__list > li:nth-child(3),
.adepa-home-markets:has(.adepa-map__marker.is-m-jordan:hover) .adepa-home-markets__list > li:nth-child(4),
.adepa-home-markets:has(.adepa-map__marker.is-m-kenya:hover) .adepa-home-markets__list > li:nth-child(5),
.adepa-home-markets:has(.adepa-map__marker.is-m-ethiopia:hover) .adepa-home-markets__list > li:nth-child(6),
.adepa-home-markets:has(.adepa-map__marker.is-m-angola:hover) .adepa-home-markets__list > li:nth-child(7),
.adepa-home-markets__list > li:hover { color: var(--wp--preset--color--brand-red); }

/* Phones: full-bleed, zoomed framing (viewBox x 118–576, y 30–612 of 720 × 641). The SVG is
   scaled to 157 % of the frame and offset, so markers and labels render ~1.2× the desktop
   column size instead of a 45 % miniature. Markers and names are enlarged a little more. */
@media (max-width: 599.98px) {
	.adepa-home-markets__map { margin-inline: calc(-1 * var(--wp--style--root--padding-left, 20px)) !important; }
	.adepa-map { aspect-ratio: 458 / 582; overflow: hidden; }
	.adepa-map__svg { width: 157.2%; max-width: none; margin: -6.55% 0 0 -25.76%; }
	.adepa-home-markets__note { margin-inline: var(--wp--style--root--padding-left, 20px) !important; }
	.adepa-map__marker circle { r: 17px; }
	.adepa-map__num { font-size: 13.5px; }
	.adepa-map__name { font-size: 16px; }
	.adepa-map__origin-name { font-size: 15px; }
	.adepa-map__origin-city { font-size: 14px; }
	.adepa-home-markets__list > li { font-size: var(--wp--preset--font-size--body-lg); }
}
@media (min-width: 600px) and (max-width: 1023.98px) {
	.adepa-home-markets__map { margin-inline: calc(-1 * var(--wp--style--root--padding-left, 20px)) !important; }
	.adepa-home-markets__note { margin-inline: var(--wp--style--root--padding-left, 20px) !important; }
}
@media (min-width: 1024px) {
	.adepa-home-markets__grid {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
		grid-template-rows: auto 1fr;
		column-gap: var(--wp--preset--spacing--60);
		row-gap: var(--wp--preset--spacing--60);
		align-items: start;
	}
	.adepa-home-markets__head { grid-column: 1; grid-row: 1; }
	.adepa-home-markets__details { grid-column: 1; grid-row: 2; }
	.adepa-home-markets__map {
		grid-column: 2;
		grid-row: 1 / span 2;
		align-self: center;
		margin-right: calc(-1 * var(--mk-gutter)) !important;
	}
	.adepa-home-markets__note { margin-right: var(--mk-gutter) !important; }
	.adepa-home-markets__list { column-gap: var(--wp--preset--spacing--50); }
}

/* =========================================================
 * R3 · From Requirement to Delivery (reusable; approved pattern in section spacing)
 * ========================================================= */
.adepa-home-process { padding-block: var(--wp--custom--section--md); }
.adepa-home-process > .adepa-process { margin-block: 0 !important; }
.adepa-home-process .adepa-process__head h2 { font-size: var(--wp--preset--font-size--heading-1); }

/* =========================================================
 * R6 · Engineering Insights Query Loop (reusable)
 * ========================================================= */
.adepa-home-insights { padding-block: var(--wp--custom--section--sm) var(--wp--custom--section--md); }
.adepa-home-insights__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-insights__head-copy > * { margin: 0; }
.adepa-home-insights__intro { max-width: 46ch; font-size: var(--wp--preset--font-size--body-lg); line-height: 1.5; color: var(--wp--preset--color--grey-700); }
.adepa-home-insights__head-copy .wp-block-buttons { margin-top: var(--wp--preset--spacing--40); }
.adepa-home-insights__query { margin-top: var(--wp--preset--spacing--60) !important; }
.adepa-home-insights__list { gap: var(--wp--preset--spacing--50) !important; margin: 0; padding: 0; list-style: none; }
.adepa-home-insights__list > li { margin: 0; }
.adepa-home-insight { height: 100%; padding-top: var(--wp--preset--spacing--40); border-top: 2px solid var(--wp--preset--color--ink); }
.adepa-home-insight > * { margin: 0; }
.adepa-home-insight > * + * { margin-top: var(--wp--preset--spacing--30); }
.adepa-home-insight__title { font-size: var(--wp--preset--font-size--heading-4); line-height: 1.25; }
.adepa-home-insight__title a { color: var(--wp--preset--color--ink); text-decoration: none; }
.adepa-home-insight__title a:hover { color: var(--wp--preset--color--brand-red); }
.adepa-home-insight__excerpt, .adepa-home-insight__excerpt p { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--grey-700); }
@media (max-width: 781.98px) {
	.adepa-home-insights__list.is-layout-grid { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (min-width: 782px) and (max-width: 1023.98px) {
	.adepa-home-insights__list.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
/* Empty state: honest, designed, no placeholder articles */
.adepa-home-insights__empty {
	display: grid;
	gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--50) 0 0;
	border-top: 2px solid var(--wp--preset--color--ink);
}
.adepa-home-insights__empty > * { margin: 0 !important; }
.adepa-home-insights__soon {
	display: inline-flex;
	align-items: center;
	gap: 0.75em;
	font-size: var(--wp--preset--font-size--heading-4);
	font-weight: 600;
	color: var(--wp--preset--color--ink);
}
.adepa-home-insights__soon::before {
	content: "";
	flex: none;
	width: 9px;
	height: 9px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1.5px solid var(--wp--preset--color--brand-red);
}
.adepa-home-insights__label {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	text-transform: uppercase;
	color: var(--wp--preset--color--grey-500);
}
.adepa-home-insights__topics {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20);
	margin: 0 !important;
	padding: 0 !important;
}
.adepa-home-insights__topics > li {
	margin: 0;
	padding: 0.55rem 0.9rem;
	border: 1px solid var(--wp--preset--color--grey-300);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	color: var(--wp--preset--color--ink);
}
@media (min-width: 1024px) {
	.adepa-home-insights__empty { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-rows: auto auto; }
	.adepa-home-insights__soon { grid-row: 1 / span 2; align-self: start; }
	.adepa-home-insights__label { grid-column: 2; }
	.adepa-home-insights__topics { grid-column: 2; }
}

/* =========================================================
 * 05 · Selected Projects & International Experience (0.4.0)
 * Head 7/5 · three typographic entries (country, project, equipment type; no quantities, photos or
 * map) under a hairline with the red stub · the international statement + text link on one rule.
 * ========================================================= */
.adepa-home-exp { padding-block: var(--wp--custom--section--md); }
.adepa-home-exp__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-exp__head-title > * { margin: 0; }
.adepa-home-exp__intro { max-width: 42ch; font-size: var(--wp--preset--font-size--body-lg); line-height: 1.55; color: var(--wp--preset--color--grey-700); }
.adepa-home-exp__list { display: grid; margin-top: var(--wp--preset--spacing--60) !important; }
.adepa-home-exp__entry {
	position: relative;
	margin: 0 !important;
	padding: var(--wp--preset--spacing--40) 0 var(--wp--preset--spacing--50);
	border-top: 1px solid var(--wp--preset--color--grey-300);
}
.adepa-home-exp__entry::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	width: 3rem;
	height: 2px;
	background: var(--wp--preset--color--brand-red);
}
.adepa-home-exp__entry > * { margin: 0; }
.adepa-home-exp__country {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: var(--wp--custom--letter-spacing--label);
	color: var(--wp--preset--color--brand-red);
}
.adepa-home-exp__name { margin-top: var(--wp--preset--spacing--20) !important; max-width: 20ch; font-size: var(--wp--preset--font-size--heading-3); line-height: 1.2; }
.adepa-home-exp__equipment { margin-top: var(--wp--preset--spacing--30) !important; font-size: var(--wp--preset--font-size--body); font-weight: 500; line-height: 1.45; color: var(--wp--preset--color--grey-700); }
.adepa-home-exp__foot {
	display: grid;
	gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--60);
	margin-top: var(--wp--preset--spacing--30) !important;
	padding-top: var(--wp--preset--spacing--50);
	border-top: 1px solid var(--wp--preset--color--grey-200);
}
.adepa-home-exp__foot > * { margin: 0 !important; }
.adepa-home-exp__statement { max-width: 46ch; font-size: var(--wp--preset--font-size--heading-4); font-weight: 500; line-height: 1.4; color: var(--wp--preset--color--ink); }
@media (min-width: 782px) {
	.adepa-home-exp__list { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--wp--preset--spacing--60); }
	.adepa-home-exp__foot { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
}

/* =========================================================
 * 06 · Supply Network — six names (0.4.0)
 * Warm grey; head | copy, then the six names as one monochrome type line (no logos, no marquee,
 * not links, no partnership wording). Phones: 2 × 3 index; ≥782: 3 × 2; ≥1024: one line.
 * ========================================================= */
.adepa-home-brands { padding-block: var(--wp--custom--section--md); background: var(--wp--preset--color--grey-100); }
.adepa-home-brands__grid { display: grid; gap: var(--wp--preset--spacing--50); }
.adepa-home-brands__grid > *, .adepa-home-brands__head > *, .adepa-home-brands__copy > * { margin: 0; }
.adepa-home-brands__title { font-size: var(--wp--preset--font-size--heading-1); }
.adepa-home-brands__lead { max-width: 54ch; font-size: var(--wp--preset--font-size--body-lg); line-height: 1.55; color: var(--wp--preset--color--ink); }
.adepa-home-brands__note { margin-top: var(--wp--preset--spacing--30) !important; max-width: 60ch; color: var(--wp--preset--color--grey-700); }
.adepa-home-brands__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: var(--wp--preset--spacing--20) !important;
	padding: 0 !important;
	border-top: 2px solid var(--wp--preset--color--ink);
	border-bottom: 1px solid var(--wp--preset--color--grey-300);
}
.adepa-home-brands__list > li {
	margin: 0;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--30) var(--wp--preset--spacing--40) 0;
	font-size: var(--wp--preset--font-size--heading-4);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: var(--wp--custom--letter-spacing--snug);
	color: var(--wp--preset--color--ink);
}
.adepa-home-brands__list > li:nth-child(n + 3) { border-top: 1px solid var(--wp--preset--color--grey-300); }
.adepa-home-brands__list > li:nth-child(even) { padding-left: var(--wp--preset--spacing--30); border-left: 1px solid var(--wp--preset--color--grey-300); }
@media (min-width: 782px) {
	.adepa-home-brands__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.adepa-home-brands__list > li:nth-child(n) { padding-left: 0; border-left: 0; border-top: 0; }
	.adepa-home-brands__list > li:nth-child(n + 4) { border-top: 1px solid var(--wp--preset--color--grey-300); }
	.adepa-home-brands__list > li:not(:nth-child(3n + 1)) { padding-left: var(--wp--preset--spacing--40); border-left: 1px solid var(--wp--preset--color--grey-300); }
}
@media (min-width: 1024px) {
	/* 7/5: the two-line heading keeps its spec line break ("Global Technology. / Türkiye Sourcing.") */
	.adepa-home-brands__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--wp--preset--spacing--70); align-items: end; }
	.adepa-home-brands__list, .adepa-home-brands__foot { grid-column: 1 / -1; }
	.adepa-home-brands__list { display: flex; flex-wrap: wrap; margin-top: var(--wp--preset--spacing--30) !important; } /* 0.4.4 A7: wraps only when the names no longer fit (150% text at 1024–1280); one row at 100% as before */
	.adepa-home-brands__list > li:nth-child(n) { flex: 1 1 auto; padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--30) var(--wp--preset--spacing--50) var(--wp--preset--spacing--40); border-top: 0; border-left: 1px solid var(--wp--preset--color--grey-300); white-space: nowrap; }
	.adepa-home-brands__list > li:first-child { padding-left: 0; border-left: 0; }
}
@media (min-width: 1280px) {
	.adepa-home-brands__list > li:nth-child(n) { font-size: var(--wp--preset--font-size--heading-3); }
}

/* =========================================================
 * 07 · Final commercial closer (flows into the footer)
 * 0.4.0: anchor #rfq (target of the on-page RFQ CTAs); the primary button is a mailto action and a
 * secondary "Or email" line sits beneath it until the RFQ workflow exists.
 * ========================================================= */
.adepa-home-closer { padding-block: var(--wp--custom--section--lg) var(--wp--custom--section--md); }
.adepa-home-closer__inner {
	position: relative;
	display: grid;
	gap: var(--wp--preset--spacing--50) var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--custom--section--sm);
	border-bottom: 1px solid var(--wp--preset--color--charcoal-2);
}
.adepa-home-closer__inner > *, .adepa-home-closer__statement > *, .adepa-home-closer__action > * { margin: 0; }
.adepa-home-closer__title { max-width: 14ch; color: var(--wp--preset--color--white); }
.adepa-home-closer__response {
	display: flex;
	align-items: center;
	gap: 0.75em;
	margin-top: var(--wp--preset--spacing--40) !important;
	font-size: var(--wp--preset--font-size--heading-3);
	font-weight: 700; /* 700 keeps brand-red-bright on charcoal (4.19:1) in the WCAG "large text" band at every width */
	line-height: 1.2;
	color: var(--wp--preset--color--brand-red-bright) !important;
}
.adepa-home-closer__response::before {
	content: "";
	flex: none;
	width: 2.5rem;
	height: 2px;
	background: var(--wp--preset--color--brand-red-bright);
}
.adepa-home-closer__copy { max-width: 46ch; font-size: var(--wp--preset--font-size--body-lg); line-height: 1.55; color: var(--wp--preset--color--grey-300) !important; }
.adepa-home-closer__action .wp-block-buttons { margin-top: var(--wp--preset--spacing--50); }
.adepa-home-closer__action .adepa-home-closer__email { margin-top: var(--wp--preset--spacing--30); font-size: var(--wp--preset--font-size--small); line-height: 1.5; color: var(--wp--preset--color--grey-300) !important; }
.adepa-home-closer__email a { color: var(--wp--preset--color--white); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.adepa-home-closer__email a:hover { text-decoration-thickness: 2px; }
/* the line ends in a node on the closing hairline (echo of the footer motif) */
.adepa-home-closer__inner::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: min(33%, 26rem);
	height: 2px;
	background: var(--wp--preset--color--brand-red-bright);
}
.adepa-home-closer__inner::before {
	content: "";
	position: absolute;
	left: min(33%, 26rem);
	bottom: -6px;
	width: 12px;
	height: 12px;
	margin-left: -6px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 2px solid var(--wp--preset--color--brand-red-bright);
	background: var(--wp--preset--color--charcoal);
}
@media (min-width: 1024px) {
	.adepa-home-closer__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; }
}
/* the footer continues the closer's environment (its RFQ band is not rendered here) */
.adepa-has-home-closer .adepa-footer { padding-top: var(--wp--preset--spacing--70); }

/* =========================================================
 * Reduced motion (reveal.js never runs; transitions off)
 * ========================================================= */
@media (prefers-reduced-motion: reduce) {
	[class*="adepa-home-"] *,
	[class*="adepa-home-"] *::before,
	[class*="adepa-home-"] *::after { transition: none !important; animation: none !important; }
	.adepa-home-sol:hover .adepa-home-sol__media img { transform: none; }
}

/* Editor: show everything static */
.editor-styles-wrapper .adepa-home-hero__grid { min-height: 0; }
/* Mobile convergence (0.4.3): connectors are routed clear of all text (explicit segments), so the 0.3.x text
   "knock-out" halo (paint-order stroke) is gone — nothing relies on masking any more. */
@media (min-width: 1280px) {
	.adepa-home-ptp__title { font-size: var(--wp--preset--font-size--body); letter-spacing: 0.04em; overflow-wrap: normal; }
}
