/* Approved Shadow Lab homepage. This file intentionally owns the complete homepage shell. */
.em26-site-main--shadow-home {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: visible;
}

.em26-home-real {
  --em26-home-ink: #16353d;
  --em26-home-paper: #f7f4ec;
  --em26-home-surface: #fffefa;
  --em26-home-line: #d9d5ca;
  --em26-home-muted: #526a6f;
  --em26-home-magenta: #b31368;
  --em26-home-cobalt: #1d5dbb;
  --em26-home-turquoise: #129a9a;
  --em26-home-saffron: #f2b632;
  --em26-home-coral: #e05d49;
  --em26-home-content: 1280px;
  --em26-home-gutter: clamp(16px, 4vw, 48px);
  --em26-home-section-space: clamp(64px, 7vw, 96px);
  width: 100%;
  min-width: 0;
  overflow-x: clip;
  color: var(--em26-home-ink);
  background: var(--em26-home-paper);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

.em26-home-real *,
.em26-home-real *::before,
.em26-home-real *::after { box-sizing: border-box; }
.em26-home-real :where(h1, h2, h3, p, figure, ul) { margin: 0; }
.em26-home-real :where(ul) { padding: 0; list-style: none; }
.em26-home-real :where(a) { color: inherit; text-decoration: none; }
.em26-home-real :where(button, input) { font: inherit; }
.em26-home-real :where(button) { cursor: pointer; }
.em26-home-real :where(img) { display: block; max-width: 100%; }
.em26-home-real :where(p, li, figcaption, label, input, button, a) { text-wrap: pretty; }
.em26-home-real :where(h1, h2, h3) { text-wrap: balance; }
.em26-home-real .em26-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.em26-home-real :where(a, button, input):focus-visible {
  outline: 3px solid var(--em26-home-saffron);
  outline-offset: 3px;
}

.em26-home-real-header {
  position: relative;
  z-index: 20;
  border-bottom: 1px solid var(--em26-home-ink);
  background: var(--em26-home-surface);
}

.em26-home-real-servicebar {
  display: flex;
  min-height: 38px;
  padding: 8px max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2));
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: var(--em26-home-paper);
  background: var(--em26-home-ink);
  font: 600 10px/1.4 "IBM Plex Mono", Consolas, monospace;
  letter-spacing: .025em;
}
.em26-home-real-servicebar p span { margin: 0 8px; opacity: .5; }
.em26-home-real-servicebar nav { display: flex; align-items: center; gap: 16px; }
.em26-home-real-servicebar a { padding-block: 3px; border-bottom: 1px solid transparent; }
.em26-home-real-servicebar a:hover { border-bottom-color: currentColor; }

.em26-home-real-mainbar {
  display: grid;
  grid-template-columns: 190px minmax(260px, 1fr) auto;
  min-height: 88px;
  padding: 13px max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2));
  align-items: center;
  gap: 24px;
  border-bottom: 1px solid var(--em26-home-line);
}
.em26-home-real-brand { display: inline-flex; width: 188px; align-items: center; }
.em26-home-real-brand img { width: 188px; height: auto; }
.em26-home-real-search {
  position: relative;
  min-width: 0;
}
.em26-home-real-search > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 48px;
  overflow: hidden;
  border: 1px solid var(--em26-home-ink);
  border-radius: 3px;
  background: var(--em26-home-surface);
}
.em26-home-real-search input[type="search"] {
  width: 100%;
  min-width: 0;
  padding: 0 16px;
  color: var(--em26-home-ink);
  background: transparent;
  border: 0;
  font-size: 14px;
}
.em26-home-real-search button {
  min-width: 92px;
  min-height: 46px;
  padding: 0 16px;
  color: var(--em26-home-paper);
  background: var(--em26-home-ink);
  border: 0;
  font-size: 12px;
  font-weight: 800;
}
.em26-home-real-search .em26-home-real-search-close { display: none; }
.em26-home-real-utilities { display: flex; align-items: stretch; gap: 8px; }
.em26-home-real-utilities a {
  display: inline-flex;
  min-width: 82px;
  min-height: 48px;
  padding: 8px 12px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid var(--em26-home-ink);
  border-radius: 3px;
  font-size: 12px;
  font-weight: 800;
}
.em26-home-real-utilities small {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  color: var(--em26-home-paper);
  background: var(--em26-home-magenta);
  border-radius: 50%;
  font: 700 9px/1 "IBM Plex Mono", Consolas, monospace;
}
.em26-home-real-mobile-toggle,
.em26-home-real-search-toggle { display: none; }

.em26-home-real-catalogue-region { position: relative; }
.em26-home-real-catalogue-control {
  display: flex;
  min-height: 54px;
  padding: 0 max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2));
  align-items: stretch;
  background: var(--em26-home-surface);
}
.em26-home-real-catalogue-control > :where(button, a) {
  display: inline-flex;
  min-height: 54px;
  padding: 10px 16px;
  align-items: center;
  justify-content: center;
  color: var(--em26-home-ink);
  background: transparent;
  border: 0;
  border-right: 1px solid var(--em26-home-line);
  font-size: 12px;
  font-weight: 800;
}
.em26-home-real-catalogue-control > :where(button, a):first-child { border-left: 1px solid var(--em26-home-line); }
.em26-home-real-catalogue-control > :where(button, a):hover,
.em26-home-real-catalogue-control > .em26-home-real-is-active {
  color: var(--em26-home-paper);
  background: var(--em26-home-ink);
}
.em26-home-real-desktop-navigation {
  position: absolute;
  z-index: 30;
  top: 100%;
  right: 0;
  left: 0;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  max-height: min(72vh, 760px);
  padding: 24px max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2));
  align-items: start;
  gap: 18px;
  overflow-y: auto;
  color: var(--em26-home-ink);
  background: var(--em26-home-paper);
  border-top: 1px solid var(--em26-home-ink);
  border-bottom: 1px solid var(--em26-home-ink);
  box-shadow: 0 24px 38px rgba(22, 53, 61, .16);
}
.em26-home-real-desktop-navigation[hidden] { display: none; }
.em26-home-real-nav-route {
  --em26-home-card-accent: var(--em26-home-magenta);
  position: relative;
  grid-column: span 4;
  display: grid;
  min-height: 205px;
  padding: 0 16px 16px;
  align-content: start;
  background: var(--em26-home-surface);
  border: 1px solid var(--em26-home-line);
}
.em26-home-real-nav-route::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: var(--em26-home-card-accent);
}
.em26-home-real-nav-route--resin,
.em26-home-real-nav-route--printing { --em26-home-card-accent: var(--em26-home-cobalt); }
.em26-home-real-nav-route--color { --em26-home-card-accent: var(--em26-home-turquoise); }
.em26-home-real-nav-route--decor { --em26-home-card-accent: var(--em26-home-saffron); }
.em26-home-real-nav-route--molds { --em26-home-card-accent: var(--em26-home-coral); }
.em26-home-real-nav-route > a {
  display: grid;
  width: calc(100% + 32px);
  min-height: 96px;
  margin: 0 -16px;
  padding: 18px 16px 14px;
  align-content: center;
  gap: 7px;
  border-bottom: 1px solid var(--em26-home-line);
}
.em26-home-real-nav-route strong { font-size: 14px; line-height: 1.25; }
.em26-home-real-nav-route small { color: var(--em26-home-muted); font-size: 11px; line-height: 1.45; }
.em26-home-real-nav-route ul { display: flex; margin-top: 14px; flex-wrap: wrap; gap: 7px 13px; }
.em26-home-real-nav-route li {
  position: relative;
  padding-left: 10px;
  color: var(--em26-home-muted);
  font-size: 10px;
  line-height: 1.4;
}
.em26-home-real-nav-route li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 4px;
  height: 4px;
  background: var(--em26-home-card-accent);
}
.em26-home-real-mobile-drawer,
.em26-home-real-drawer-backdrop { display: none; }

.em26-home-real-eyebrow,
.em26-home-real-section-heading > span {
  color: var(--em26-home-magenta);
  font: 650 10px/1.4 "IBM Plex Mono", Consolas, monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.em26-home-real-trust-grid article::before {
  content: "";
  position: absolute;
  z-index: 2;
  left: -1px;
  top: -1px;
  width: 13px;
  height: 13px;
  border-top: 3px solid var(--em26-home-magenta);
  border-left: 3px solid var(--em26-home-magenta);
}

.em26-home-real-section {
  padding: var(--em26-home-section-space) max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2));
  border-top: 1px solid var(--em26-home-line);
}
.em26-home-real-section-heading {
  display: grid;
  grid-template-columns: minmax(250px, 4fr) minmax(0, 8fr);
  margin-bottom: 40px;
  gap: 24px;
}
.em26-home-real-section-heading h2 {
  max-width: 820px;
  font-size: clamp(34px, 4.3vw, 58px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -.045em;
}
.em26-home-real-section-heading p { grid-column: 2; max-width: 760px; margin-top: -8px; font-size: 14px; line-height: 1.6; }

.em26-home-real-root-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; }
.em26-home-real-root {
  --em26-home-card-accent: var(--em26-home-magenta);
  position: relative;
  grid-column: span 3;
  display: flex;
  min-width: 0;
  min-height: 360px;
  padding: 25px;
  flex-direction: column;
  overflow: hidden;
  color: var(--em26-home-ink);
  background: var(--em26-home-surface);
  border: 1px solid var(--em26-home-ink);
}
.em26-home-real-root::before { content: ""; position: absolute; inset: 0 0 auto; height: 6px; background: var(--em26-home-card-accent); }
.em26-home-real-root--resin,
.em26-home-real-root--printing { --em26-home-card-accent: var(--em26-home-cobalt); }
.em26-home-real-root--color { --em26-home-card-accent: var(--em26-home-turquoise); }
.em26-home-real-root--decor { --em26-home-card-accent: var(--em26-home-saffron); }
.em26-home-real-root--molds { --em26-home-card-accent: var(--em26-home-coral); }
.em26-home-real-root--resin { grid-column: span 6; color: var(--em26-home-paper); background: var(--em26-home-ink); }
.em26-home-real-root--printing,
.em26-home-real-root--learning { grid-column: span 6; }
.em26-home-real-root__head { display: flex; min-height: 64px; padding-top: 2px; align-items: flex-start; justify-content: space-between; gap: 18px; }
.em26-home-real-root__head > span { color: var(--em26-home-card-accent); font: 700 10px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .08em; }
.em26-home-real-root .em26-material-glyph { flex: 0 0 58px; }
.em26-home-real-root--resin .em26-material-glyph { color: var(--em26-home-paper); }
.em26-home-real-root h3 { margin-top: 18px; font-size: 24px; line-height: 1.12; }
.em26-home-real-root h3 a { display: block; padding-right: 30px; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.em26-home-real-root > p { min-height: 66px; margin: 13px 0 20px; color: var(--em26-home-muted); font-size: 12px; line-height: 1.55; }
.em26-home-real-root--resin > p { color: rgba(247, 244, 236, .76); }
.em26-home-real-root ul { display: flex; flex-wrap: wrap; gap: 7px 13px; }
.em26-home-real-root li { position: relative; padding-left: 10px; color: var(--em26-home-muted); font-size: 10px; line-height: 1.45; }
.em26-home-real-root li::before { content: ""; position: absolute; left: 0; top: .6em; width: 4px; height: 4px; background: var(--em26-home-card-accent); }
.em26-home-real-root--resin li { color: rgba(247, 244, 236, .76); }
.em26-home-real-root footer {
  display: flex;
  margin-top: auto;
  padding-top: 20px;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid color-mix(in srgb, currentColor 22%, transparent);
}
.em26-home-real-root footer small { max-width: 190px; font: 550 9px/1.45 "IBM Plex Mono", Consolas, monospace; opacity: .66; }
.em26-home-real-root footer span { font-size: 24px; line-height: 1; }

.em26-home-real-task-picker { border-top: 7px solid var(--em26-home-cobalt); background: var(--em26-home-surface); }
.em26-home-real-task-picker__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr); gap: 24px; }
.em26-home-real-task-picker__resin { padding: 28px; border: 1px solid var(--em26-home-ink); }
.em26-home-real-task-picker__group-heading { min-height: 112px; padding-bottom: 22px; border-bottom: 1px solid var(--em26-home-ink); }
.em26-home-real-task-picker__group-heading > span { color: var(--em26-home-cobalt); font: 650 9px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }

.em26-home-real-task-picker__group-heading h3 { max-width: 600px; margin-top: 13px; font-size: 28px; line-height: 1.05; letter-spacing: -.03em; }
.em26-home-real-resin-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; gap: 10px; }
.em26-home-real-resin-grid article { display: flex; min-width: 0; min-height: 235px; padding: 16px; flex-direction: column; border: 1px solid var(--em26-home-ink); background: var(--em26-home-surface); }
.em26-home-real-resin-grid article > span { color: var(--em26-home-cobalt); font: 650 9px/1.4 "IBM Plex Mono", Consolas, monospace; }
.em26-home-real-resin-grid h3 { margin-top: 24px; font-size: 17px; line-height: 1.15; }
.em26-home-real-resin-grid p { margin-top: 12px; color: var(--em26-home-muted); font-size: 11px; line-height: 1.5; }
.em26-home-real-resin-grid a { display: flex; width: 100%; min-height: 42px; margin-top: auto; padding: 8px 10px; align-items: center; justify-content: center; border: 1px solid var(--em26-home-ink); font-size: 10px; font-weight: 800; }

.em26-home-real-trust { background: var(--em26-home-surface); }
.em26-home-real-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.em26-home-real-trust-grid article { position: relative; min-height: 480px; padding: 38px; overflow: hidden; border: 1px solid var(--em26-home-ink); }
.em26-home-real-trust-grid article > span { font: 650 9px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }
.em26-home-real-trust-grid h2 { position: relative; z-index: 1; max-width: 610px; margin-top: 32px; font-size: clamp(30px, 3.4vw, 46px); line-height: 1.04; letter-spacing: -.04em; }
.em26-home-real-trust-grid p { position: relative; z-index: 1; max-width: 520px; margin-top: 18px; font-size: 13px; line-height: 1.6; }
.em26-home-real-trust-grid a { position: relative; z-index: 2; display: inline-flex; min-height: 46px; margin-top: 28px; padding: 10px 14px; align-items: center; border: 1px solid currentColor; font-size: 11px; font-weight: 800; }
.em26-home-real-resin-pro { background: color-mix(in srgb, var(--em26-home-cobalt) 12%, var(--em26-home-surface)); }
.em26-home-real-resin-pro img { position: absolute; right: -35px; bottom: -40px; width: 250px; height: 250px; object-fit: cover; border: 1px solid var(--em26-home-ink); }
.em26-home-real-resin-pro :where(p, h2) { padding-right: 105px; }
.em26-home-real-own-production { color: var(--em26-home-paper); background: var(--em26-home-ink); }
.em26-home-real-own-production::after {
  content: "";
  position: absolute;
  right: -40px;
  bottom: -20px;
  width: 210px;
  height: 150px;
  border: 22px solid var(--em26-home-turquoise);
  box-shadow: -42px -28px 0 -18px var(--em26-home-saffron), -80px -55px 0 -30px var(--em26-home-magenta);
}

