/*
 * Jager Phase 2 — Lovable fidelity layer
 *
 * Visual reference: hansjooseptammerik/dutch-logistics-brilliance
 * pinned commit 0bc015524ddcb2a8d161e6b5719aa18a6603d2bb.
 *
 * This file changes presentation only. WordPress/WPML content, media and CF7
 * remain the source of truth.
 */

/* -------------------------------------------------------------------------
   Theme reset for code-rendered Phase 2 pages
   ------------------------------------------------------------------------- */

body.jager-phase2-page {
	--jp2-header-height: 68px;
	font-family: "DM Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.jager-phase2-page *,
body.jager-phase2-page *::before,
body.jager-phase2-page *::after {
	box-sizing: border-box;
}

/*
 * Hello Elementor can render its own empty/legacy header around the custom
 * Phase 2 template. The real Jager header is .jhr-header, rendered from
 * wp_body_open. Removing the legacy chrome lets the fixed header sit directly
 * on top of the hero, exactly like the Lovable source.
 */
body.jager-phase2-page #site-header,
body.jager-phase2-page header.site-header:not(.jhr-header),
body.jager-phase2-page .site-header:not(.jhr-header),
body.jager-phase2-page .elementor-location-header,
body.jager-phase2-page .hfe-site-header,
body.jager-phase2-page #site-footer,
body.jager-phase2-page footer.site-footer:not(.jhr-footer),
body.jager-phase2-page .site-footer:not(.jhr-footer),
body.jager-phase2-page .elementor-location-footer,
body.jager-phase2-page .hfe-site-footer,
body.jager-phase2-page .page-header {
	display: none !important;
}

body.jager-phase2-page #content,
body.jager-phase2-page .site-main,
body.jager-phase2-page main#jhr-main {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.jager-phase2-page .jp2-page h1,
body.jager-phase2-page .jp2-page h2,
body.jager-phase2-page .jp2-page h3,
body.jager-phase2-page .jhr-footer h2,
body.jager-phase2-page .jhr-footer h3 {
	font-family: "Manrope", ui-sans-serif, system-ui, sans-serif;
	font-weight: 800;
	letter-spacing: -0.03em;
}

body.jager-phase2-page .jhr-header,
body.jager-phase2-page .jhr-footer,
body.jager-phase2-page .jhr-mobile-menu {
	font-family: "DM Sans", ui-sans-serif, system-ui, sans-serif;
}

/* Tailwind max-w-7xl + px-5 / lg:px-8 semantics. */
body.jager-phase2-page .jp2-container,
body.jager-phase2-page .jhr-container {
	box-sizing: border-box;
	width: 100%;
	max-width: 1280px;
	margin-inline: auto;
	padding-inline: 20px;
}

/* -------------------------------------------------------------------------
   Shared fixed header — transparent on media heroes, glass/solid after scroll
   ------------------------------------------------------------------------- */

body.jager-phase2-page .jhr-header {
	position: fixed !important;
	inset: 0 0 auto !important;
	z-index: 999;
}

body.admin-bar.jager-phase2-page .jhr-header {
	top: 32px !important;
}

body.jager-phase2-page .jhr-header__inner {
	min-height: var(--jp2-header-height);
	gap: 16px;
}

body.jager-phase2-page .jhr-brand__plate {
	min-height: 44px;
	padding: 5px 9px;
	border-radius: 14px;
}

body.jager-phase2-page .jhr-brand__plate img {
	width: auto;
	height: 30px;
}

body.jager-phase2-page .jhr-desktop-nav {
	gap: 2px;
}

body.jager-phase2-page .jhr-desktop-nav > a,
body.jager-phase2-page .jhr-nav-dropdown > button {
	min-height: 36px;
	padding: 8px 13px;
	font-size: 13.5px;
	font-weight: 500;
}

body.jager-phase2-page .jhr-language {
	margin-left: 8px;
	padding: 2px;
}

body.jager-phase2-page .jhr-language a {
	min-width: 32px;
	height: 28px;
	font-size: 12px;
	font-weight: 600;
}

/* Hero page header state. Keep every menu item legible before scrolling. */
body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-header__surface {
	border-bottom-color: transparent !important;
	background: transparent !important;
	box-shadow: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button {
	color: rgba(255, 255, 255, 0.86) !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a:hover,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown > button:hover {
	background: rgba(255, 255, 255, 0.12) !important;
	color: #fff !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-desktop-nav > a.is-current,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-nav-dropdown.is-current > button {
	color: #fff !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language {
	background: rgba(255, 255, 255, 0.12) !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a {
	color: rgba(255, 255, 255, 0.72) !important;
}

body.jager-phase2-page.jager-p2-type-assortiment .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active,
body.jager-phase2-page.jager-p2-type-ibcs .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active,
body.jager-phase2-page.jager-p2-type-pallets .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active,
body.jager-phase2-page.jager-p2-type-vaten .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active,
body.jager-phase2-page.jager-p2-type-cleaning .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active,
body.jager-phase2-page.jager-p2-type-about .jhr-header:not(.is-scrolled):not(.is-menu-open) .jhr-language a.is-active {
	background: #fff !important;
	color: var(--jhr-navy) !important;
}

/* -------------------------------------------------------------------------
   Hero geometry and type
   ------------------------------------------------------------------------- */

body.jager-phase2-page .jp2-hero {
	min-height: 74svh;
}

body.jager-phase2-page.jager-p2-type-about .jp2-hero {
	min-height: 78svh;
}

body.jager-phase2-page.jager-p2-type-cleaning .jp2-hero {
	min-height: 86svh;
}

body.jager-phase2-page .jp2-hero__media > div {
	background: rgba(0, 26, 78, 0.62);
}

body.jager-phase2-page .jp2-hero__content {
	padding-block: 144px 64px;
}

body.jager-phase2-page .jp2-eyebrow {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3em;
}

body.jager-phase2-page .jp2-hero h1 {
	margin-top: 20px;
	max-width: 768px;
	font-size: clamp(2.6rem, 7vw, 5rem);
	line-height: 0.95;
}

body.jager-phase2-page .jp2-hero__content > p:last-child {
	margin-top: 24px;
	max-width: 672px;
	font-size: 18px;
	line-height: 1.625;
}

/* -------------------------------------------------------------------------
   Shared inner-page layout
   ------------------------------------------------------------------------- */

body.jager-phase2-page .jp2-section {
	padding-block: 64px;
}

body.jager-phase2-page.jager-p2-type-about .jp2-section,
body.jager-phase2-page.jager-p2-type-cleaning .jp2-section {
	padding-block: 80px;
}

body.jager-phase2-page .jp2-split {
	gap: 40px;
}

body.jager-phase2-page .jp2-copy h2 {
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	line-height: 1.05;
}

body.jager-phase2-page .jp2-copy > p:not(.jp2-badge) {
	margin-top: 20px;
	font-size: 17px;
	line-height: 1.625;
}

body.jager-phase2-page .jp2-section-title {
	margin-top: 20px !important;
	max-width: 672px;
	font-size: clamp(2rem, 4.5vw, 3.2rem);
	line-height: 1.02;
}

body.jager-phase2-page .jp2-product-media {
	min-height: 0;
	padding: 24px;
	border-radius: 36px;
	background: rgba(244, 246, 250, 0.72);
	box-shadow: none;
}

body.jager-phase2-page .jp2-product-media img {
	width: 100%;
	max-width: 448px;
	max-height: none;
	margin-inline: auto;
	padding: 0;
	object-fit: contain;
}

body.jager-phase2-page .jp2-process-media {
	min-height: 0;
	aspect-ratio: 4 / 3;
	border-radius: 36px;
	box-shadow: none;
}

body.jager-phase2-page .jp2-process-media img,
body.jager-phase2-page .jp2-process-media video {
	min-height: 0;
	height: 100%;
	object-fit: cover;
}

body.jager-phase2-page .jp2-list {
	margin-top: 28px;
}

body.jager-phase2-page .jp2-list li {
	padding-block: 12px;
	font-size: 15px;
	line-height: 1.5;
}

body.jager-phase2-page .jp2-button {
	padding: 12px 24px;
	font-size: 15px;
	font-weight: 600;
}

body.jager-phase2-page .jp2-quality__grid {
	gap: 48px;
}

body.jager-phase2-page .jp2-quality article h3 {
	font-size: clamp(1.5rem, 3vw, 2rem);
}

body.jager-phase2-page .jp2-quality article p {
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.625;
}

body.jager-phase2-page .jp2-card-grid {
	gap: 24px;
}

body.jager-phase2-page .jp2-card {
	border-radius: 30px;
	box-shadow: none;
}

body.jager-phase2-page .jp2-card h2 {
	font-size: 28px;
}

/* Cleaning process grid. */
body.jager-phase2-page .jp2-steps {
	margin-top: 56px;
	padding: 0;
	gap: 1px;
	border: 1px solid var(--jhr-border);
	border-radius: 32px;
	background: var(--jhr-border);
}

body.jager-phase2-page .jp2-steps li {
	min-height: 0;
	padding: 32px;
}

body.jager-phase2-page .jp2-steps li > span {
	font-family: "Manrope", ui-sans-serif, system-ui, sans-serif;
	font-size: 36px;
	font-weight: 800;
	letter-spacing: -0.03em;
}

body.jager-phase2-page .jp2-steps h3 {
	margin-top: 20px;
	font-size: 18px;
	line-height: 1.25;
}

body.jager-phase2-page .jp2-steps p {
	margin-top: 8px;
	font-size: 15px;
	line-height: 1.625;
}

/* About page. */
body.jager-phase2-page .jp2-history {
	grid-template-columns: 0.85fr 1.15fr;
	gap: 56px;
}

body.jager-phase2-page .jp2-history > div h2 {
	margin-top: 20px;
	font-size: clamp(2rem, 4.5vw, 3.2rem);
	line-height: 1.02;
}

body.jager-phase2-page.jager-p2-type-about .jp2-section--soft .jp2-product-media {
	display: block;
	min-height: 0;
	padding: 0;
	border-radius: 36px;
	background: transparent;
	box-shadow: none;
}

body.jager-phase2-page.jager-p2-type-about .jp2-section--soft .jp2-product-media img {
	width: 100%;
	max-width: none;
	height: auto;
	padding: 0;
	object-fit: cover;
	mix-blend-mode: normal;
}

body.jager-phase2-page.jager-p2-type-about .jp2-copy h2,
body.jager-phase2-page.jager-p2-type-cleaning .jp2-copy h2 {
	font-size: clamp(2rem, 4.5vw, 3.2rem);
	line-height: 1.02;
}

body.jager-phase2-page .jp2-badge {
	padding: 6px 16px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2em;
}

/* -------------------------------------------------------------------------
   Contact and request
   ------------------------------------------------------------------------- */

body.jager-phase2-page .jp2-contact {
	padding: 128px 0 56px;
}

body.jager-phase2-page .jp2-contact__grid {
	grid-template-columns: 0.9fr 1.1fr;
	gap: 48px;
}

body.jager-phase2-page .jp2-contact__intro h1,
body.jager-phase2-page .jp2-request__intro h1 {
	margin-top: 16px;
	font-size: clamp(2.4rem, 6vw, 4rem);
	line-height: 0.95;
}

body.jager-phase2-page .jp2-contact__intro > p:not(.jp2-eyebrow):not(.jp2-hours),
body.jager-phase2-page .jp2-request__intro > p:not(.jp2-eyebrow) {
	margin-top: 24px;
	max-width: 448px;
	font-size: 18px;
	line-height: 1.625;
}

body.jager-phase2-page .jp2-contact-list {
	margin-top: 40px;
}

/* Lovable-style icon circle, two-line detail and arrow — no content changes. */
body.jager-phase2-page .jp2-contact-list a {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 16px;
	grid-template-rows: auto auto;
	align-items: center;
	column-gap: 20px;
	padding: 20px 0;
}

body.jager-phase2-page .jp2-contact-list a::before {
	content: "";
	grid-column: 1;
	grid-row: 1 / 3;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: rgba(6, 37, 111, 0.05);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 18px 18px;
	transition: background-color 180ms ease;
}

body.jager-phase2-page .jp2-contact-list a:nth-child(1)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2306256f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 4.5 6 3 3.5 5.5c.7 7.5 6.5 13.3 14 14L20 17l-1.5-2.5-3 1.2a13.8 13.8 0 0 1-7.2-7.2l1.2-3Z'/%3E%3C/svg%3E");
}

body.jager-phase2-page .jp2-contact-list a:nth-child(2)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2306256f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E");
}

body.jager-phase2-page .jp2-contact-list a:nth-child(3)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2306256f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

body.jager-phase2-page .jp2-contact-list a::after {
	content: "→";
	grid-column: 3;
	grid-row: 1 / 3;
	color: rgba(6, 37, 111, 0.4);
	font-size: 18px;
	transition: transform 180ms ease, color 180ms ease;
}

body.jager-phase2-page .jp2-contact-list a:hover::before {
	background-color: rgba(255, 149, 24, 0.16);
}

body.jager-phase2-page .jp2-contact-list a:hover::after {
	color: var(--jhr-orange);
	transform: translateX(3px);
}

body.jager-phase2-page .jp2-contact-list small {
	grid-column: 2;
	grid-row: 1;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.2em;
}

body.jager-phase2-page .jp2-contact-list strong {
	grid-column: 2;
	grid-row: 2;
	font-family: "Manrope", ui-sans-serif, system-ui, sans-serif;
	font-size: 17px;
	font-weight: 700;
}

body.jager-phase2-page .jp2-form {
	padding-left: 0;
	border-left: 0;
	border-top: 1px solid var(--jhr-border);
	padding-top: 40px;
}

body.jager-phase2-page .jp2-form h2 {
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	line-height: 1.1;
}

body.jager-phase2-page .jp2-form > p {
	margin-top: 8px;
	font-size: 15px;
	line-height: 1.55;
}

body.jager-phase2-page .jp2-form .wpcf7 {
	margin-top: 40px;
}

/* CF7 hidden metadata is a fieldset in current CF7; suppress browser border. */
body.jager-phase2-page .jp2-form fieldset.hidden-fields-container,
body.jager-phase2-page .jp2-form .wpcf7-form > fieldset[hidden],
body.jager-phase2-page .jp2-form .wpcf7-form > input[type="hidden"] {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.jager-phase2-page .jp2-form .jager-contact-form,
body.jager-phase2-page .jp2-form .jager-request-form {
	display: block;
}

body.jager-phase2-page .jp2-form .form-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
}

body.jager-phase2-page .jp2-form .form-row + .form-row {
	margin-top: 24px;
}

body.jager-phase2-page .jp2-form .form-group.full-width {
	grid-column: 1 / -1;
}

body.jager-phase2-page .jp2-form label {
	margin-top: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

body.jager-phase2-page .jp2-form input[type="hidden"] {
	display: none !important;
}

body.jager-phase2-page .jp2-form input:not([type="submit"]):not([type="hidden"]),
body.jager-phase2-page .jp2-form textarea,
body.jager-phase2-page .jp2-form select {
	margin-top: 8px;
	padding: 10px 0;
	font-family: "DM Sans", ui-sans-serif, system-ui, sans-serif;
	font-size: 16px;
	line-height: 1.5;
}

body.jager-phase2-page .jp2-form textarea {
	min-height: 128px;
	resize: vertical;
}

body.jager-phase2-page .jp2-form input[type="submit"],
body.jager-phase2-page .jp2-form .wpcf7-submit {
	margin-top: 40px;
	padding: 14px 28px;
	font-size: 15px;
	font-weight: 600;
}

body.jager-phase2-page .jp2-request {
	padding: 128px 0 80px;
}

body.jager-phase2-page .jp2-request > .jp2-container {
	gap: 48px;
}

/* CTA scale. */
body.jager-phase2-page .jp2-cta {
	min-height: 0;
}

body.jager-phase2-page .jp2-cta__content {
	max-width: 768px;
	padding-block: 96px;
}

body.jager-phase2-page .jp2-cta h2 {
	font-size: clamp(1.9rem, 4.5vw, 3rem);
	line-height: 1.05;
}

body.jager-phase2-page .jp2-cta p {
	margin-top: 20px;
	max-width: 576px;
	font-size: 16px;
	line-height: 1.625;
}

/* -------------------------------------------------------------------------
   Responsive fidelity
   ------------------------------------------------------------------------- */

@media (min-width: 640px) {
	body.jager-phase2-page .jp2-product-media {
		padding: 40px;
	}
}

@media (min-width: 901px) {
	body.jager-phase2-page .jp2-steps::after {
		content: "";
		display: block;
		background: #fff;
	}
}

@media (min-width: 1024px) {
	body.jager-phase2-page .jp2-container,
	body.jager-phase2-page .jhr-container {
		padding-inline: 32px;
	}

	body.jager-phase2-page .jp2-hero__content {
		padding-block: 144px 96px;
	}

	body.jager-phase2-page .jp2-section {
		padding-block: 96px;
	}

	body.jager-phase2-page.jager-p2-type-about .jp2-section,
	body.jager-phase2-page.jager-p2-type-cleaning .jp2-section {
		padding-block: 112px;
	}

	body.jager-phase2-page .jp2-split {
		gap: 64px;
	}

	body.jager-phase2-page .jp2-quality__grid,
	body.jager-phase2-page .jp2-history,
	body.jager-phase2-page .jp2-contact__grid {
		gap: 80px;
	}

	body.jager-phase2-page .jp2-form {
		padding-top: 0;
		padding-left: 64px;
		border-top: 0;
		border-left: 1px solid var(--jhr-border);
	}

	body.jager-phase2-page .jp2-request > .jp2-container {
		gap: 70px;
	}

	body.jager-phase2-page .jp2-cta__content {
		padding-block: 128px;
	}
}

@media (max-width: 1023px) {
	body.jager-phase2-page .jhr-header__inner {
		min-height: var(--jp2-header-height);
	}

	body.jager-phase2-page .jhr-menu-button {
		width: 40px;
		height: 40px;
	}

	body.jager-phase2-page .jhr-mobile-menu__inner {
		padding-top: 96px;
		padding-bottom: 32px;
	}
}

@media (max-width: 900px) {
	body.jager-phase2-page .jp2-split,
	body.jager-phase2-page .jp2-history,
	body.jager-phase2-page .jp2-contact__grid,
	body.jager-phase2-page .jp2-request > .jp2-container {
		gap: 42px;
	}

	body.jager-phase2-page .jp2-product-media,
	body.jager-phase2-page .jp2-process-media,
	body.jager-phase2-page .jp2-process-media img,
	body.jager-phase2-page .jp2-process-media video {
		min-height: 0;
	}

	body.jager-phase2-page .jp2-form .form-row {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	body.jager-phase2-page .jp2-contact,
	body.jager-phase2-page .jp2-request {
		padding-top: 96px;
	}
}

@media (max-width: 782px) {
	body.admin-bar.jager-phase2-page .jhr-header {
		top: 46px !important;
	}
}

@media (max-width: 560px) {
	body.jager-phase2-page .jp2-hero__content > p:last-child {
		font-size: 16px;
	}

	body.jager-phase2-page .jp2-contact-list a {
		grid-template-columns: 40px minmax(0, 1fr) 16px;
		column-gap: 14px;
	}

	body.jager-phase2-page .jp2-contact-list a::before {
		width: 40px;
		height: 40px;
	}

	body.jager-phase2-page .jp2-form--request {
		padding: 28px 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.jager-phase2-page *,
	body.jager-phase2-page *::before,
	body.jager-phase2-page *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
	}
}
