/* ERDI R18 "Light Precision" — shared base for every public route.
 * Inter, #f5f5f7 ground, white cards, ink #1d1d1f, one laser red. Replaces the
 * R17 black-room chrome (dequeued in inc/erdi-r18-assets.php). The R15 token
 * remap flips every older consumer to the light palette in one place. */
/* Static, hinted Inter 4.1 (extras/woff-hinted, latin subset): the variable build is unhinted and renders soft on Windows. */
@font-face { font-family: R18Inter; src: url('../fonts/inter/Inter-Regular-latin-hinted.woff2') format('woff2'); font-weight: 100 449; font-display: swap; }
@font-face { font-family: R18Inter; src: url('../fonts/inter/Inter-Medium-latin-hinted.woff2') format('woff2'); font-weight: 450 549; font-display: swap; }
@font-face { font-family: R18Inter; src: url('../fonts/inter/Inter-SemiBold-latin-hinted.woff2') format('woff2'); font-weight: 550 900; font-display: swap; }
@font-face { font-family: R18Display; src: url('../fonts/inter/InterDisplay-SemiBold-latin-hinted.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }

body.erdi-r18 {
	--r18-bg: #f5f5f7;
	--r18-card: #fff;
	--r18-ink: #1d1d1f;
	--r18-soft: #424245;
	--r18-mute: #6e6e73;
	--r18-faint: #86868b;
	--r18-line: #d2d2d7;
	--r18-hair: #e8e8ed;
	--r18-red: #e8261b;
	--r18-red-deep: #c41d13;
	--r18-link: #0066cc;
	--r18-radius: 28px;
	--r18-radius-sm: 18px;
	--r18-pad: clamp(20px, 4vw, 56px);
	--r18-max: 1280px;
	--r18-ease: cubic-bezier(.2, .8, .2, 1);
	--r18-font: R18Inter, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;

	--erdi-r15-ink-void: #fff;
	--erdi-r15-stage: var(--r18-bg);
	--erdi-r15-stage-deep: #ececf0;
	--erdi-r15-stage-raised: #fff;
	--erdi-r15-panel: #fff;
	--erdi-r15-panel-raised: #fff;
	--erdi-r15-cold: #fff;
	--erdi-r15-cold-ink: var(--r18-ink);
	--erdi-r15-cold-muted: var(--r18-mute);
	--erdi-r15-cold-line: var(--r18-line);
	--erdi-r15-ink: var(--r18-ink);
	--erdi-r15-ink-soft: var(--r18-soft);
	--erdi-r15-muted: var(--r18-mute);
	--erdi-r15-dim: var(--r18-faint);
	--erdi-r15-cyan: var(--r18-ink);
	--erdi-r15-violet: var(--r18-ink);
	--erdi-r15-ember: var(--r18-red);
	--erdi-r15-signal: var(--r18-red);
	--erdi-r15-signal-hover: var(--r18-red-deep);
	--erdi-r15-signal-deep: var(--r18-red-deep);
	--erdi-r15-telemetry: var(--r18-mute);
	--erdi-r15-telemetry-a: var(--r18-mute);
	--erdi-r15-telemetry-line: var(--r18-line);
	--erdi-r15-line: var(--r18-line);
	--erdi-r15-line-strong: #b0b0b8;
	--erdi-r15-focus: var(--r18-link);
	--erdi-r15-grad-signal: linear-gradient(90deg, var(--r18-ink), var(--r18-ink));
	--erdi-r15-grad-atmosphere: none;
	--erdi-r15-glass: rgba(255, 255, 255, .8);
	--erdi-r15-glass-strong: rgba(255, 255, 255, .92);
	--erdi-r15-glass-line: var(--r18-line);
	--erdi-r15-glow-cyan: none;
	--erdi-r15-glow-violet: none;
	--erdi-r15-glow-ember: none;
	--erdi-r15-glow-signal: none;
	--erdi-r15-glow-telemetry: none;
	--erdi-r15-grain-opacity: 0;
	--erdi-r15-scan-opacity: 0;
	--erdi-r15-orbit-opacity: 0;
	--erdi-r15-display: var(--r18-font);
	--erdi-r15-body: var(--r18-font);
	--erdi-r15-display-weight: 600;
	--erdi-r15-display-tracking: -.03em;
	--erdi-r15-display-leading: 1.04;
	--erdi-r15-radius-glass: var(--r18-radius-sm);
	--erdi-r15-radius-control: 999px;
	--erdi-r15-radius-panel: var(--r18-radius-sm);
	--r16-cyan: var(--r18-ink);
	--r16-violet: var(--r18-ink);
	--r16-ember: var(--r18-red);
	--r16-glass-line: var(--r18-line);
	--r16-grad: var(--r18-ink);
	--r16-grad-cta: var(--r18-ink);

	background: var(--r18-bg) !important;
	color: var(--r18-ink) !important;
	font-family: var(--r18-font) !important;
	letter-spacing: -.011em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'cv11', 'ss01';
	color-scheme: light;
	overflow-x: clip;
}
html:has(body.erdi-r18) { background: #f5f5f7 !important; }
body.erdi-r18 .wp-site-blocks,
body.erdi-r18 .wp-block-template-part { background: transparent !important; }
body.erdi-r18 :is(main, footer, dialog) :is(h1, h2, h3, h4, h5) {
	font-family: var(--r18-font) !important;
	font-weight: 600;
	letter-spacing: -.03em;
	color: var(--r18-ink);
	-webkit-text-fill-color: currentColor;
	text-shadow: none;
}
body.erdi-r18 :is(main, footer, dialog) :is(p, li, td, th, dd, dt, label, input, select, textarea, button, a, span, small, strong, summary) {
	font-family: var(--r18-font);
}
body.erdi-r18 :is(code, kbd, pre) { font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace; }
body.erdi-r18 :is(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--r18-link); outline-offset: 3px; }
body.erdi-r18 ::selection { background: rgba(232, 38, 27, .18); color: inherit; }

/* ---- header: frosted light bar ---- */
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header {
	position: sticky !important;
	top: 0 !important;
	inset: auto !important;
	z-index: 100 !important;
	min-height: 56px !important;
	height: auto !important;
	background: rgba(245, 245, 247, .8) !important;
	border-bottom: 1px solid rgba(0, 0, 0, .07) !important;
	box-shadow: none !important;
	backdrop-filter: saturate(180%) blur(20px) !important;
	-webkit-backdrop-filter: saturate(180%) blur(20px) !important;
	color: var(--r18-ink) !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header::before,
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-logo > .erdi-official-logo,
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .erdi-official-logo { content: url('../brand/official/erdi-laser-logo-dark.webp') !important; filter: none !important; opacity: 1 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-lockup__rule { background: var(--r18-line) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-feature { color: var(--r18-mute) !important; font-family: var(--r18-font) !important; font-weight: 500 !important; letter-spacing: 0 !important; text-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-feature span { color: var(--r18-ink) !important; letter-spacing: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header :is(.ox-nav-center > a, .ox-nav-drop > summary, .ox-nav-search, .ox-menu-toggle) {
	color: var(--r18-soft) !important;
	font-family: var(--r18-font) !important;
	font-weight: 400 !important;
	font-size: 13px !important;
	letter-spacing: -.005em !important;
	text-transform: none !important;
	text-shadow: none !important;
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header :is(.ox-nav-center > a, .ox-nav-drop > summary):hover { color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header :is(.ox-nav-center > a, .ox-nav-drop > summary)::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-search kbd { background: #fff !important; border: 1px solid var(--r18-line) !important; color: var(--r18-mute) !important; border-radius: 6px !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-icon { color: currentColor !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-sales {
	background: var(--r18-ink) !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	font-family: var(--r18-font) !important;
	font-weight: 500 !important;
	font-size: 13px !important;
	letter-spacing: -.005em !important;
	text-transform: none !important;
	text-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-sales::before,
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-sales::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav-sales:hover { background: #000 !important; }
/* mega menu */
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega {
	background: rgba(250, 250, 252, .97) !important;
	border: 0 !important;
	border-bottom: 1px solid var(--r18-hair) !important;
	box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .18) !important;
	backdrop-filter: saturate(180%) blur(20px) !important;
	color: var(--r18-ink) !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega::before,
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega :is(a, h3, span) { color: var(--r18-ink) !important; font-family: var(--r18-font) !important; letter-spacing: -.01em !important; text-transform: none !important; text-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega a:hover { color: var(--r18-link) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega :is(h3, .erdi-nav-group-label) { color: var(--r18-mute) !important; font-size: 12px !important; font-weight: 500 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega-product { background: #fff !important; border: 0 !important; border-radius: 14px !important; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega-product img { background: transparent !important; }
/* mobile dialog menu + search */
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu, .ox-search-overlay) {
	background: rgba(250, 250, 252, .98) !important;
	color: var(--r18-ink) !important;
	border: 0 !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu, .ox-search-overlay)::backdrop { background: rgba(0, 0, 0, .25); }
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu, .ox-search-overlay) :is(a, summary, span, label, button, p, h2, h3) { color: var(--r18-ink) !important; font-family: var(--r18-font) !important; text-transform: none !important; letter-spacing: -.01em !important; text-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .ox-menu :is(details, .ox-menu-head, .ox-menu-intro) { border-color: var(--r18-hair) !important; background: transparent !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .ox-menu summary { font-size: 22px !important; font-weight: 600 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu, .ox-search-overlay) input { background: #fff !important; color: var(--r18-ink) !important; border: 1px solid var(--r18-line) !important; border-radius: 12px !important; }
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu-sales, .ox-search-overlay__submit) { background: var(--r18-ink) !important; color: #fff !important; border-radius: 999px !important; border: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 :is(.ox-menu-sales, .ox-search-overlay__submit) * { color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .ox-menu-sales { color: #fff !important; }
body.erdi-r18 .ox-search-overlay__results :is(a, li) { background: #fff !important; border-color: var(--r18-hair) !important; }

/* ---- footer: quiet light ---- */
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer,
body.erdi-r18 .erdi-r15-footer,
body.erdi-r18 .erdi-gtm-sitelinks {
	background: #f5f5f7 !important;
	color: var(--r18-mute) !important;
	border-top: 1px solid var(--r18-line) !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer::before,
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer::after,
body.erdi-r18 .erdi-r15-footer::before,
body.erdi-r18 .erdi-r15-footer::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(p, a, summary, span, label, small, strong, li, h2, h3) {
	color: var(--r18-soft) !important;
	font-family: var(--r18-font) !important;
	text-shadow: none !important;
	letter-spacing: -.005em !important;
	-webkit-text-fill-color: currentColor !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer a:hover { color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-map > details > summary,
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .erdi-nav-group-label,
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-email-label,
body.erdi-r18 .erdi-gtm-sitelinks__h,
body.erdi-r18 .erdi-gtm-sitelinks__group > summary {
	color: var(--r18-ink) !important;
	font-family: var(--r18-font) !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-map a { font-size: 12px !important; color: var(--r18-mute) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-map a:hover { color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-map > details > summary::after { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .erdi-official-logo { content: url('../brand/official/erdi-laser-logo-dark.webp') !important; filter: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(.ox-social a, .ox-footer-topline a) {
	background: #fff !important;
	border: 1px solid var(--r18-line) !important;
	border-radius: 999px !important;
	color: var(--r18-ink) !important;
	font-family: var(--r18-font) !important;
	font-weight: 500 !important;
	font-size: 12px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(.ox-social a, .ox-footer-topline a) svg { color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(.ox-social a, .ox-footer-topline a):hover { background: var(--r18-ink) !important; color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(.ox-social a, .ox-footer-topline a):hover * { color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(.ox-footer-service, .ox-footer-inquiry) {
	background: #fff !important;
	border: 0 !important;
	border-radius: var(--r18-radius-sm) !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry h2 {
	font-family: var(--r18-font) !important;
	font-weight: 600 !important;
	font-size: 26px !important;
	line-height: 1.1 !important;
	letter-spacing: -.03em !important;
	color: var(--r18-ink) !important;
	-webkit-text-fill-color: var(--r18-ink) !important;
	background: none !important;
	text-transform: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry input {
	background: #f5f5f7 !important;
	border: 1px solid var(--r18-line) !important;
	border-radius: 12px !important;
	color: var(--r18-ink) !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry input:focus { border-color: var(--r18-link) !important; outline: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-footer-inquiry button,
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry button {
	background: var(--r18-ink) !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: var(--r18-font) !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	box-shadow: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-footer-inquiry button * { color: #fff !important; -webkit-text-fill-color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-legal { border-top: 1px solid var(--r18-line) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-legal :is(span, a, button) { color: var(--r18-mute) !important; font-family: var(--r18-font) !important; font-size: 12px !important; letter-spacing: 0 !important; text-transform: none !important; }
body.erdi-r18 .erdi-gtm-sitelinks :is(h2, h3, a, p, span) { color: var(--r18-soft) !important; font-family: var(--r18-font) !important; letter-spacing: 0 !important; }
body.erdi-r18 .erdi-gtm-sitelinks a:hover { color: var(--r18-ink) !important; }
/* support launcher */
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 :is(.erdi-support-float, .erdi-support__launcher) {
	background: var(--r18-ink) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .4) !important;
	font-family: var(--r18-font) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 :is(.erdi-support-float, .erdi-support__launcher) * { color: #fff !important; }
body.erdi-r18 .erdi-support__panel { background: #fff !important; color: var(--r18-ink) !important; border: 1px solid var(--r18-hair) !important; border-radius: var(--r18-radius-sm) !important; box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .35) !important; }
body.erdi-r18 .erdi-support__panel :is(p, span, h2, h3, button, a, li, textarea, input) { color: var(--r18-ink) !important; font-family: var(--r18-font) !important; }

/* ---- shared R18 primitives (home, reading, contact, catalog, model) ---- */
body.erdi-r18 .r18-wrap { max-width: var(--r18-max); margin: 0 auto; padding-inline: var(--r18-pad); box-sizing: border-box; }
body.erdi-r18 .r18-eyebrow { margin: 0 0 14px; font-family: var(--r18-font); font-weight: 600; font-size: 14px; line-height: 1.3; letter-spacing: 0; color: var(--r18-red); text-transform: none; }
body.erdi-r18 .r18-h1 { margin: 0; font-size: clamp(44px, 5.9vw, 86px) !important; line-height: 1.03 !important; letter-spacing: -.035em !important; font-weight: 600 !important; }
body.erdi-r18 .r18-h2 { margin: 0; font-size: clamp(36px, 4.8vw, 64px) !important; line-height: 1.06 !important; letter-spacing: -.035em !important; font-weight: 600 !important; }
body.erdi-r18 .r18-h3 { margin: 0; font-size: clamp(22px, 2.2vw, 30px) !important; line-height: 1.15 !important; letter-spacing: -.025em !important; font-weight: 600 !important; }
body.erdi-r18 .r18-lead { margin: 0; font-size: clamp(18px, 1.7vw, 24px); line-height: 1.4; color: var(--r18-soft); font-weight: 400; letter-spacing: -.015em; }
body.erdi-r18 .r18-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 44px; padding: 0 22px; border-radius: 999px; box-sizing: border-box;
	font-family: var(--r18-font); font-weight: 500; font-size: 15px; line-height: 1; letter-spacing: -.01em;
	text-decoration: none !important; text-transform: none;
	transition: background .25s, color .25s, border-color .25s;
	border: 1px solid transparent;
}
body.erdi-r18 .r18-btn--dark { background: var(--r18-ink); color: #fff !important; }
body.erdi-r18 .r18-btn--dark:hover { background: #000; }
body.erdi-r18 .r18-btn--line { border-color: var(--r18-ink); color: var(--r18-ink) !important; background: transparent; }
body.erdi-r18 .r18-btn--line:hover { background: var(--r18-ink); color: #fff !important; }
body.erdi-r18 .r18-link { color: var(--r18-link) !important; font-family: var(--r18-font); font-weight: 500; font-size: 17px; line-height: 1.3; text-decoration: none; }
body.erdi-r18 .r18-link::after { content: ' \203A'; }
body.erdi-r18 .r18-link:hover { text-decoration: underline; }
html.r18-js body.erdi-r18 .r18-rv { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--r18-ease), transform .9s var(--r18-ease); }
html.r18-js body.erdi-r18 .r18-rv.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	html.r18-js body.erdi-r18 .r18-rv { opacity: 1; transform: none; transition: none; }
}
@media (max-width: 760px) {
	body.erdi-r18 .erdi-header .ox-nav-sales { font-size: 12px !important; }
}

/* The header template-part wrapper is position:fixed in the R11/R15 cascade; make the wrapper the sticky bar so content starts below it. */
html body.erdi-r18.erdi-r18.erdi-r18 .wp-site-blocks > .wp-block-template-part:first-child {
	position: sticky !important;
	top: 0 !important;
	z-index: 100 !important;
	height: auto !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 .wp-site-blocks > .wp-block-template-part:first-child .erdi-header.ox-header { position: relative !important; }
html body.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-nav { height: 60px !important; min-height: 60px !important; }
body.erdi-r18 .wp-site-blocks > main, body.erdi-r18 main#main-content { margin-top: 0 !important; padding-top: 0 !important; }

/* SEO sitelinks: a compact column index instead of one long list. */
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 8px 32px;
	max-width: 1280px;
	margin: 0 auto !important;
	padding: 28px var(--r18-pad) 40px !important;
	border-top: 1px solid var(--r18-line) !important;
	box-sizing: border-box;
}
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__h { grid-column: 1 / -1; margin: 0 0 6px !important; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__group { min-height: 0 !important; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__group > summary { cursor: pointer; padding: 6px 0 !important; list-style: none; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__group ul { margin: 0 !important; padding: 0 !important; list-style: none; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__group li { margin: 0 !important; padding: 2px 0 !important; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks__group a { font-size: 12px !important; line-height: 1.5 !important; color: var(--r18-mute) !important; text-decoration: none; }
html body.erdi-r18.erdi-r18 .erdi-gtm-sitelinks { content-visibility: visible !important; contain-intrinsic-size: none !important; }

/* menus: opaque panels, readable CTA, light close button */
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega { background: #fafafc !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .erdi-header.ox-header .ox-mega-product img { opacity: 1 !important; visibility: visible !important; filter: none !important; object-fit: contain !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-sales,
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-sales * { color: #fff !important; -webkit-text-fill-color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-sales { box-shadow: none !important; border-radius: 999px !important; margin: 12px 24px !important; width: auto !important; justify-content: center; font-weight: 500 !important; font-size: 16px !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-head button { background: #e8e8ed !important; color: var(--r18-ink) !important; border-radius: 999px !important; width: 40px !important; height: 40px !important; margin: 12px 16px !important; border: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-head button svg { color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-intro { display: block !important; padding: 18px 24px !important; text-align: left !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-intro span { display: block; color: var(--r18-mute) !important; font-size: 14px !important; margin-top: 4px; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 .ox-menu .ox-menu-search div { border-bottom: 0 !important; box-shadow: none !important; }

/* R18 footer finish: one inquiry link instead of a second form; SEO indexes folded into one disclosure (see erdi-r18.js). */
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry { display: grid !important; gap: 10px !important; align-content: center !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry h2 { margin: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer a.ox-footer-inquiry-link {
	display: inline-flex !important; align-items: center; gap: 10px; justify-self: start;
	min-height: 44px; padding: 0 22px !important; border-radius: 999px !important;
	background: var(--r18-ink) !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
	font-size: 15px !important; font-weight: 500 !important; text-decoration: none !important;
}
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer a.ox-footer-inquiry-link * { color: #fff !important; -webkit-text-fill-color: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer a.ox-footer-inquiry-link:hover { background: #000 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry .ox-footer-sla { margin: 0 !important; font-size: 13px !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index {
	margin: 0 auto !important; padding: 0 !important; border-top: 1px solid var(--r18-line) !important; background: transparent !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index > summary {
	display: flex; align-items: center; justify-content: space-between; min-height: 44px; cursor: pointer; list-style: none;
	font-size: 12px !important; font-weight: 500 !important; color: var(--r18-mute) !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index > summary::-webkit-details-marker { display: none; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index > summary::after { content: '+'; font-size: 18px; line-height: 1; color: var(--r18-ink); }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index[open] > summary::after { content: '\2212'; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index .erdi-gtm-sitelinks { padding: 8px 0 24px !important; border-top: 0 !important; max-width: none; background: transparent !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index .erdi-specs-dataset { padding: 0 0 24px !important; margin: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index .erdi-specs-dataset ul { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 6px 0 !important; padding: 0 !important; list-style: none; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer details.r18-site-index :is(.erdi-specs-dataset__h, .erdi-specs-dataset__note, .erdi-specs-dataset a) { font-size: 12px !important; color: var(--r18-mute) !important; }
/* align index + legal row to the footer content column; give the service card real padding */
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer :is(details.r18-site-index, .ox-footer-legal.ox-footer-legal) {
	box-sizing: border-box !important; width: 100% !important; max-width: 1280px !important;
	margin-inline: auto !important; padding-inline: 0 !important; grid-column: 1 / -1 !important; justify-self: stretch !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-service {
	display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px 48px !important; align-items: center !important;
	padding: 32px 36px !important;
}
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-topline { display: flex !important; flex-direction: column; gap: 10px !important; align-items: flex-start !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-topline a { min-height: 44px; padding: 0 18px !important; gap: 12px; display: inline-flex !important; align-items: center; width: auto !important; }
html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-inquiry { padding: 0 !important; background: transparent !important; }
@media (max-width: 760px) {
	html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-service { grid-template-columns: 1fr; padding: 24px 20px !important; }
	html body.erdi-r18.erdi-r18.erdi-r18 footer.ox-footer .ox-footer-topline { flex-direction: row; flex-wrap: wrap; }
}

/* Display cut for headlines; never synthesise bold/italic from the static faces. */
html body.erdi-r18 { font-synthesis: none; }
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18 :is(h1, h2),
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18.erdi-r18 #main-content :is(h1, h2) { font-family: R18Display, var(--r18-font) !important; }
html body.erdi-r18 :is(h1, h2, h3) { text-wrap: balance; }
html body.erdi-r18 main p { text-wrap: pretty; }

/* Breadcrumb items share one centred 44px row on every route; the catalog does not load the reading layer,
   so the R15 phone rule (current item inline-block, bottom-aligned) used to lift "Modules" above "Home". */
html body.erdi-r18.erdi-r18.erdi-r18.erdi-r18 nav.erdi-breadcrumb li { display: flex !important; align-items: center !important; min-height: 44px; vertical-align: middle; }