.em26-home-real-system-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; }
.em26-home-real-system {
  grid-column: span 4;
  display: grid;
  grid-template-rows: 260px 1fr;
  min-width: 0;
  min-height: 520px;
  border: 1px solid var(--em26-home-ink);
  background: var(--em26-home-surface);
}
.em26-home-real-system img { width: 100%; height: 260px; object-fit: cover; border-bottom: 1px solid var(--em26-home-ink); }
.em26-home-real-system > div { display: flex; padding: 22px; flex-direction: column; }
.em26-home-real-system span { color: var(--em26-home-magenta); font: 650 9px/1.4 "IBM Plex Mono", Consolas, monospace; }
.em26-home-real-system h3 { margin-top: 15px; font-size: 24px; line-height: 1.15; }
.em26-home-real-system p { margin: 9px 0 18px; color: var(--em26-home-muted); font-size: 12px; line-height: 1.55; }
.em26-home-real-system a { display: flex; width: 100%; min-height: 44px; margin-top: auto; padding: 9px 12px; align-items: center; justify-content: center; border: 1px solid var(--em26-home-ink); font-size: 11px; font-weight: 800; }

.em26-home-real-material-proof { color: var(--em26-home-paper); background: var(--em26-home-ink); }
.em26-home-real-material-proof .em26-home-real-section-heading > span { color: var(--em26-home-saffron); }
.em26-home-real-material-proof__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: stretch; gap: 20px; }
.em26-home-real-material-proof__grid figure { display: grid; grid-template-rows: minmax(0, 1fr) auto; min-width: 0; min-height: 0; border: 1px solid var(--em26-home-paper); }
.em26-home-real-material-proof__colorfun { grid-column: span 7; grid-row: span 2; color: var(--em26-home-ink); background: var(--em26-home-paper); }
.em26-home-real-material-proof__process,
.em26-home-real-material-proof__result { grid-column: span 5; }
.em26-home-real-material-proof__grid img { width: 100%; height: 100%; min-height: 0; aspect-ratio: 16 / 9; object-fit: cover; }
.em26-home-real-material-proof__colorfun img { aspect-ratio: 4 / 3; object-fit: contain; background: var(--em26-home-paper); }
.em26-home-real-material-proof figcaption { display: grid; padding: 17px; gap: 6px; }
.em26-home-real-material-proof figcaption b { color: var(--em26-home-saffron); font: 700 9px/1.4 "IBM Plex Mono", Consolas, monospace; }
.em26-home-real-material-proof__colorfun figcaption b { color: var(--em26-home-magenta); }
.em26-home-real-material-proof figcaption span { font-size: 12px; line-height: 1.5; }
.em26-home-real-material-proof figcaption a { width: fit-content; margin-top: 8px; padding-bottom: 3px; color: var(--em26-home-magenta); border-bottom: 1px solid currentColor; font-size: 11px; font-weight: 800; }

.em26-home-real-support { text-align: center; }
.em26-home-real-support h2 { max-width: 840px; margin: 18px auto 0; font-size: clamp(32px, 4vw, 54px); line-height: 1.04; letter-spacing: -.04em; }
.em26-home-real-support > div { display: flex; max-width: 940px; margin: 34px auto 0; flex-wrap: wrap; justify-content: center; gap: 12px; }
.em26-home-real-support a { display: inline-flex; min-width: 160px; min-height: 46px; padding: 10px 14px; align-items: center; justify-content: center; border: 1px solid var(--em26-home-ink); font-size: 11px; font-weight: 800; }
.em26-home-real-support a:first-child { color: var(--em26-home-paper); background: var(--em26-home-ink); }

.em26-home-real-footer { color: var(--em26-home-paper); background: #0d242a; }
.em26-home-real-footer__inner {
  display: grid;
  grid-template-columns: minmax(280px, 1.45fr) repeat(2, minmax(145px, .65fr)) minmax(230px, 1fr);
  width: min(calc(100% - (var(--em26-home-gutter) * 2)), var(--em26-home-content));
  margin-inline: auto;
  padding: 64px 0 52px;
  gap: 42px;
}
.em26-home-real-footer__brand img { width: 190px; height: auto; }
.em26-home-real-footer__brand p { max-width: 390px; margin-top: 22px; color: rgba(247, 244, 236, .68); font-size: 12px; line-height: 1.6; }
.em26-home-real-footer nav { display: grid; align-content: start; gap: 9px; }
.em26-home-real-footer nav > span,
.em26-home-real-footer__trust > span { margin-bottom: 8px; color: var(--em26-home-saffron); font: 700 9px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }
.em26-home-real-footer nav a { width: fit-content; color: rgba(247, 244, 236, .78); font-size: 11px; }
.em26-home-real-footer nav a:hover { color: var(--em26-home-paper); text-decoration: underline; text-underline-offset: 4px; }
.em26-home-real-footer__trust b { display: block; font-size: 17px; line-height: 1.3; }
.em26-home-real-footer__trust p { margin-top: 12px; color: rgba(247, 244, 236, .68); font-size: 11px; line-height: 1.6; }
.em26-home-real-footer__legal {
  display: flex;
  width: min(calc(100% - (var(--em26-home-gutter) * 2)), var(--em26-home-content));
  min-height: 54px;
  margin-inline: auto;
  padding: 14px 0;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid rgba(247, 244, 236, .18);
  color: rgba(247, 244, 236, .55);
  font: 550 9px/1.4 "IBM Plex Mono", Consolas, monospace;
}

@media (max-width: 1023px) {
  .em26-home-real { --em26-home-gutter: 24px; --em26-home-section-space: 68px; }
  .em26-home-real-servicebar nav,
  .em26-home-real-utilities { display: none; }
  .em26-home-real-mainbar { grid-template-columns: 190px minmax(220px, 1fr); gap: 20px; }
  .em26-home-real-catalogue-control > button:not(:first-child) { display: none; }
  .em26-home-real-desktop-navigation { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .em26-home-real-nav-route { grid-column: span 2; }

  
  .em26-home-real-root-grid,
  .em26-home-real-system-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; }
  .em26-home-real-root,
  .em26-home-real-root--printing,
  .em26-home-real-root--learning { grid-column: span 3; }
  .em26-home-real-root--resin { grid-column: span 6; }
  .em26-home-real-system { grid-column: span 3; }
  .em26-home-real-task-picker__layout { grid-template-columns: 1fr; }

  
  .em26-home-real-footer__inner { grid-template-columns: 1.2fr repeat(2, .8fr); }
  .em26-home-real-footer__trust { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
  .em26-home-real { --em26-home-gutter: 16px; --em26-home-section-space: 64px; }
  .em26-home-real-servicebar { min-height: 32px; padding: 7px var(--em26-home-gutter); }
  .em26-home-real-servicebar p { font-size: 9px; }
  .em26-home-real-servicebar nav { display: none; }
  .em26-home-real-mainbar { grid-template-columns: auto 1fr auto; min-height: 68px; padding: 9px var(--em26-home-gutter); gap: 10px; }
  .em26-home-real-brand { justify-self: center; width: 142px; }
  .em26-home-real-brand img { width: 142px; }
  .em26-home-real-mobile-toggle,
  .em26-home-real-search-toggle {
    display: inline-flex;
    min-width: 48px;
    min-height: 44px;
    padding: 8px 9px;
    align-items: center;
    justify-content: center;
    color: var(--em26-home-ink);
    background: var(--em26-home-surface);
    border: 1px solid var(--em26-home-ink);
    border-radius: 3px;
    font-size: 11px;
    font-weight: 800;
  }
  .em26-home-real-mobile-toggle span:first-child { font-size: 20px; line-height: 1; }
  .em26-home-real-search-toggle { font-size: 9px; }
  .em26-home-real-search { display: none; }
  .em26-home-real-search.em26-home-real-is-mobile-open { display: block; grid-column: 1 / -1; width: 100%; margin-top: 4px; }
  .em26-home-real-search.em26-home-real-is-mobile-open > div { grid-template-columns: minmax(0, 1fr) auto auto; }
  .em26-home-real-search.em26-home-real-is-mobile-open .em26-home-real-search-close {
    display: inline-flex;
    min-width: 44px;
    padding: 0 10px;
    align-items: center;
    justify-content: center;
    color: var(--em26-home-ink);
    background: var(--em26-home-surface);
    border-left: 1px solid var(--em26-home-ink);
  }
  .em26-home-real-catalogue-control,
  .em26-home-real-desktop-navigation { display: none; }
  .em26-home-real-drawer-backdrop {
    position: fixed;
    z-index: 60;
    inset: 0;
    display: block;
    visibility: hidden;
    opacity: 0;
    border: 0;
    background: rgba(13, 36, 42, .52);
    transition: opacity .2s ease;
  }
  .em26-home-real-drawer-backdrop.em26-home-real-is-open { visibility: visible; opacity: 1; }
  .em26-home-real-mobile-drawer {
    position: fixed;
    z-index: 61;
    inset: 0 0 0 auto;
    display: flex;
    width: min(92%, 390px);
    padding: 16px;
    flex-direction: column;
    overflow-y: auto;
    color: var(--em26-home-ink);
    background: var(--em26-home-paper);
    border-left: 1px solid var(--em26-home-ink);
    transform: translateX(101%);
    transition: transform .2s ease;
  }
  .em26-home-real-mobile-drawer.em26-home-real-is-open { transform: translateX(0); }
  .em26-home-real-mobile-drawer__head { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--em26-home-ink); }
  .em26-home-real-mobile-drawer__head img { width: 142px; height: auto; }
  .em26-home-real-mobile-drawer__head button { min-height: 44px; padding: 8px 10px; border: 1px solid var(--em26-home-ink); background: var(--em26-home-surface); font-size: 10px; font-weight: 800; }
  .em26-home-real-mobile-drawer nav { display: grid; margin-top: 18px; gap: 8px; }
  .em26-home-real-mobile-drawer [hidden] { display: none !important; }
  .em26-home-real-mobile-route {
    --em26-home-card-accent: var(--em26-home-magenta);
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    min-height: 58px;
    padding: 10px;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--em26-home-ink);
    border-left: 5px solid var(--em26-home-card-accent);
    background: var(--em26-home-surface);
    color: var(--em26-home-ink);
    text-align: left;
  }
  .em26-home-real-mobile-route--resin,
  .em26-home-real-mobile-route--printing { --em26-home-card-accent: var(--em26-home-cobalt); }
  .em26-home-real-mobile-route--color { --em26-home-card-accent: var(--em26-home-turquoise); }
  .em26-home-real-mobile-route--decor { --em26-home-card-accent: var(--em26-home-saffron); }
  .em26-home-real-mobile-route--molds { --em26-home-card-accent: var(--em26-home-coral); }
  .em26-home-real-mobile-route span { color: var(--em26-home-card-accent); font: 700 9px/1 "IBM Plex Mono", Consolas, monospace; }
  .em26-home-real-mobile-route b { font-size: 12px; line-height: 1.25; }
  .em26-home-real-mobile-route i { font-style: normal; }
  .em26-home-real-mobile-root-detail {
    --em26-home-card-accent: var(--em26-home-magenta);
    display: grid;
    margin-top: 18px;
    gap: 13px;
  }
  .em26-home-real-mobile-root-detail--resin,
  .em26-home-real-mobile-root-detail--printing { --em26-home-card-accent: var(--em26-home-cobalt); }
  .em26-home-real-mobile-root-detail--color { --em26-home-card-accent: var(--em26-home-turquoise); }
  .em26-home-real-mobile-root-detail--decor { --em26-home-card-accent: var(--em26-home-saffron); }
  .em26-home-real-mobile-root-detail--molds { --em26-home-card-accent: var(--em26-home-coral); }
  .em26-home-real-mobile-root-detail > button {
    min-height: 44px;
    padding: 9px 12px;
    justify-self: start;
    color: var(--em26-home-ink);
    background: var(--em26-home-surface);
    border: 1px solid var(--em26-home-ink);
    font-size: 10px;
    font-weight: 800;
  }
  .em26-home-real-mobile-root-detail > span {
    color: var(--em26-home-card-accent);
    font: 700 9px/1.35 "IBM Plex Mono", Consolas, monospace;
    letter-spacing: .08em;
  }
  .em26-home-real-mobile-root-detail h2 { font-size: 30px; line-height: 1.05; letter-spacing: -.035em; }
  .em26-home-real-mobile-root-detail p { color: var(--em26-home-muted); font-size: 12px; line-height: 1.6; }
  .em26-home-real-mobile-root-detail__primary {
    min-height: 48px;
    padding: 12px 14px;
    color: var(--em26-home-paper);
    background: var(--em26-home-ink);
    border-left: 5px solid var(--em26-home-card-accent);
    font-size: 12px;
    font-weight: 800;
  }
  .em26-home-real-mobile-root-detail ul { display: grid; border-top: 1px solid var(--em26-home-line); }
  .em26-home-real-mobile-root-detail li { border-bottom: 1px solid var(--em26-home-line); }
  .em26-home-real-mobile-root-detail li a { display: block; min-height: 44px; padding: 12px 4px; font-size: 11px; font-weight: 700; }
  .em26-home-real-mobile-priority-navigation { padding-top: 10px; border-top: 1px solid var(--em26-home-ink); }
  .em26-home-real-mobile-priority-navigation a {
    display: grid;
    min-height: 58px;
    padding: 10px;
    gap: 2px;
    border: 1px solid var(--em26-home-ink);
    background: var(--em26-home-surface);
  }
  .em26-home-real-mobile-priority-navigation b { font-size: 12px; }
  .em26-home-real-mobile-priority-navigation small { color: var(--em26-home-muted); font-size: 9px; }
  .em26-home-real-mobile-drawer footer { display: grid; margin-top: auto; padding-top: 30px; gap: 7px; }
  .em26-home-real-mobile-drawer footer a { min-height: 44px; padding: 10px 0; border-top: 1px solid var(--em26-home-line); font-size: 11px; font-weight: 700; }

  

  

  

  .em26-home-real-section { padding: var(--em26-home-section-space) var(--em26-home-gutter); }
  .em26-home-real-section-heading { display: block; margin-bottom: 28px; }
  .em26-home-real-section-heading h2 { margin-top: 12px; font-size: 36px; }
  .em26-home-real-section-heading p { margin-top: 15px; font-size: 13px; }
  .em26-home-real-root-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
  .em26-home-real-root { grid-column: span 2; min-height: 315px; padding: 18px; }
  .em26-home-real-root--resin,
  .em26-home-real-root--printing,
  .em26-home-real-root--learning { grid-column: span 4; }
  .em26-home-real-root h3 { margin-top: 12px; font-size: 21px; }
  .em26-home-real-root > p { min-height: 0; font-size: 11px; }
  .em26-home-real-root .em26-material-glyph { transform: scale(.84); transform-origin: top left; }

  .em26-home-real-task-picker__layout { grid-template-columns: 1fr; gap: 12px; }
  .em26-home-real-task-picker__resin { padding: 17px; }
  .em26-home-real-resin-grid { grid-template-columns: 1fr; }
  .em26-home-real-resin-grid article { min-height: 190px; }

  

  .em26-home-real-trust-grid { grid-template-columns: 1fr; gap: 12px; }
  .em26-home-real-trust-grid article { min-height: 430px; padding: 25px; }
  .em26-home-real-trust-grid h2 { font-size: 32px; }
  .em26-home-real-resin-pro img { width: 180px; height: 180px; }
  .em26-home-real-resin-pro :where(p, h2) { padding-right: 0; }
  .em26-home-real-resin-pro p { padding-right: 90px; }

  .em26-home-real-system-grid { grid-template-columns: 1fr; gap: 12px; }
  .em26-home-real-system { grid-column: 1; min-height: 0; }

  .em26-home-real-material-proof__grid { grid-template-columns: 1fr; gap: 12px; }
  .em26-home-real-material-proof__colorfun,
  .em26-home-real-material-proof__process,
  .em26-home-real-material-proof__result { grid-column: 1; grid-row: auto; }
  .em26-home-real-material-proof__grid img,
  .em26-home-real-material-proof__colorfun img { aspect-ratio: 4 / 3; }

  .em26-home-real-support > div { display: grid; grid-template-columns: 1fr; }
  .em26-home-real-support a { width: 100%; }
  .em26-home-real-footer__inner { grid-template-columns: 1fr 1fr; padding: 48px 0 38px; gap: 34px 22px; }
  .em26-home-real-footer__brand,
  .em26-home-real-footer__trust { grid-column: 1 / -1; }
  .em26-home-real-footer__legal { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 520px) {
  .em26-home-real-root-grid { grid-template-columns: 1fr; }
  .em26-home-real-root,
  .em26-home-real-root--resin,
  .em26-home-real-root--printing,
  .em26-home-real-root--learning { grid-column: 1; min-height: 0; }
  .em26-home-real-root > p { margin-bottom: 16px; }
  .em26-home-real-root footer { margin-top: 24px; }
  .em26-home-real-footer__inner { grid-template-columns: 1fr; }
  .em26-home-real-footer__brand,
  .em26-home-real-footer__trust { grid-column: 1; }
}

/* ==========================================================================
   Design layer v1 (Claude, visual pilot). CSS only: no markup, copy, heading
   level, URL, schema or WooCommerce change. Every rule is scoped under
   .em26-home-real; the original rules above stay as the baseline.
   Principles: min 13px everywhere, body 16px; 1px soft lines, radii 8/12;
   product-line stripe flush 4px (8px on hover), palette colours only
   (no coral); one primary CTA colour (Magenta); focus 3px Cobalt / white on dark.
   ========================================================================== */
.em26-home-real {
  --em26-home-muted: #46606a;
  --em26-home-line: rgba(22, 53, 61, .18);
  --em26-home-line-strong: rgba(22, 53, 61, .34);
  --em26-home-sunk: #efebe1;
  --em26-home-r8: 8px;
  --em26-home-r12: 12px;
  --em26-home-magenta-hover: #8f0f53;
  --em26-coral: var(--em26-home-magenta); /* palette only: remaps coral glyph accents inside the homepage */
  line-height: 1.6;
}
.em26-home-real :where(a, button, input):focus-visible { outline-color: var(--em26-home-cobalt); border-radius: var(--em26-home-r8); }
.em26-home-real-footer :where(a, button):focus-visible,
.em26-home-real-material-proof :where(a, button):focus-visible,
.em26-home-real-own-production :where(a, button):focus-visible,
.em26-home-real-root--resin :where(a, button):focus-visible { outline-color: #fff; }

/* Header */
.em26-home-real .em26-home-real-header { border-bottom-color: var(--em26-home-line); }
.em26-home-real .em26-home-real-servicebar { font: 600 12px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .01em; }
.em26-home-real .em26-home-real-search > div { border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8); }
.em26-home-real .em26-home-real-search input[type="search"] { font-size: 16px; }
.em26-home-real .em26-home-real-search button { font-size: 14px; }
.em26-home-real .em26-home-real-utilities a { border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8); font-size: 14px; font-weight: 700; }
.em26-home-real .em26-home-real-utilities small { font: 700 11px/1 "Manrope", Arial, sans-serif; }
.em26-home-real .em26-home-real-catalogue-control > :where(button, a) { font-size: 14px; font-weight: 700; }
.em26-home-real .em26-home-real-desktop-navigation { border-top-color: var(--em26-home-line); border-bottom-color: var(--em26-home-line); }
.em26-home-real .em26-home-real-nav-route { border-radius: var(--em26-home-r12); overflow: hidden; }
.em26-home-real .em26-home-real-nav-route::before { height: 4px; }
.em26-home-real .em26-home-real-nav-route--molds { --em26-home-card-accent: var(--em26-home-ink); }
.em26-home-real .em26-home-real-nav-route strong { font-size: 15px; }
.em26-home-real .em26-home-real-nav-route small { font-size: 13px; }
.em26-home-real .em26-home-real-nav-route li { font-size: 13px; }

/* Labels */
.em26-home-real .em26-home-real-eyebrow,
.em26-home-real .em26-home-real-section-heading > span {
  font: 700 13px/1.4 "Manrope", Arial, sans-serif;
  letter-spacing: .1em;
}

/* Hero */

/* Section headings */
.em26-home-real .em26-home-real-section { border-top-color: var(--em26-home-line); }
.em26-home-real .em26-home-real-section-heading h2 { font-size: clamp(32px, 4vw, 52px); line-height: 1.06; letter-spacing: -.035em; }
.em26-home-real .em26-home-real-section-heading p { margin-top: 0; font-size: 17px; line-height: 1.6; color: var(--em26-home-muted); }

/* Catalogue roots */
.em26-home-real .em26-home-real-root {
  min-height: 0; padding: 24px;
  border-color: var(--em26-home-line); border-radius: var(--em26-home-r12);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.em26-home-real .em26-home-real-root:hover { border-color: var(--em26-home-line-strong); box-shadow: 0 8px 24px rgba(22, 53, 61, .08); }
.em26-home-real .em26-home-real-root::before { height: 4px; transition: height .15s ease; }
.em26-home-real .em26-home-real-root:hover::before { height: 8px; }
.em26-home-real .em26-home-real-root--color { --em26-home-card-accent: var(--em26-home-magenta); }
.em26-home-real .em26-home-real-root--clock,
.em26-home-real .em26-home-real-root--base { --em26-home-card-accent: var(--em26-home-turquoise); }
.em26-home-real .em26-home-real-root--molds,
.em26-home-real .em26-home-real-root--tools,
.em26-home-real .em26-home-real-root--learning { --em26-home-card-accent: var(--em26-home-ink); }
.em26-home-real .em26-home-real-root--resin { border-color: var(--em26-home-ink); }
.em26-home-real .em26-home-real-root__head > span { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .06em; }
.em26-home-real .em26-home-real-root h3 { font-size: 24px; letter-spacing: -.02em; }
.em26-home-real .em26-home-real-root h3 a { text-decoration: none; }
.em26-home-real .em26-home-real-root h3 a::after { content: ""; position: absolute; inset: 0; }
.em26-home-real .em26-home-real-root:hover h3 a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.em26-home-real .em26-home-real-root > p { min-height: 0; font-size: 16px; line-height: 1.55; }
.em26-home-real .em26-home-real-root li { font-size: 14px; }
.em26-home-real .em26-home-real-root footer { border-top-color: var(--em26-home-line); }
.em26-home-real .em26-home-real-root--resin footer { border-top-color: rgba(247, 244, 236, .24); }
.em26-home-real .em26-home-real-root footer small { max-width: none; font: 700 14px/1.4 "Manrope", Arial, sans-serif; opacity: .8; }

/* Task picker: panels without boxes inside boxes */
.em26-home-real .em26-home-real-task-picker { border-top: 1px solid var(--em26-home-line); }
.em26-home-real .em26-home-real-task-picker__resin { padding: 0; border: 0; }
.em26-home-real .em26-home-real-task-picker__group-heading { min-height: 0; padding-bottom: 20px; border-bottom-color: var(--em26-home-line); }
.em26-home-real .em26-home-real-task-picker__group-heading > span { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .1em; }
.em26-home-real .em26-home-real-task-picker__group-heading h3 { font-size: clamp(24px, 2.6vw, 30px); letter-spacing: -.025em; }
.em26-home-real .em26-home-real-resin-grid { gap: 16px; }

.em26-home-real .em26-home-real-resin-grid article {
  position: relative; min-height: 0; overflow: hidden;
  border-color: var(--em26-home-line); border-radius: var(--em26-home-r12);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.em26-home-real .em26-home-real-resin-grid article { padding: 22px 20px 20px; }

.em26-home-real .em26-home-real-resin-grid article::before {
  content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--em26-home-cobalt); transition: height .15s ease;
}

.em26-home-real .em26-home-real-resin-grid article:hover { border-color: var(--em26-home-line-strong); box-shadow: 0 8px 24px rgba(22, 53, 61, .08); }
.em26-home-real .em26-home-real-resin-grid article:hover::before { height: 8px; }
.em26-home-real .em26-home-real-resin-grid article > span { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .06em; }
.em26-home-real .em26-home-real-resin-grid h3 { margin-top: 16px; font-size: 19px; }
.em26-home-real .em26-home-real-resin-grid p { margin-top: 10px; font-size: 15px; line-height: 1.55; }

.em26-home-real .em26-home-real-resin-grid p { margin-bottom: 18px; }

.em26-home-real .em26-home-real-resin-grid a,
.em26-home-real .em26-home-real-system a,
.em26-home-real .em26-home-real-trust-grid a {
  min-height: 48px; padding: 10px 16px;
  border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8);
  font-size: 15px; font-weight: 700;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.em26-home-real .em26-home-real-resin-grid a:hover,
.em26-home-real .em26-home-real-system a:hover { border-color: var(--em26-home-ink); background: rgba(22, 53, 61, .05); }

/* Two supports */
.em26-home-real .em26-home-real-trust-grid { gap: 24px; }
.em26-home-real .em26-home-real-trust-grid article { min-height: 0; padding: 40px; border-color: var(--em26-home-line); border-radius: var(--em26-home-r12); }
.em26-home-real .em26-home-real-trust-grid article::before { left: 0; top: 0; right: 0; width: auto; height: 4px; border: 0; background: var(--em26-home-cobalt); }
.em26-home-real .em26-home-real-own-production::before { background: var(--em26-home-magenta); }
.em26-home-real .em26-home-real-trust-grid article > span { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .1em; }
.em26-home-real .em26-home-real-trust-grid h2 { margin-top: 24px; font-size: clamp(28px, 3vw, 40px); letter-spacing: -.035em; }
.em26-home-real .em26-home-real-trust-grid p { font-size: 16px; line-height: 1.6; }
.em26-home-real .em26-home-real-resin-pro,
.em26-home-real .em26-home-real-own-production { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; }
.em26-home-real .em26-home-real-resin-pro { background: var(--em26-home-sunk); }
.em26-home-real .em26-home-real-own-production { border-color: var(--em26-home-ink); }
.em26-home-real .em26-home-real-resin-pro img {
  position: static; width: 100%; max-width: 260px; height: auto; margin-top: 24px;
  aspect-ratio: 1; border: 0; border-radius: var(--em26-home-r8);
}
.em26-home-real .em26-home-real-resin-pro :where(p, h2) { padding-right: 0; }
.em26-home-real .em26-home-real-resin-pro p { padding-right: 0; }
.em26-home-real .em26-home-real-resin-pro a { justify-self: start; }
.em26-home-real .em26-home-real-own-production::after { display: none; }
.em26-home-real .em26-home-real-own-production > span { color: var(--em26-home-saffron); }
.em26-home-real .em26-home-real-own-production a { justify-self: start; border-color: rgba(247, 244, 236, .5); }
.em26-home-real .em26-home-real-own-production a:hover { background: rgba(247, 244, 236, .1); border-color: var(--em26-home-paper); }
.em26-home-real .em26-home-real-resin-pro a:hover { background: rgba(22, 53, 61, .06); border-color: var(--em26-home-ink); }

/* Systems */
.em26-home-real .em26-home-real-system-grid { gap: 24px; }
.em26-home-real .em26-home-real-system {
  --em26-home-card-accent: var(--em26-home-ink);
  position: relative; min-height: 0; grid-template-rows: 240px 1fr; overflow: hidden;
  border-color: var(--em26-home-line); border-radius: var(--em26-home-r12);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.em26-home-real .em26-home-real-system::before { content: ""; position: absolute; z-index: 1; inset: 0 0 auto; height: 4px; background: var(--em26-home-card-accent); transition: height .15s ease; }
.em26-home-real .em26-home-real-system:hover { border-color: var(--em26-home-line-strong); box-shadow: 0 8px 24px rgba(22, 53, 61, .08); }
.em26-home-real .em26-home-real-system:hover::before { height: 8px; }
.em26-home-real .em26-home-real-system--tint { --em26-home-card-accent: var(--em26-home-turquoise); }
.em26-home-real .em26-home-real-system--flamenco { --em26-home-card-accent: var(--em26-home-magenta); }
.em26-home-real .em26-home-real-system--leaf { --em26-home-card-accent: var(--em26-home-saffron); }
.em26-home-real .em26-home-real-system img { height: 240px; border-bottom: 1px solid var(--em26-home-line); }
.em26-home-real .em26-home-real-system > div { padding: 24px; }
.em26-home-real .em26-home-real-system span { color: var(--em26-home-muted); font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .08em; }
.em26-home-real .em26-home-real-system h3 { margin-top: 12px; font-size: 22px; letter-spacing: -.02em; }
.em26-home-real .em26-home-real-system p { font-size: 16px; line-height: 1.55; }

/* Material proof (dark) */
.em26-home-real .em26-home-real-material-proof__grid { gap: 24px; }
.em26-home-real .em26-home-real-material-proof__grid figure { overflow: hidden; border-color: rgba(247, 244, 236, .24); border-radius: var(--em26-home-r12); }
.em26-home-real .em26-home-real-material-proof .em26-home-real-section-heading p { color: rgba(247, 244, 236, .78); }
.em26-home-real .em26-home-real-material-proof figcaption { padding: 20px 22px 22px; gap: 8px; }
.em26-home-real .em26-home-real-material-proof figcaption b { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .08em; }
.em26-home-real .em26-home-real-material-proof figcaption span { font-size: 16px; line-height: 1.55; }
.em26-home-real .em26-home-real-material-proof figcaption a { min-height: 44px; display: inline-flex; align-items: center; margin-top: 4px; font-size: 15px; }

/* Support */
.em26-home-real .em26-home-real-support > p { max-width: none; }
.em26-home-real .em26-home-real-support h2 { font-size: clamp(30px, 3.8vw, 48px); letter-spacing: -.035em; }
.em26-home-real .em26-home-real-support > div { gap: 12px; }
.em26-home-real .em26-home-real-support a {
  min-width: 168px; min-height: 52px; padding: 12px 20px;
  border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8);
  font-size: 16px; font-weight: 700; transition: background-color .15s ease, border-color .15s ease;
}
.em26-home-real .em26-home-real-support a:first-child { color: #fff; background: var(--em26-home-magenta); border-color: var(--em26-home-magenta); }
.em26-home-real .em26-home-real-support a:first-child:hover { background: var(--em26-home-magenta-hover); border-color: var(--em26-home-magenta-hover); }
.em26-home-real .em26-home-real-support a:not(:first-child):hover { border-color: var(--em26-home-ink); background: rgba(22, 53, 61, .04); }

/* Footer */
.em26-home-real .em26-home-real-footer__brand p { font-size: 15px; }
.em26-home-real .em26-home-real-footer nav > span,
.em26-home-real .em26-home-real-footer__trust > span { font: 700 13px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .1em; }
.em26-home-real .em26-home-real-footer nav a { min-height: 32px; display: inline-flex; align-items: center; font-size: 15px; }
.em26-home-real .em26-home-real-footer__trust b { font-size: 18px; }
.em26-home-real .em26-home-real-footer__trust p { font-size: 15px; }
.em26-home-real .em26-home-real-servicebar p { font-size: 12px; }
.em26-home-real .em26-home-real-footer__legal small { font-size: 13px; }
.em26-home-real .em26-home-real-footer__legal { font: 500 13px/1.5 "Manrope", Arial, sans-serif; color: rgba(247, 244, 236, .7); }

@media (max-width: 1023px) {
  .em26-home-real .em26-home-real-trust-grid { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .em26-home-real .em26-home-real-search-toggle { font-size: 13px; }
  .em26-home-real .em26-home-real-mobile-toggle { font-size: 13px; border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8); }
  .em26-home-real .em26-home-real-search-toggle { border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8); }

  

  .em26-home-real .em26-home-real-section-heading h2 { font-size: clamp(30px, 8.6vw, 38px); }
  .em26-home-real .em26-home-real-section-heading p { font-size: 16px; }
  .em26-home-real .em26-home-real-root { min-height: 0; padding: 20px; }
  .em26-home-real .em26-home-real-root > p { font-size: 15px; }
  .em26-home-real .em26-home-real-root li { font-size: 13px; }
  .em26-home-real .em26-home-real-trust-grid article { padding: 24px; }
  .em26-home-real .em26-home-real-resin-pro img { width: 100%; max-width: 240px; height: auto; }
  .em26-home-real .em26-home-real-system { grid-template-rows: 220px 1fr; }
  .em26-home-real .em26-home-real-system img { height: 220px; }
  .em26-home-real .em26-home-real-mobile-drawer { border-left-color: var(--em26-home-line-strong); }
  .em26-home-real .em26-home-real-mobile-drawer__head { border-bottom-color: var(--em26-home-line); }
  .em26-home-real .em26-home-real-mobile-drawer__head button,
  .em26-home-real .em26-home-real-mobile-root-detail > button { font-size: 14px; border-color: var(--em26-home-line-strong); border-radius: var(--em26-home-r8); }
  .em26-home-real .em26-home-real-mobile-route { min-height: 60px; border-color: var(--em26-home-line); border-left-width: 4px; border-radius: var(--em26-home-r8); }
  .em26-home-real .em26-home-real-mobile-route--molds,
  .em26-home-real .em26-home-real-mobile-route--tools,
  .em26-home-real .em26-home-real-mobile-route--learning { --em26-home-card-accent: var(--em26-home-ink); }
  .em26-home-real .em26-home-real-mobile-root-detail--molds,
  .em26-home-real .em26-home-real-mobile-root-detail--tools,
  .em26-home-real .em26-home-real-mobile-root-detail--learning { --em26-home-card-accent: var(--em26-home-ink); }
  .em26-home-real .em26-home-real-mobile-route span { font: 700 13px/1 "Manrope", Arial, sans-serif; }
  .em26-home-real .em26-home-real-mobile-route b { font-size: 15px; }
  .em26-home-real .em26-home-real-mobile-root-detail > span { font: 700 13px/1.35 "Manrope", Arial, sans-serif; }
  .em26-home-real .em26-home-real-mobile-root-detail p { font-size: 15px; }
  .em26-home-real .em26-home-real-mobile-root-detail__primary { font-size: 15px; border-radius: var(--em26-home-r8); }
  .em26-home-real .em26-home-real-mobile-root-detail li a { font-size: 15px; }
  .em26-home-real .em26-home-real-mobile-priority-navigation a { border-color: var(--em26-home-line); border-radius: var(--em26-home-r8); }
  .em26-home-real .em26-home-real-mobile-priority-navigation b { font-size: 15px; }
  .em26-home-real .em26-home-real-mobile-priority-navigation small { font-size: 13px; }
  .em26-home-real .em26-home-real-mobile-drawer footer a { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .em26-home-real *, .em26-home-real *::before { transition: none !important; }
}

/* ==========================================================================
   Design layer v2 (Claude): normalised type scale, tighter rhythm, heading
   blocks without an empty left column, task picker rebuilt as compact
   whole-card routes (no outlined buttons). CSS only.
   ========================================================================== */
.em26-home-real { --em26-home-section-space: clamp(44px, 5vw, 72px); }

/* type scale: H1 36–56 · H2 28–40 · H3 20–26 */

.em26-home-real .em26-home-real-section-heading { grid-template-columns: minmax(0, 1fr); margin-bottom: 28px; gap: 12px; }
.em26-home-real .em26-home-real-section-heading h2 { max-width: 28ch; font-size: clamp(26px, 2.9vw, 40px); line-height: 1.08; }
.em26-home-real .em26-home-real-section-heading p { grid-column: 1; max-width: 68ch; margin-top: 0; font-size: 17px; }
.em26-home-real .em26-home-real-trust-grid h2 { margin-top: 16px; font-size: clamp(24px, 2.3vw, 30px); line-height: 1.12; }
.em26-home-real .em26-home-real-support h2 { max-width: 28ch; margin-top: 12px; font-size: clamp(26px, 3vw, 38px); }
.em26-home-real .em26-home-real-support > div { margin-top: 24px; }
.em26-home-real .em26-home-real-root h3 { margin-top: 12px; font-size: 22px; }
.em26-home-real .em26-home-real-system h3 { font-size: 20px; }
.em26-home-real .em26-home-real-root-grid,
.em26-home-real .em26-home-real-system-grid { gap: 20px; }
.em26-home-real .em26-home-real-root__head { min-height: 0; }
.em26-home-real .em26-home-real-root ul { margin-bottom: 20px; }
.em26-home-real .em26-home-real-footer__inner { padding: 48px 0 36px; }

/* trust: equal cards, action pinned to the bottom, no dead space */
.em26-home-real .em26-home-real-trust-grid article { display: flex; flex-direction: column; align-items: flex-start; padding: 32px; }
.em26-home-real .em26-home-real-trust-grid p { margin-bottom: 24px; }
.em26-home-real .em26-home-real-trust-grid a { margin-top: auto; }
@media (min-width: 1024px) {
  .em26-home-real .em26-home-real-trust-grid .em26-home-real-resin-pro { display: grid; grid-template-columns: minmax(0, 1fr) 190px; column-gap: 28px; align-items: start; }
  .em26-home-real .em26-home-real-trust-grid .em26-home-real-resin-pro > * { grid-column: 1; }
  .em26-home-real .em26-home-real-trust-grid .em26-home-real-resin-pro > img { grid-column: 2; grid-row: 1 / span 4; align-self: start; margin: 0; max-width: 190px; }
  .em26-home-real .em26-home-real-trust-grid .em26-home-real-resin-pro > a { align-self: end; }
}

/* task picker: one flow, two groups, compact whole-card routes */
.em26-home-real .em26-home-real-task-picker__layout { grid-template-columns: minmax(0, 1fr); gap: 40px; }
.em26-home-real .em26-home-real-task-picker__group-heading { padding-bottom: 14px; }
.em26-home-real .em26-home-real-task-picker__group-heading h3 { margin-top: 8px; font-size: clamp(22px, 2.2vw, 26px); }
.em26-home-real .em26-home-real-resin-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; gap: 16px; }
.em26-home-real .em26-home-real-resin-grid article { padding: 20px; }
.em26-home-real .em26-home-real-resin-grid h3 { margin-top: 10px; font-size: 19px; }
.em26-home-real .em26-home-real-resin-grid p { margin-top: 6px; margin-bottom: 14px; }

.em26-home-real .em26-home-real-resin-grid a {
  width: auto; min-height: 0; margin-top: auto; padding: 0;
  justify-content: flex-start; border: 0; background: none; color: var(--em26-home-cobalt);
  font-size: 15px; font-weight: 700;
}
.em26-home-real .em26-home-real-resin-grid a:hover { background: none; text-decoration: underline; text-underline-offset: 4px; }
.em26-home-real .em26-home-real-resin-grid a::before { content: ""; position: absolute; inset: 0; }
.em26-home-real .em26-home-real-resin-grid a::after { content: "→"; margin-left: 8px; transition: transform .15s ease; }
.em26-home-real .em26-home-real-resin-grid article:hover a::after { transform: translateX(4px); }

@media (max-width: 767px) {

  
  .em26-home-real .em26-home-real-section-heading h2 { font-size: clamp(26px, 7.4vw, 32px); }
  .em26-home-real .em26-home-real-section-heading p { font-size: 16px; }
  .em26-home-real .em26-home-real-support h2 { font-size: clamp(26px, 7.4vw, 32px); }
  .em26-home-real .em26-home-real-task-picker__layout { gap: 32px; }
  .em26-home-real .em26-home-real-resin-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .em26-home-real .em26-home-real-trust-grid article { padding: 24px; }
}

@media (max-width: 1023px) {
  .em26-home-real .em26-home-real-trust-grid .em26-home-real-resin-pro img { margin-top: 0; margin-bottom: 24px; }
}
@media (max-width: 767px) {
  .em26-home-real .em26-home-real-root > p { margin: 8px 0 12px; }
  .em26-home-real .em26-home-real-root ul { margin-bottom: 14px; }
  .em26-home-real .em26-home-real-root footer { margin-top: 16px; padding-top: 14px; }
}

/* ==========================================================================
   Design layer v3 (Claude): card illustrations drawn in CSS (no markup),
   compact mobile rhythm. Icons: ink stroke + one Cobalt accent.
   ========================================================================== */
.em26-home-real .em26-home-real-resin-grid article > span { display: block; min-height: 36px; }
.em26-home-real .em26-home-real-resin-grid article::after {
  content: ""; position: absolute; top: 16px; right: 16px; width: 48px; height: 48px;
  background: center / contain no-repeat; transition: transform .2s ease;
}
.em26-home-real .em26-home-real-resin-grid article:hover::after { transform: translateY(-2px) rotate(-4deg); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(1)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Crect x='18' y='64' width='84' height='16' rx='3'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M18 44c14-10 28 10 42 0s28 10 42 0'/%3E%3Cpath d='M18 92h84'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(2)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M46 16h28v14l12 16v58H34V46l12-16z'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M34 72h52'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(3)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M24 22h72v82H24z'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M24 54c12-10 24 10 36 0s24 10 36 0'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(4)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M28 46l14-20h36l14 20-32 52z'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M28 46h64M42 26l18 20 18-20M60 46v52'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(5)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Ccircle cx='60' cy='60' r='16'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M60 18v14M60 88v14M18 60h14M88 60h14M30 30l10 10M80 80l10 10M90 30L80 40M40 80L30 90'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-resin-grid article:nth-child(6)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M60 20l42 21-42 21-42-21z'/%3E%3C/g%3E%3Cg stroke='%231D5DBB'%3E%3Cpath d='M18 62l42 21 42-21M18 83l42 21 42-21'/%3E%3C/g%3E%3C/svg%3E"); }

@media (max-width: 767px) {
  .em26-home-real .em26-home-real-root { padding: 18px; }
  .em26-home-real .em26-home-real-root h3 { font-size: 20px; }
  .em26-home-real .em26-home-real-root > p { font-size: 14px; line-height: 1.5; }
  .em26-home-real .em26-home-real-root li { font-size: 13px; }
  .em26-home-real .em26-home-real-system { grid-template-rows: 180px 1fr; }
  .em26-home-real .em26-home-real-system img { height: 180px; }
  .em26-home-real .em26-home-real-system > div { padding: 18px; }
  .em26-home-real .em26-home-real-system p { font-size: 15px; margin-bottom: 14px; }
  .em26-home-real .em26-home-real-material-proof__grid img,
  .em26-home-real .em26-home-real-material-proof__colorfun img { aspect-ratio: 16 / 10; }
  .em26-home-real .em26-home-real-material-proof figcaption { padding: 16px 18px 18px; }
  .em26-home-real .em26-home-real-footer__inner { gap: 28px 20px; }
}
@media (min-width: 521px) and (max-width: 767px) {
  .em26-home-real .em26-home-real-resin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ==========================================================================
   Design layer v4 (Claude): outcome-route illustrations drawn in CSS.
   The existing small glyph markup stays in the DOM (decorative, unchanged);
   it is only replaced visually. No markup, copy or link changes.
   ========================================================================== */

/* ==========================================================================
   Design layer v5 (Claude): proportions pass. Larger logo (header + footer),
   footer rebuilt as one balanced grid, hero proof row, 8px rhythm. CSS only.
   ========================================================================== */
/* logo */
.em26-home-real .em26-home-real-brand,
.em26-home-real .em26-home-real-brand img { width: 236px; }
.em26-home-real .em26-home-real-mainbar { grid-template-columns: 236px minmax(260px, 1fr) auto; }

/* hero proof row: three even columns */

/* cards: calmer proportions */
.em26-home-real .em26-home-real-root > p { font-size: 15px; }
.em26-home-real .em26-home-real-root h3 { font-size: 21px; }
.em26-home-real .em26-home-real-system img { height: 200px; }
.em26-home-real .em26-home-real-system { grid-template-rows: 200px 1fr; }
.em26-home-real .em26-home-real-system p { font-size: 15px; }
.em26-home-real .em26-home-real-section-heading p { font-size: 16px; }

/* footer: brand | shop | help | trust card, one baseline */
.em26-home-real .em26-home-real-footer__inner {
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 2fr) minmax(0, 4fr);
  align-items: start; gap: 40px; padding: 56px 0 40px;
}
.em26-home-real .em26-home-real-footer__brand img { width: 280px; height: auto; }
.em26-home-real .em26-home-real-footer__brand p { max-width: 36ch; margin-top: 20px; font-size: 16px; line-height: 1.6; color: rgba(247, 244, 236, .76); }
.em26-home-real .em26-home-real-footer nav { gap: 2px; }
.em26-home-real .em26-home-real-footer nav > span { margin-bottom: 12px; }
.em26-home-real .em26-home-real-footer nav a { min-height: 36px; font-size: 16px; color: rgba(247, 244, 236, .82); }
.em26-home-real .em26-home-real-footer__trust {
  position: relative; padding: 28px 24px 24px; overflow: hidden;
  border: 1px solid rgba(247, 244, 236, .16); border-radius: var(--em26-home-r12); background: rgba(247, 244, 236, .04);
}
.em26-home-real .em26-home-real-footer__trust::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--em26-home-cobalt); }
.em26-home-real .em26-home-real-footer__trust > span { display: block; margin-bottom: 10px; }
.em26-home-real .em26-home-real-footer__trust b { font-size: 18px; line-height: 1.3; }
.em26-home-real .em26-home-real-footer__trust p { margin-top: 10px; font-size: 15px; color: rgba(247, 244, 236, .76); }
.em26-home-real .em26-home-real-footer__legal { min-height: 0; padding: 20px 0 28px; }

@media (max-width: 1023px) {
  .em26-home-real .em26-home-real-brand,
  .em26-home-real .em26-home-real-brand img { width: 208px; }
  .em26-home-real .em26-home-real-mainbar { grid-template-columns: 208px minmax(200px, 1fr); }
  .em26-home-real .em26-home-real-footer__inner { grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr)); gap: 32px; }
  .em26-home-real .em26-home-real-footer__trust { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .em26-home-real .em26-home-real-mainbar { grid-template-columns: auto 1fr auto; }
  .em26-home-real .em26-home-real-brand,
  .em26-home-real .em26-home-real-brand img { width: 176px; }

  .em26-home-real .em26-home-real-system { grid-template-rows: 180px 1fr; }
  .em26-home-real .em26-home-real-system img { height: 180px; }
  .em26-home-real .em26-home-real-footer__inner { grid-template-columns: 1fr 1fr; gap: 32px 20px; padding: 40px 0 32px; }
  .em26-home-real .em26-home-real-footer__brand,
  .em26-home-real .em26-home-real-footer__trust { grid-column: 1 / -1; }
  .em26-home-real .em26-home-real-footer__brand img { width: 220px; }
  .em26-home-real .em26-home-real-footer__legal { align-items: flex-start; gap: 6px; }
}
@media (max-width: 520px) {
  .em26-home-real .em26-home-real-footer__inner { grid-template-columns: 1fr 1fr; }
  .em26-home-real .em26-home-real-footer__brand,
  .em26-home-real .em26-home-real-footer__trust { grid-column: 1 / -1; }
}

/* ==========================================================================
   Design layer v6 (Claude): catalogue navigation. Desktop control row + mega
   menu, mobile toggle + drawer. One stripe behaviour everywhere: 4px, 8px on
   hover / keyboard focus (touch: while pressed). CSS only.
   ========================================================================== */
/* shared stripe behaviour for keyboard focus and touch press */
.em26-home-real .em26-home-real-root:focus-within::before,
.em26-home-real .em26-home-real-resin-grid article:focus-within::before,
.em26-home-real .em26-home-real-system:focus-within::before,
.em26-home-real .em26-home-real-nav-route:focus-within::before,
.em26-home-real .em26-home-real-nav-route:hover::before { height: 8px; }

/* desktop catalogue control row */
.em26-home-real .em26-home-real-catalogue-control { border-bottom: 1px solid var(--em26-home-line); }
.em26-home-real .em26-home-real-catalogue-control > :where(button, a) {
  position: relative; min-height: 52px; padding: 10px 20px; gap: 8px;
  font-size: 15px; font-weight: 700; border-right-color: var(--em26-home-line); transition: background-color .15s ease, color .15s ease;
}
.em26-home-real .em26-home-real-catalogue-control > button::after {
  content: ""; width: 7px; height: 7px; margin-top: -3px;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(45deg); transition: transform .18s ease, margin .18s ease;
}
.em26-home-real .em26-home-real-catalogue-control > button[aria-expanded="true"]::after { margin-top: 3px; transform: rotate(-135deg); }
.em26-home-real .em26-home-real-catalogue-control > :where(button, a)::before {
  content: ""; position: absolute; inset: auto 0 0; height: 3px; background: var(--em26-home-magenta);
  transform: scaleX(0); transform-origin: left; transition: transform .2s ease;
}
.em26-home-real .em26-home-real-catalogue-control > :where(button, a):hover::before,
.em26-home-real .em26-home-real-catalogue-control > .em26-home-real-is-active::before { transform: scaleX(1); }

/* mega menu panel */
.em26-home-real .em26-home-real-desktop-navigation {
  padding-block: 28px 32px; gap: 20px; align-items: stretch; border-top: 0; box-shadow: 0 24px 40px rgba(22, 53, 61, .14);
}
.em26-home-real .em26-home-real-desktop-navigation:not([hidden]) { animation: em26-home-menu-in .18s ease-out; }
@keyframes em26-home-menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
.em26-home-real .em26-home-real-nav-route {
  min-height: 0; padding: 0 20px 20px; border-color: var(--em26-home-line);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.em26-home-real .em26-home-real-nav-route:hover { border-color: var(--em26-home-line-strong); box-shadow: 0 8px 24px rgba(22, 53, 61, .08); }
.em26-home-real .em26-home-real-nav-route::before { transition: height .15s ease; }
.em26-home-real .em26-home-real-nav-route > a {
  width: calc(100% + 40px); min-height: 0; margin: 0 -20px; padding: 22px 20px 16px;
  gap: 6px; border-bottom-color: var(--em26-home-line);
}
.em26-home-real .em26-home-real-nav-route > a::after { content: ""; position: absolute; inset: 0; }
.em26-home-real .em26-home-real-nav-route strong { font-size: 17px; line-height: 1.25; letter-spacing: -.01em; }
.em26-home-real .em26-home-real-nav-route small { font-size: 14px; line-height: 1.5; }
.em26-home-real .em26-home-real-nav-route ul { margin-top: 16px; gap: 8px; }
.em26-home-real .em26-home-real-nav-route li {
  padding: 4px 10px; font-size: 13px; line-height: 1.3; color: var(--em26-home-ink);
  border: 1px solid var(--em26-home-line); border-radius: 6px; background: var(--em26-home-surface);
}
.em26-home-real .em26-home-real-nav-route li::before { display: none; }

/* mobile: catalogue toggle becomes a clear primary control */
@media (max-width: 767px) {
  .em26-home-real .em26-home-real-mobile-toggle {
    min-width: 48px; min-height: 48px; color: #fff; background: var(--em26-home-ink); border-color: var(--em26-home-ink);
  }
  .em26-home-real .em26-home-real-mobile-toggle span:first-child { font-size: 22px; }
  .em26-home-real .em26-home-real-search-toggle { min-height: 48px; padding-inline: 14px; }

  /* drawer */
  .em26-home-real .em26-home-real-mobile-drawer { width: min(100%, 420px); padding: 0 16px 24px; border-left: 0; box-shadow: -16px 0 40px rgba(13, 36, 42, .2); }
  .em26-home-real .em26-home-real-mobile-drawer__head {
    position: sticky; top: 0; z-index: 2; min-height: 68px; margin: 0 -16px; padding: 0 16px;
    background: var(--em26-home-paper); border-bottom: 1px solid var(--em26-home-line);
  }
  .em26-home-real .em26-home-real-mobile-drawer__head img { width: 168px; }
  .em26-home-real .em26-home-real-mobile-drawer__head button { min-height: 44px; padding: 0 16px; font-size: 15px; background: transparent; }
  .em26-home-real .em26-home-real-mobile-drawer nav { margin-top: 16px; gap: 10px; }
  .em26-home-real .em26-home-real-mobile-route {
    position: relative; grid-template-columns: 36px minmax(0, 1fr) auto; min-height: 64px; padding: 12px 16px 12px 18px; gap: 10px;
    overflow: hidden; border: 1px solid var(--em26-home-line); border-left-width: 1px; border-radius: var(--em26-home-r12); background: var(--em26-home-surface);
    transition: border-color .15s ease;
  }
  .em26-home-real .em26-home-real-mobile-route::before {
    content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--em26-home-card-accent); transition: width .15s ease;
  }
  .em26-home-real .em26-home-real-mobile-route:active::before { width: 8px; }
  .em26-home-real .em26-home-real-mobile-route:active { border-color: var(--em26-home-line-strong); }
  .em26-home-real .em26-home-real-mobile-route span { font-size: 13px; }
  .em26-home-real .em26-home-real-mobile-route b { font-size: 17px; line-height: 1.25; }
  .em26-home-real .em26-home-real-mobile-route i { font-size: 18px; color: var(--em26-home-muted); }

  /* detail view */
  .em26-home-real .em26-home-real-mobile-root-detail { margin-top: 16px; gap: 14px; }
  .em26-home-real .em26-home-real-mobile-root-detail > button {
    min-height: 44px; padding: 0; border: 0; background: none; color: var(--em26-home-cobalt); font-weight: 700;
  }
  .em26-home-real .em26-home-real-mobile-root-detail > button::before { content: "←"; margin-right: 8px; }
  .em26-home-real .em26-home-real-mobile-root-detail h2 { font-size: 28px; }
  .em26-home-real .em26-home-real-mobile-root-detail__primary {
    display: flex; min-height: 52px; align-items: center; justify-content: space-between; padding: 0 18px;
    color: #fff; background: var(--em26-home-magenta); border-left: 0; border-radius: var(--em26-home-r8); font-size: 16px;
  }
  .em26-home-real .em26-home-real-mobile-root-detail__primary::after { content: "→"; }
  .em26-home-real .em26-home-real-mobile-root-detail ul { border-top: 0; gap: 8px; }
  .em26-home-real .em26-home-real-mobile-root-detail li { border: 1px solid var(--em26-home-line); border-radius: var(--em26-home-r8); background: var(--em26-home-surface); }
  .em26-home-real .em26-home-real-mobile-root-detail li a { display: flex; min-height: 52px; align-items: center; justify-content: space-between; padding: 0 16px; font-size: 16px; font-weight: 700; }
  .em26-home-real .em26-home-real-mobile-root-detail li a::after { content: "→"; color: var(--em26-home-muted); }

  /* priority links and service links */
  .em26-home-real .em26-home-real-mobile-priority-navigation { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 10px; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--em26-home-line); }
  .em26-home-real .em26-home-real-mobile-priority-navigation a {
    position: relative; min-height: 76px; padding: 16px 14px 12px; overflow: hidden; align-content: end;
  }
  .em26-home-real .em26-home-real-mobile-priority-navigation a::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--em26-home-magenta); }
  .em26-home-real .em26-home-real-mobile-priority-navigation a:nth-child(2)::before { background: var(--em26-home-saffron); }
  .em26-home-real .em26-home-real-mobile-drawer footer { padding-top: 24px; gap: 0; }
  .em26-home-real .em26-home-real-mobile-drawer footer a { display: flex; min-height: 48px; align-items: center; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .em26-home-real .em26-home-real-desktop-navigation:not([hidden]) { animation: none; }
}

/* =====================================================================
   Catalogue icons v2 + flagship cards (resin, filament)  [Claude visual pass]
   CSS only: markup, texts and links are untouched. Old <i> glyph parts are hidden
   and an SVG is drawn as the background of the existing .em26-material-glyph.
   ===================================================================== */
.em26-home-real .em26-home-real-root .em26-material-glyph {
  --ic-c: var(--em26-home-cobalt);
  position: relative; box-sizing: border-box; flex: 0 0 72px; width: 72px; height: 72px; padding: 7px;
  color: var(--em26-home-ink);
  border: 1px solid color-mix(in srgb, var(--ic-c) 30%, var(--em26-home-line));
  border-radius: 16px;
  background-color: color-mix(in srgb, var(--ic-c) 7%, var(--em26-home-surface));
  background-repeat: no-repeat; background-position: center; background-size: contain; background-origin: content-box;
  transition: transform .2s ease;
}
.em26-home-real .em26-home-real-root .em26-material-glyph i,
.em26-home-real .em26-home-real-root .em26-material-glyph::after,
.em26-home-real .em26-home-real-root .em26-material-glyph::before { display: none !important; content: none !important; }
.em26-home-real .em26-home-real-root:hover .em26-material-glyph { transform: translateY(-2px) rotate(-3deg); }
@media (prefers-reduced-motion: reduce) { .em26-home-real .em26-home-real-root:hover .em26-material-glyph { transform: none; } }

.em26-home-real .em26-home-real-root--color { --em26-home-card-accent: #b31368; }
.em26-home-real .em26-home-real-root--color .em26-home-real-root__head > span:last-child { color: #b31368; }
.em26-home-real .em26-home-real-root--color .em26-material-glyph { --ic-c: #b31368; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.th%7Bstroke-width:1.35%7D.p1%7Bfill:%23b31368;fill-opacity:.13;stroke:%23b31368;stroke-width:1.2%7D.p2%7Bfill:%23b31368;fill-opacity:.34;stroke:none%7D.p3%7Bfill:%23b31368;fill-opacity:.78;stroke:none%7D%3C/style%3E%3Ccircle class='p1' cx='24' cy='38' r='17'/%3E%3Ccircle class='p2' cx='41' cy='40' r='13'/%3E%3Ccircle class='p3' cx='33' cy='25' r='9'/%3E%3Cpath class='th' d='M51 6c2.6 3 4.2 5.2 4.2 7.4a4.2 4.2 0 01-8.4 0c0-2.2 1.6-4.4 4.2-7.4z'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--base { --em26-home-card-accent: #129a9a; }
.em26-home-real .em26-home-real-root--base .em26-home-real-root__head > span:last-child { color: #0b6e6e; }
.em26-home-real .em26-home-real-root--base .em26-material-glyph { --ic-c: #129a9a; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%23129a9a%7D.ft%7Bfill:%23129a9a;fill-opacity:.2%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='ft' d='M9 31c7-5 13 5 19 0s13 5 18 0 6-1 9 1v14a3 3 0 01-3 3H12a3 3 0 01-3-3z'/%3E%3Crect x='9' y='11' width='46' height='37' rx='3'/%3E%3Cpath class='a' d='M9 31c7-5 13 5 19 0s13 5 18 0 6-1 9 1'/%3E%3Cpath class='th' d='M26 11V7h12v4M23 48l-5 10M41 48l5 10'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--clock { --em26-home-card-accent: #f2b632; }
.em26-home-real .em26-home-real-root--clock .em26-home-real-root__head > span:last-child { color: #8a5d00; }
.em26-home-real .em26-home-real-root--clock .em26-material-glyph { --ic-c: #f2b632; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%23c58a10%7D.ft%7Bfill:%23f2b632;fill-opacity:.2%7D.s%7Bfill:%23c58a10;stroke:none%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Ccircle class='ft' cx='32' cy='32' r='23'/%3E%3Ccircle cx='32' cy='32' r='23'/%3E%3Cpath class='th' d='M32 12v4M52 32h-4M32 52v-4M12 32h4'/%3E%3Cpath class='a' d='M32 32V19'/%3E%3Cpath d='M32 32l9 5'/%3E%3Ccircle class='s' cx='32' cy='32' r='2.4'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--decor { --em26-home-card-accent: #e05d49; }
.em26-home-real .em26-home-real-root--decor .em26-home-real-root__head > span:last-child { color: #b8402f; }
.em26-home-real .em26-home-real-root--decor .em26-material-glyph { --ic-c: #f2b632; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.gf%7Bfill:%23f2b632;fill-opacity:.55%7D.w%7Bstroke:%23fffefa;stroke-opacity:.95%7D.s%7Bfill:%23c58a10;stroke:none%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='gf' d='M7 47l8-13 13 4 2 13-13 5z'/%3E%3Cpath d='M7 47l8-13 13 4 2 13-13 5z'/%3E%3Cpath class='gf' d='M33 55l4-15 12-2 6 10-9 9z'/%3E%3Cpath d='M33 55l4-15 12-2 6 10-9 9z'/%3E%3Cpath class='gf' d='M19 29l6-13 13 4-1 12-10 4z'/%3E%3Cpath d='M19 29l6-13 13 4-1 12-10 4z'/%3E%3Cpath class='gf' d='M43 25l5-8 9 4-2 9z'/%3E%3Cpath d='M43 25l5-8 9 4-2 9z'/%3E%3Cpath class='w th' d='M13 42l5-6M39 47l6-5M26 25l4-6M47 21l3-2.500M40 52l6-4'/%3E%3Cpath class='s' d='M10 12l1.200 2.800 2.800 1.200-2.800 1.200L10 20l-1.200-2.800L6 16l2.800-1.200z'/%3E%3Cpath class='s' d='M54 5l.9 2.100 2.100.9-2.100.9L54 11l-.9-2.100-2.100-.9 2.100-.9z'/%3E%3Cpath class='s' d='M33 7l2-1 1.200 2.200-2.200 1z'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--molds { --em26-home-card-accent: #1d5dbb; }
.em26-home-real .em26-home-real-root--molds .em26-home-real-root__head > span:last-child { color: #1d5dbb; }
.em26-home-real .em26-home-real-root--molds .em26-material-glyph { --ic-c: #1d5dbb; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.ft%7Bfill:%231d5dbb;fill-opacity:.2%7D.s%7Bfill:%231d5dbb;stroke:none%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='th' d='M10 54h44'/%3E%3Crect class='ft' x='6' y='12' width='52' height='38' rx='9'/%3E%3Crect x='6' y='12' width='52' height='38' rx='9'/%3E%3Ccircle class='th' cx='20' cy='26' r='6'/%3E%3Crect class='th' x='37' y='20' width='12' height='12' rx='3.5'/%3E%3Cpath class='th' d='M20 35.5l5.2 3v6L20 47.5l-5.2-3v-6z'/%3E%3Cpath class='s' d='M43 35c3 3.4 5 5.4 5 7.8a5 5 0 01-10 0c0-2.4 2-4.4 5-7.8z'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--tools { --em26-home-card-accent: #b31368; }
.em26-home-real .em26-home-real-root--tools .em26-home-real-root__head > span:last-child { color: #b31368; }
.em26-home-real .em26-home-real-root--tools .em26-material-glyph { --ic-c: #b31368; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%23b31368%7D.ft%7Bfill:%23b31368;fill-opacity:.2%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='ft' d='M15.2 33h21.6l-1.6 16a3 3 0 01-3 2.7H19.8a3 3 0 01-3-2.7z'/%3E%3Cpath d='M13 15h26l-2.9 34.4a3 3 0 01-3 2.6H18.9a3 3 0 01-3-2.6z'/%3E%3Cpath class='th' d='M18.6 23h6M19.3 29h4.4M20 41h6'/%3E%3Cpath class='a' d='M50 6L31 38'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--learning { --em26-home-card-accent: #1d5dbb; }
.em26-home-real .em26-home-real-root--learning .em26-home-real-root__head > span:last-child { color: #1d5dbb; }
.em26-home-real .em26-home-real-root--learning .em26-material-glyph { --ic-c: #1d5dbb; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%231d5dbb%7D.ft%7Bfill:%231d5dbb;fill-opacity:.2%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='ft' d='M8 16c8-3 17-3 24 3v32c-7-6-16-6-24-3z'/%3E%3Cpath d='M8 16c8-3 17-3 24 3 7-6 16-6 24-3v32c-8-3-17-3-24 3-7-6-16-6-24-3z'/%3E%3Cpath d='M32 19v32'/%3E%3Cpath class='th' d='M14 26h12M14 33h10M14 40h12'/%3E%3Ccircle class='ft' cx='44' cy='30' r='7'/%3E%3Ccircle class='a' cx='44' cy='30' r='7'/%3E%3Cpath class='a' d='M40.6 30.2l2.4 2.4 4.4-4.9'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root--resin .em26-material-glyph { --ic-c: #1d5dbb; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%231d5dbb%7D.ft%7Bfill:%231d5dbb;fill-opacity:.2%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Cpath class='ft' d='M5 38h25.500v14a3 3 0 01-3 3H8a3 3 0 01-3-3z'/%3E%3Cpath class='ft' d='M36.500 40h22v12a3 3 0 01-3 3h-16a3 3 0 01-3-3z'/%3E%3Crect x='13.500' y='3.500' width='8' height='5.500' rx='1'/%3E%3Crect x='43.500' y='16.500' width='7' height='5' rx='1'/%3E%3Cpath d='M10 9h15v4c0 2.500 5.500 4.500 5.500 10v29a3 3 0 01-3 3H8a3 3 0 01-3-3V23c0-5.500 5-7.500 5-10z'/%3E%3Cpath d='M41 22h12v3.500c0 2 5.500 3.500 5.500 8.500v18a3 3 0 01-3 3h-16a3 3 0 01-3-3V34c0-5 4.500-6.500 4.500-8.500z'/%3E%3Cpath class='a th' d='M13.600 40l4.150-10.500 4.150 10.500M15.100 36.400h5.300'/%3E%3Cpath class='a th' d='M44.800 37v8.500M44.800 37h2.900a2.100 2.100 0 010 4.200h-2.900M44.800 41.200h3.300a2.200 2.200 0 010 4.300h-3.300'/%3E%3Cpath class='a th' d='M3 58.500h58'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin { --fc: #1d5dbb; --em26-home-card-accent: #1d5dbb; border-color: #1d5dbb; color: var(--em26-home-ink); background: linear-gradient(135deg, #e4edfb 0%, color-mix(in srgb, #e4edfb 40%, #fffefa) 42%, #fffefa 100%); }
.em26-home-real .em26-home-real-root--resin::before { height: 8px; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin { position: relative; isolation: isolate; overflow: hidden; }
.em26-home-real .em26-home-real-root--printing .em26-material-glyph { --ic-c: #129a9a; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%2316353d' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cstyle%3E.a%7Bstroke:%230b6e6e%7D.ft%7Bfill:%23129a9a;fill-opacity:.2%7D.s%7Bfill:%230b6e6e;stroke:none%7D.th%7Bstroke-width:1.35%7D%3C/style%3E%3Ccircle class='ft' cx='20' cy='32' r='16.500'/%3E%3Ccircle cx='20' cy='32' r='16.500'/%3E%3Ccircle class='a th' cx='20' cy='32' r='12.400'/%3E%3Ccircle class='a th' cx='20' cy='32' r='9.300'/%3E%3Ccircle cx='20' cy='32' r='4.400'/%3E%3Ccircle class='s' cx='20' cy='32' r='1.600'/%3E%3Cpath class='a' d='M32 19.500c7-6.500 17-4 17 8.500'/%3E%3Cpath class='ft' d='M41 28h18c-1 5.500 3 8 3 14a7 7 0 01-7 7H45a7 7 0 01-7-7c0-6 4-8.500 3-14z'/%3E%3Cpath d='M41 28h18c-1 5.500 3 8 3 14a7 7 0 01-7 7H45a7 7 0 01-7-7c0-6 4-8.500 3-14z'/%3E%3Cpath class='a th' d='M41 33.500h18M39.500 38.500h21M38.800 43.500h22.400'/%3E%3Cpath class='th' d='M37 56h27'/%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing { --fc: #129a9a; --em26-home-card-accent: #129a9a; border-color: #129a9a; color: var(--em26-home-ink); background: linear-gradient(135deg, #dcf1f0 0%, color-mix(in srgb, #dcf1f0 40%, #fffefa) 42%, #fffefa 100%); }
.em26-home-real .em26-home-real-root--printing::before { height: 8px; }
.em26-home-real .em26-home-real-root--printing::after { content: ""; position: absolute; z-index: 0; right: 0; top: 14px; width: 58%; height: 150px; pointer-events: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 240'%3E%3Ccircle cx='560' cy='20' r='34' fill='none' stroke='%23129a9a' stroke-opacity='0.62' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='39' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='58' fill='none' stroke='%231d5dbb' stroke-opacity='0.58' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='63' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='82' fill='none' stroke='%23129a9a' stroke-opacity='0.54' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='87' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='106' fill='none' stroke='%23f2b632' stroke-opacity='0.50' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='111' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='130' fill='none' stroke='%23129a9a' stroke-opacity='0.46' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='135' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='154' fill='none' stroke='%231d5dbb' stroke-opacity='0.42' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='159' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='178' fill='none' stroke='%23129a9a' stroke-opacity='0.38' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='183' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='202' fill='none' stroke='%23f2b632' stroke-opacity='0.34' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='207' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='226' fill='none' stroke='%23129a9a' stroke-opacity='0.30' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='231' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3Ccircle cx='560' cy='20' r='250' fill='none' stroke='%231d5dbb' stroke-opacity='0.26' stroke-width='12'/%3E%3Ccircle cx='560' cy='20' r='255' fill='none' stroke='white' stroke-opacity='.55' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right top / contain; opacity: .92; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 30%); mask-image: linear-gradient(90deg, transparent 0, #000 30%); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin > * { position: relative; z-index: 1; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin .em26-home-real-root__head { min-height: 88px; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin .em26-material-glyph { flex-basis: 88px; width: 88px; height: 88px; padding: 9px; border-radius: 20px; background-color: #fffefa; box-shadow: 0 8px 20px rgba(22,53,61,.12); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin .em26-home-real-root__head > span:last-child { padding: 2px 8px; border-radius: 4px; background: rgba(255,254,250,.9); color: var(--em26-home-ink); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin h3 { margin-top: 20px; font-size: 32px; font-weight: 800; line-height: 1.05; letter-spacing: -.03em; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin > p { min-height: 0; max-width: 44ch; color: var(--em26-home-ink); font-size: 15px; opacity: .85; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin ul { gap: 8px; margin: 0 0 22px; padding: 0; list-style: none; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin li { padding: 5px 12px; border: 1px solid color-mix(in srgb, var(--fc) 35%, var(--em26-home-line)); border-radius: 999px; background: #fffefa; color: var(--em26-home-ink); font-size: 13px; font-weight: 650; line-height: 1.3; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin li::before { display: none; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin footer { align-items: center; padding: 13px 16px; border-top: 0; border-radius: 8px; background: var(--em26-home-magenta); color: #fff; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin footer small { max-width: none; font: 700 14px/1.2 "Manrope", Arial, sans-serif; opacity: 1; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin :where(a, button):focus-visible { outline-color: var(--em26-home-ink); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing > * { position: relative; z-index: 1; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing .em26-home-real-root__head { min-height: 88px; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing .em26-material-glyph { flex-basis: 88px; width: 88px; height: 88px; padding: 9px; border-radius: 20px; background-color: #fffefa; box-shadow: 0 8px 20px rgba(22,53,61,.12); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing .em26-home-real-root__head > span:last-child { padding: 2px 8px; border-radius: 4px; background: rgba(255,254,250,.9); color: var(--em26-home-ink); }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing h3 { margin-top: 20px; font-size: 32px; font-weight: 800; line-height: 1.05; letter-spacing: -.03em; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing > p { min-height: 0; max-width: 44ch; color: var(--em26-home-ink); font-size: 15px; opacity: .85; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing ul { gap: 8px; margin: 0 0 22px; padding: 0; list-style: none; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing li { padding: 5px 12px; border: 1px solid color-mix(in srgb, var(--fc) 35%, var(--em26-home-line)); border-radius: 999px; background: #fffefa; color: var(--em26-home-ink); font-size: 13px; font-weight: 650; line-height: 1.3; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing li::before { display: none; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing footer { align-items: center; padding: 13px 16px; border-top: 0; border-radius: 8px; background: var(--em26-home-magenta); color: #fff; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing footer small { max-width: none; font: 700 14px/1.2 "Manrope", Arial, sans-serif; opacity: 1; }
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing :where(a, button):focus-visible { outline-color: var(--em26-home-ink); }

@media (max-width: 1100px) {
  .em26-home-real .em26-home-real-root--printing,
  .em26-home-real .em26-home-real-root--learning { grid-column: span 6; }
}
@media (max-width: 767px) {
  .em26-home-real .em26-home-real-root--printing,
  .em26-home-real .em26-home-real-root--learning { grid-column: span 4; }
}
@media (max-width: 640px) {
  .em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin h3,
  .em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing h3 { font-size: 26px; }
  .em26-home-real .em26-home-real-root--printing::after { width: 70%; height: 110px; opacity: .6; }
}

/* Phones: the two-class span 4 / span 6 rules above (specificity 0,2,0) come later in the file than the 520 px block and kept
   the last two root cards spanning four columns, which added empty implicit columns and made cards 1 to 7 narrower. Same
   specificity, placed last, so it wins. */
@media (max-width: 520px) {
  .em26-home-real .em26-home-real-root--printing,
  .em26-home-real .em26-home-real-root--learning { grid-column: 1; }
}

/* Whole root card is the link (the h3 anchor stretches over it); the footer line is its visible label. */
.em26-home-real-root h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.em26-home-real-root:hover footer span,
.em26-home-real-root:focus-within footer span { transform: translate(2px, -2px); }
.em26-home-real-root footer span { transition: transform 160ms ease; }
.em26-home-real-root h3 a:focus-visible { outline: 3px solid var(--em26-home-cobalt); outline-offset: 4px; }
.em26-home-real-root--resin h3 a:focus-visible { outline-color: var(--em26-home-saffron); }
.em26-home-real-root li.em26-home-real-root__more { padding-left: 0; font-weight: 700; color: var(--em26-home-ink); }
.em26-home-real-root li.em26-home-real-root__more::before { content: none; }
.em26-home-real-root--resin li.em26-home-real-root__more { color: var(--em26-home-paper); }
#catalogue-roots { scroll-margin-top: 5rem; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .em26-home-real-root footer span { transition: none; } }

/* Home resin picker: special tasks that the six scenarios do not cover (EM-12). */
.em26-home-real-special-tasks { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.75rem; margin-top: 1rem; }
.em26-home-real-special-tasks strong { font-size: 0.9375rem; }
.em26-home-real-special-tasks a {
  display: inline-flex; min-height: 2.75rem; align-items: center; padding: 0 1rem;
  border: 1px solid var(--em26-home-ink); border-radius: 0.5rem;
  color: var(--em26-home-ink); font-size: 0.9375rem; font-weight: 700; text-decoration: none;
}
.em26-home-real-special-tasks a:hover, .em26-home-real-special-tasks a:focus-visible { color: var(--em26-home-paper); background: var(--em26-home-ink); }

/* The footer line sits above the stretched link; let clicks pass through to it. */
.em26-home-real-root footer { pointer-events: none; }

/* Resin and printing cards lift every child with position:relative; the heading must stay static so its stretched link covers the whole card. */
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--resin > h3,
.em26-home-real .em26-home-real-root-grid .em26-home-real-root--printing > h3 { position: static; }

/* Home footer: legal pages (same registry routes as the inner footer), one row in the bottom bar. */
.em26-home-real .em26-home-real-footer nav.em26-home-real-footer__legal-nav { display: flex; flex-wrap: wrap; gap: 0 24px; }
.em26-home-real .em26-home-real-footer nav.em26-home-real-footer__legal-nav a { display: inline-flex; min-height: 44px; align-items: center; color: rgba(247, 244, 236, .82); font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
.em26-home-real .em26-home-real-footer nav.em26-home-real-footer__legal-nav a:hover { color: var(--em26-home-paper); }
.em26-home-real .em26-home-real-footer nav.em26-home-real-footer__legal-nav a:focus-visible { outline: 3px solid var(--em26-home-paper); outline-offset: 2px; }

/* Colour and decor group (owner-approved 22 Oct): same tile component as the resin group, turquoise accent,
   six results + the «Petri Art» row. The former three-card block and its nested Petri cards are gone. */
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-task-picker__group-heading > span { color: #0f7575; }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article::before { background: var(--em26-home-turquoise); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article > span { color: #0f7575; }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(1)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M60 16C60 16 30 50 30 72a30 30 0 0 0 60 0C90 50 60 16 60 16z'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Cpath d='M40 78c7-6 13 6 20 0s13 6 20 0'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(2)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Ccircle cx='60' cy='62' r='36'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Ccircle cx='60' cy='62' r='18' fill='%23129A9A'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(3)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cellipse cx='60' cy='66' rx='44' ry='24'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Ccircle cx='46' cy='64' r='8'/%3E%3Ccircle cx='72' cy='60' r='12'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(4)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Cpath d='M58 18l9 27 27 9-27 9-9 27-9-27-27-9 27-9z'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Cpath d='M94 20l3 9 9 3-9 3-3 9-3-9-9-3 9-3z'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(5)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Crect x='16' y='40' width='88' height='44' rx='8'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Cpath d='M16 52c0-6.6 5.4-12 12-12h64c6.6 0 12 5.4 12 12'/%3E%3Cpath d='M34 98h52'/%3E%3C/g%3E%3C/svg%3E"); }
.em26-home-real .em26-home-real-task-picker__colour .em26-home-real-resin-grid article:nth-child(6)::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='%2316353D'%3E%3Crect x='16' y='36' width='88' height='56' rx='6'/%3E%3C/g%3E%3Cg stroke='%23129A9A'%3E%3Ccircle cx='40' cy='70' r='8'/%3E%3Ccircle cx='62' cy='58' r='6'/%3E%3Ccircle cx='82' cy='72' r='9'/%3E%3Cpath d='M16 50h88'/%3E%3C/g%3E%3C/svg%3E"); }

/* Phones: both picker groups as compact rows (title, one line, whole tile is the link). */
@media (max-width: 599px) {
  .em26-home-real .em26-home-real-resin-grid { gap: 10px; }
  .em26-home-real .em26-home-real-resin-grid article { padding: 16px 72px 16px 16px; }
  .em26-home-real .em26-home-real-resin-grid article > span { min-height: 0; }
  .em26-home-real .em26-home-real-resin-grid h3 { margin-top: 4px; font-size: 18px; }
  .em26-home-real .em26-home-real-resin-grid p { margin: 6px 0 10px; font-size: 14px; line-height: 1.5; }
  .em26-home-real .em26-home-real-resin-grid article::after { top: 16px; right: 16px; width: 40px; height: 40px; }
}

/* ---------- Hero (owner chose variant 2, 22 Oct): one light plate, one real workshop photo, three numbered points ----------
   Copy left, photo right (stacked on phones: copy → photo → points). The numbers sit on the objects they name;
   homepage-shadow.js places them, tells the three points once (spotlight + progress bar), then links them to hover/focus. */
@property --em26-hero-sx { syntax: "<length-percentage>"; inherits: false; initial-value: 50%; }
@property --em26-hero-sy { syntax: "<length-percentage>"; inherits: false; initial-value: 50%; }

.em26-home-real .em26-home-real-hero {
  padding: clamp(24px, 2.6vw, 36px) max(var(--em26-home-gutter), calc((100% - var(--em26-home-content)) / 2)) clamp(44px, 5vw, 72px);
  border-bottom: 0;
}
.em26-home-intro {
  --em26-hero-cobalt: var(--em26-home-cobalt);
  --em26-hero-magenta: var(--em26-home-magenta);
  --em26-hero-turquoise: #0f7f7f;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  grid-template-areas: "copy photo" "key photo";
  min-height: 568px;
  overflow: hidden;
  border: 1px solid var(--em26-home-line);
  border-radius: 20px;
  background: var(--em26-home-surface);
  color: var(--em26-home-ink);
}

.em26-home-intro__copy { grid-area: copy; align-self: end; min-width: 0; padding: 52px 56px 0; }
.em26-home-real .em26-home-intro__eyebrow { margin: 0; }
.em26-home-intro__eyebrow > span { display: block; text-wrap: balance; }
.em26-home-real .em26-home-intro h1 {
  max-width: none;
  margin: 16px 0 0;
  font-size: clamp(32px, 3vw, 44px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -.035em;
  text-wrap: pretty;
}
.em26-home-real .em26-home-intro__lead { max-width: 54ch; margin: 18px 0 0; color: var(--em26-home-muted); font-size: 17px; line-height: 1.6; }
.em26-home-intro__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.em26-home-real .em26-home-intro__actions a {
  display: inline-flex;
  min-height: 52px;
  padding: 0 24px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--em26-home-line-strong);
  border-radius: var(--em26-home-r8);
  color: var(--em26-home-ink);
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease;
}
.em26-home-real .em26-home-intro__actions a:first-child { border-color: var(--em26-home-magenta); background: var(--em26-home-magenta); color: #fff; }
.em26-home-real .em26-home-intro__actions a:first-child:hover { border-color: var(--em26-home-magenta-hover); background: var(--em26-home-magenta-hover); }
.em26-home-real .em26-home-intro__actions a:not(:first-child):hover { border-color: var(--em26-home-ink); background: rgba(22, 53, 61, .04); }

/* The three points: a coloured progress rule over each, number, name and line. */
.em26-home-intro__key {
  grid-area: key;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin: 36px 56px 44px;
  padding: 0;
  list-style: none;
}
.em26-home-intro__key li { min-width: 0; margin: 0; }
.em26-home-real a.em26-home-intro__point {
  --em26-hero-tone: var(--em26-hero-cobalt);
  position: relative;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 10px;
  height: 100%;
  min-height: 44px;
  padding-top: 16px;
  color: var(--em26-home-muted);
  font-size: 14px;
  line-height: 1.45;
  text-decoration: none;
}
.em26-home-real a.em26-home-intro__point--magenta { --em26-hero-tone: var(--em26-hero-magenta); }
.em26-home-real a.em26-home-intro__point--turquoise { --em26-hero-tone: var(--em26-hero-turquoise); }
.em26-home-intro__point::before,
.em26-home-intro__point::after { content: ""; position: absolute; top: 0; left: 0; height: 3px; border-radius: 3px; }
.em26-home-intro__point::before { right: 0; background: var(--em26-home-line); }
.em26-home-intro__point::after { width: 100%; background: var(--em26-hero-tone); transition: width .45s ease; }
.em26-home-intro__num {
  display: grid;
  width: 26px;
  height: 26px;
  margin-top: -2px;
  place-items: center;
  border-radius: 50%;
  background: var(--em26-hero-tone);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}
.em26-home-intro__point-text b { color: var(--em26-home-ink); font-weight: 800; }
.em26-home-intro__point:hover .em26-home-intro__point-text b,
.em26-home-intro__point:focus-visible .em26-home-intro__point-text b { color: var(--em26-hero-tone); text-decoration: underline; text-underline-offset: 3px; }

/* The photo: one bleed panel, no inner frame. */
.em26-home-intro__photo { grid-area: photo; position: relative; min-width: 0; min-height: 100%; margin: 0; overflow: hidden; background: #e9e5dc; }
.em26-home-intro__photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: 50% 60%;
}
.em26-home-intro__spot {
  --em26-hero-sr: 72px;
  position: absolute;
  inset: 0;
  z-index: 1;
  background: radial-gradient(circle at var(--em26-hero-sx) var(--em26-hero-sy), rgba(22, 53, 61, 0) 0, rgba(22, 53, 61, 0) var(--em26-hero-sr), rgba(22, 53, 61, .52) calc(var(--em26-hero-sr) + 110px));
  opacity: 0;
  pointer-events: none;
  transition: opacity .45s ease, --em26-hero-sx .7s cubic-bezier(.3, .7, .2, 1), --em26-hero-sy .7s cubic-bezier(.3, .7, .2, 1);
}
.em26-home-intro--active .em26-home-intro__spot { opacity: 1; }

/* Numbers on the photo: hidden until the script has placed them on their objects. */
.em26-home-intro__pin {
  --em26-hero-tone: var(--em26-hero-cobalt);
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  opacity: 0;
  transform: scale(.4);
  transition: opacity .35s ease, transform .45s cubic-bezier(.3, 1.5, .5, 1);
  transition-delay: var(--em26-hero-delay, 0s);
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.em26-home-intro__pin--magenta { --em26-hero-tone: var(--em26-hero-magenta); --em26-hero-delay: .12s; }
.em26-home-intro__pin--turquoise { --em26-hero-tone: var(--em26-hero-turquoise); --em26-hero-delay: .24s; }
.em26-home-intro--ready .em26-home-intro__pin { opacity: 1; transform: scale(1); }
.em26-home-intro__pin b {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  border-radius: 50%;
  background: var(--em26-hero-tone);
  box-shadow: 0 0 0 3px rgba(255, 254, 250, .96), 0 8px 22px rgba(22, 53, 61, .32);
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
}
/* A ring keeps breathing out of every number; the active one rings harder. */
.em26-home-intro__pin::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid var(--em26-hero-tone);
  border-radius: 50%;
  opacity: 0;
}
.em26-home-intro--ready .em26-home-intro__pin::before { animation: em26-home-intro-ring 3.2s ease-out infinite; animation-delay: calc(var(--em26-hero-delay, 0s) * 6); }
.em26-home-intro__pin--on::before { animation-duration: 1.4s !important; animation-delay: 0s !important; }
@keyframes em26-home-intro-ring {
  0% { opacity: .9; transform: scale(1); }
  70%, 100% { opacity: 0; transform: scale(2.1); }
}
.em26-home-intro--active .em26-home-intro__pin:not(.em26-home-intro__pin--on) { opacity: .5; transform: scale(.8); }
.em26-home-intro__pin--on { transform: scale(1.12) !important; }
/* Name chip beside the active number (the same name as in the list below). */
.em26-home-intro__pin i {
  position: absolute;
  top: 50%;
  left: calc(100% + 10px);
  padding: 7px 11px;
  border-radius: 6px;
  background: var(--em26-home-ink);
  color: var(--em26-home-paper);
  font-size: 14px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  opacity: 0;
  transform: translate(-6px, -50%);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.em26-home-intro__pin--left i { right: calc(100% + 10px); left: auto; transform: translate(6px, -50%); }
.em26-home-intro__pin--on i { opacity: 1; transform: translate(0, -50%); }

/* The telling: once, when the photo is in view. Each point's rule fills while its number is lit. */
.em26-home-intro--telling .em26-home-intro__point::after { width: 0; transition: none; }
.em26-home-intro--telling .em26-home-intro__point--seen::after { width: 100%; transition: none; }
.em26-home-intro--telling .em26-home-intro__point--on::after { width: 100%; transition: width 2.2s linear; }
.em26-home-intro__point--on .em26-home-intro__point-text b { color: var(--em26-hero-tone); }

/* Photo settles in once. */
.em26-home-intro__photo img { transform: scale(1.035); transition: transform 1.6s cubic-bezier(.2, .7, .2, 1); }
.em26-home-intro--ready .em26-home-intro__photo img { transform: scale(1); }

@media (prefers-reduced-motion: reduce) {
  .em26-home-intro__photo img,
  .em26-home-intro__pin,
  .em26-home-intro__pin i,
  .em26-home-intro__spot,
  .em26-home-intro__point::after { transition: none !important; }
  .em26-home-intro__photo img { transform: none; }
  .em26-home-intro--ready .em26-home-intro__pin::before { animation: none; }
}

@media (max-width: 1180px) {
  .em26-home-intro__copy { padding: 40px 40px 0; }
  .em26-home-intro__key { grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 28px 40px 36px; }
  .em26-home-real a.em26-home-intro__point { padding-top: 12px; }
}

@media (max-width: 899px) {
  .em26-home-real .em26-home-real-hero { padding: 16px var(--em26-home-gutter) 44px; }
  .em26-home-intro { display: flex; min-height: 0; flex-direction: column; border-radius: 16px; }
  .em26-home-intro__copy { order: 1; padding: 24px 20px 0; }
  .em26-home-intro__photo { order: 2; min-height: 0; margin-top: 24px; aspect-ratio: 4 / 3; }
  .em26-home-intro__key { order: 3; margin: 20px 20px 24px; }
  .em26-home-real .em26-home-intro h1 { font-size: clamp(26px, 7.4vw, 34px); }
  .em26-home-real .em26-home-intro__lead { font-size: 16px; }
  .em26-home-intro__spot { --em26-hero-sr: 52px; }
  .em26-home-intro__pin { width: 36px; height: 36px; margin: -18px 0 0 -18px; }
  .em26-home-intro__pin b { font-size: 15px; }
  .em26-home-intro__pin i { font-size: 13px; }
}
@media (max-width: 374px) {
  .em26-home-intro__copy { padding: 20px 16px 0; }
  .em26-home-intro__key { margin: 18px 16px 20px; }
}
@media (max-width: 599px) {
  .em26-home-intro__photo { aspect-ratio: 1 / 1; }
  .em26-home-intro__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .em26-home-real .em26-home-intro__actions a { width: 100%; }
}

/* Owner, 27 Oct: on a phone the first screen was four stacked blocks of words before the first route.
   The heading keeps its size and every word stays; the kicker stops breaking itself into five lines at 320 px
   and the steps between the four blocks are shorter, so the buttons and the photo come up by about a line and a half. */
@media (max-width: 599px) {
  .em26-home-intro__copy { padding-top: 18px; }
  .em26-home-real .em26-home-intro__eyebrow { font-size: 12px; line-height: 1.35; letter-spacing: .04em; }
  .em26-home-intro__eyebrow > span { display: inline; }
  .em26-home-real .em26-home-intro h1 { margin-top: 10px; }
  .em26-home-real .em26-home-intro__lead { margin-top: 12px; }
  .em26-home-intro__actions { margin-top: 18px; }
  .em26-home-intro__photo { margin-top: 18px; }
}

/* Hero on every device (owner, 22 Oct 18:18): landscape phones, touch, Windows high contrast, print. */
.em26-home-intro__pin,
.em26-home-real a.em26-home-intro__point { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
/* Landscape phones: 4:3 keeps the face and all three numbers in frame (16:9 cut the RESIN TINT number). */
@media (max-width: 899px) and (orientation: landscape) {
  .em26-home-intro__photo { aspect-ratio: 4 / 3; }
  .em26-home-intro__photo img { object-position: 50% 58%; }
}
@media (forced-colors: active) {
  .em26-home-intro__pin b,
  .em26-home-intro__num { border: 2px solid CanvasText; }
  .em26-home-intro__spot { display: none; }
}
@media print {
  .em26-home-intro__pin,
  .em26-home-intro__spot { display: none; }
  .em26-home-intro__photo img { transform: none; }
}
/* Short laptop screens (1280×720 and the like): the buttons stay on the first screen. */
@media (min-width: 900px) and (max-height: 760px) {
  .em26-home-real .em26-home-real-hero { padding-top: 20px; }
  .em26-home-intro { min-height: 520px; }
  .em26-home-intro__copy { padding-top: 40px; }
}

/* 02 · Чому EpoxyMart: one light plate, two pillars, a workshop photo (owner-approved 22 Oct 18:33) */
.em26-home-real .em26-home-pillars { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 34%); overflow: hidden; border-radius: 22px; background: #f3efe4; color: var(--em26-home-ink); }
.em26-home-real .em26-home-pillars__copy { padding: clamp(32px, 4vw, 56px); }
.em26-home-real .em26-home-pillars__head > span { display: block; color: var(--em26-home-magenta); font: 650 11px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; text-transform: uppercase; }
.em26-home-real .em26-home-pillars__head h2 { max-width: 22ch; margin: 14px 0 0; font-size: clamp(28px, 2.7vw, 38px); font-weight: 800; line-height: 1.1; letter-spacing: -.03em; }
.em26-home-real .em26-home-pillars__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 3vw, 44px); margin-top: clamp(28px, 3.4vw, 44px); }
.em26-home-real .em26-home-pillars__item { --pillar: var(--em26-home-cobalt); display: flex; flex-direction: column; align-items: flex-start; padding-top: 20px; border-top: 2px solid var(--pillar); }
.em26-home-real .em26-home-pillars__item--own { --pillar: var(--em26-home-magenta); }
.em26-home-real .em26-home-pillars__tag { color: var(--pillar); font: 650 11px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }
.em26-home-real .em26-home-pillars__item h3 { margin: 14px 0 0; font-weight: 800; }
.em26-home-real .em26-home-pillars__num { display: block; font-size: clamp(48px, 4.6vw, 64px); line-height: 1; letter-spacing: -.04em; }
.em26-home-real .em26-home-pillars__num small { font-size: .34em; font-weight: 700; letter-spacing: 0; }
.em26-home-real .em26-home-pillars__cap { display: block; margin-top: 10px; font-size: 18px; font-weight: 700; line-height: 1.3; letter-spacing: -.01em; }
.em26-home-real .em26-home-pillars__item p { margin: 12px 0 0; color: var(--em26-home-muted); font-size: 16px; line-height: 1.6; }
.em26-home-real .em26-home-pillars__item a { display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; padding-top: 12px; color: var(--em26-home-ink); font-size: 15px; font-weight: 700; text-decoration: none; }
.em26-home-real .em26-home-pillars__item a > span:first-child { padding-bottom: 2px; border-bottom: 2px solid var(--pillar); }
.em26-home-real .em26-home-pillars__item a:hover > span:first-child { border-bottom-width: 3px; }
.em26-home-real .em26-home-pillars__item a:focus-visible { outline: 3px solid var(--em26-home-cobalt); outline-offset: 4px; border-radius: 4px; }
.em26-home-real .em26-home-pillars__photo { display: block; width: 100%; height: 100%; min-height: 100%; object-fit: cover; object-position: 50% 45%; }
@media (max-width: 899px) {
  .em26-home-real .em26-home-pillars { grid-template-columns: minmax(0, 1fr); border-radius: 18px; }
  .em26-home-real .em26-home-pillars__photo { grid-row: 1; height: clamp(220px, 56vw, 380px); object-position: 50% 72%; }
  .em26-home-real .em26-home-pillars__copy { padding: 28px 20px 20px; }
  .em26-home-real .em26-home-pillars__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}
@media (min-width: 600px) and (max-width: 899px) {
  .em26-home-real .em26-home-pillars__grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}
@media (max-width: 374px) {
  .em26-home-real .em26-home-pillars__copy { padding: 24px 16px 16px; }
  .em26-home-real .em26-home-pillars__head h2 { font-size: 25px; }
}

/* 04 · У роботі: three workshop steps on a light band + Instagram line (owner, 22 Oct 18:57) */
.em26-home-real .em26-home-real-material-proof.em26-home-work { color: var(--em26-home-ink); background: var(--em26-home-paper); }
.em26-home-real .em26-home-work .em26-home-real-section-heading > span { color: var(--em26-home-magenta); }
.em26-home-real .em26-home-work .em26-home-real-section-heading p { color: var(--em26-home-muted); }
.em26-home-real .em26-home-work__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 2.4vw, 32px); margin: 0; padding: 0; list-style: none; }
.em26-home-real .em26-home-work__step { --step: var(--em26-home-turquoise); display: flex; flex-direction: column; min-width: 0; }
.em26-home-real .em26-home-work__step--pour { --step: var(--em26-home-cobalt); }
.em26-home-real .em26-home-work__step--result { --step: var(--em26-home-magenta); }
.em26-home-real .em26-home-work__step img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 18px; }
.em26-home-real .em26-home-work__step--tint img { object-position: 22% 50%; }
.em26-home-real .em26-home-work__step > div { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding-top: 18px; }
.em26-home-real .em26-home-work__num { color: var(--step); font: 650 11px/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }
.em26-home-real .em26-home-work__step h3 { margin: 8px 0 0; font-size: 20px; font-weight: 800; line-height: 1.2; letter-spacing: -.015em; }
.em26-home-real .em26-home-work__step p { margin: 8px 0 0; color: var(--em26-home-muted); font-size: 16px; line-height: 1.6; }
.em26-home-real .em26-home-work a { display: inline-flex; align-items: center; min-height: 44px; color: var(--em26-home-ink); font-size: 15px; font-weight: 700; text-decoration: none; }
.em26-home-real .em26-home-work__step a { margin-top: auto; padding-top: 10px; }
.em26-home-real .em26-home-work__step a > span:first-child { padding-bottom: 2px; border-bottom: 2px solid var(--step); }
.em26-home-real .em26-home-work a:hover > span:first-child { border-bottom-width: 3px; }
.em26-home-real .em26-home-work a:focus-visible { outline: 3px solid var(--em26-home-cobalt); outline-offset: 4px; border-radius: 4px; }
.em26-home-real .em26-home-work__social { max-width: none; width: 100%; margin: clamp(28px, 3vw, 40px) 0 0; padding-top: 18px; border-top: 1px solid var(--em26-home-line); text-align: center; }
.em26-home-real .em26-home-work__social a { display: inline-block; padding: 12px 0; line-height: 1.5; }
.em26-home-real .em26-home-work__social a > span:first-child { padding-bottom: 2px; border-bottom: 2px solid var(--em26-home-magenta); }
/* The Instagram line closes the block; it is not a block of its own. The full section bottom padding plus the next section's
   top padding left ~150 px of empty air under it on desktop and ~90 px on phones (owner, 30 Oct). */
.em26-home-real .em26-home-real-material-proof.em26-home-work { padding-bottom: clamp(12px, 1.6vw, 24px); }
.em26-home-real .em26-home-work__social { padding-top: 10px; }
.em26-home-real .em26-home-work__social a { padding: 10px 0; }
.em26-home-real .em26-home-work__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 767px) {
  .em26-home-real .em26-home-work__steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .em26-home-real .em26-home-work__step { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 16px; padding: 18px 0; border-top: 1px solid var(--em26-home-line); }
  .em26-home-real .em26-home-work__step img { border-radius: 12px; }
  .em26-home-real .em26-home-work__step > div { padding-top: 0; }
  .em26-home-real .em26-home-work__step h3 { font-size: 18px; }
  .em26-home-real .em26-home-work__step p { font-size: 15px; }
  .em26-home-real .em26-home-work__social { margin-top: 4px; text-align: left; }
}
@media (max-width: 374px) {
  .em26-home-real .em26-home-work__step { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; }
}

/* ---------- «Підбір, інструкції, доставка й жива команда — поруч» (owner, 22 Oct 21:06: the photo must not stretch) ----------
   Light plate like block 02. The photo is a fixed square (the whole frame: person, toners, Art Pro, clock), never stretched;
   the copy sits beside it, centred on the photo, left-aligned; the five links wrap as one row of buttons under the heading. */
.em26-home-real .em26-home-real-support { text-align: left; }
.em26-home-real .em26-home-real-support > .em26-home-support { display: grid; grid-template-columns: minmax(0, 26rem) minmax(0, 1fr); align-items: center; gap: clamp(28px, 4vw, 56px); max-width: none; margin: 0; padding: clamp(16px, 1.6vw, 22px); border-radius: 22px; background: #f3efe4; }
.em26-home-real .em26-home-support__photo { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 14px; }
.em26-home-real .em26-home-support__copy { padding: 8px clamp(8px, 2vw, 32px) 8px 0; }
.em26-home-real .em26-home-support__copy .em26-home-real-eyebrow { margin: 0; }
.em26-home-real .em26-home-real-support .em26-home-support__copy h2 { max-width: 18ch; margin: 14px 0 0; font-size: clamp(28px, 2.7vw, 38px); font-weight: 800; line-height: 1.1; letter-spacing: -.03em; }
.em26-home-real .em26-home-support__links { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px; max-width: 34rem; margin: clamp(22px, 2.6vw, 32px) 0 0; }
.em26-home-real .em26-home-real-support .em26-home-support__links a { flex: 0 0 auto; min-width: 0; min-height: 48px; padding: 10px 18px; border: 1px solid var(--em26-home-line-strong); border-radius: var(--em26-home-r8); background: #fffefa; color: var(--em26-home-ink); font-size: 15px; font-weight: 700; }
.em26-home-real .em26-home-real-support .em26-home-support__links a:first-child { border-color: var(--em26-home-magenta); background: var(--em26-home-magenta); color: #fff; }
.em26-home-real .em26-home-real-support .em26-home-support__links a:first-child:hover { border-color: var(--em26-home-magenta-hover); background: var(--em26-home-magenta-hover); }
.em26-home-real .em26-home-real-support .em26-home-support__links a:not(:first-child):hover { border-color: var(--em26-home-ink); }
@media (max-width: 899px) {
  .em26-home-real .em26-home-real-support > .em26-home-support { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 12px; border-radius: 18px; }
  .em26-home-real .em26-home-support__copy { padding: 4px 8px 12px; }
}
@media (max-width: 599px) {
  .em26-home-real .em26-home-support__links { display: grid; grid-template-columns: minmax(0, 1fr); }
  .em26-home-real .em26-home-real-support .em26-home-support__links a { justify-content: center; }
}

/* Final QA 22 Oct: «Переглянути» in the task picker was 24 px tall; sub-links in catalogue cards 18 px on desktop. */
.em26-home-real .em26-home-real-task-picker article > a { display: inline-flex; align-items: center; min-height: 44px; }
@media (pointer: fine) {
  .em26-home-real .em26-home-real-root li a { display: inline-flex; align-items: center; min-height: 24px; }
}
/* Final QA 22 Oct: at 1000–1199 px the service links broke into two lines («Про / нас»). */
.em26-home-real .em26-home-real-servicebar nav a { white-space: nowrap; }
@media (max-width: 1199px) {
  .em26-home-real .em26-home-real-servicebar nav { gap: 12px; }
  .em26-home-real .em26-home-real-servicebar p { min-width: 0; }
}

/* Catalogue cards on phones (owner screenshot, 23 Oct 00:00): on touch screens every sub-section link is 44 px tall, while the
   square dot stayed pinned 0.6 em from the top, so it floated above the text. The dot now sits in the row and is centred on
   the text at any link height. */
.em26-home-real .em26-home-real-root li:not(.em26-home-real-root__more) { display: flex; align-items: center; gap: 6px; padding-left: 0; }
.em26-home-real .em26-home-real-root li:not(.em26-home-real-root__more)::before { position: static; flex: 0 0 auto; }

/* «Системи» cards (owner, 26 Oct 18:31): the new photos are 4:3 and composed for the whole frame, so the picture is no longer
   cut to a 2:1 strip. One ratio on every breakpoint; the text block takes the rest. */
.em26-home-real .em26-home-real-system { grid-template-rows: auto 1fr; }
.em26-home-real .em26-home-real-system img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
