:root{--page-title-display:none;}/* Start custom CSS *//* The image optimiser wraps every e-image in <picture>, and Elementor puts the element's
   sizing on that wrapper. Make the <img> fill its wrapper so tiles and the hero crop correctly
   instead of letterboxing at the photo's natural ratio. */
.elementor-6944 picture.e-image-base > img { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: cover; object-position: center; }
/* Optimum Seed is a transparent product shot: fit it inside the tile rather than cropping it. */
.elementor-6944 picture.e-image-base[data-id="3c846cee"] > img { object-fit: contain; }

/* Timeline cards (Task: whole-card clickable + hover). The card wrapper itself is now
   the <a>; the button / text-link inside is plain visual markup (no nested <a>). Colour
   and decoration are pinned here as a guard against the theme's `.elementor a` reset --
   every text node inside already carries its own explicit colour, so this only protects
   the card boundary itself. box-sizing:border-box (already the element default) means the
   1px -> 2px hover border never shifts the card's outer size. */
.elementor-6944 a[data-id="31979e42"],
.elementor-6944 a[data-id="5339d400"],
.elementor-6944 a[data-id="3863bdda"],
.elementor-6944 a[data-id="72a78f02"],
.elementor-6944 a[data-id="20b4cf4b"],
.elementor-6944 a[data-id="13340c14"],
.elementor-6944 a[data-id="416405b9"] {
  color: inherit;
  text-decoration: none;
  box-sizing: border-box;
  box-shadow: 0 2px 6px rgba(0,0,0,.04) !important;
  transition: border-color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
/* Figma 667:11846 "On hover": 2px #0B8231 border, #F3F9F5 background. `hover:hover`
   keeps this off touch devices, where a tap would otherwise leave the hover state
   stuck mid-navigation; the real click/tap target is the native <a> and is unaffected. */
@media (hover: hover) {
.elementor-6944 a[data-id="31979e42"]:hover,
.elementor-6944 a[data-id="5339d400"]:hover,
.elementor-6944 a[data-id="3863bdda"]:hover,
.elementor-6944 a[data-id="72a78f02"]:hover,
.elementor-6944 a[data-id="20b4cf4b"]:hover,
.elementor-6944 a[data-id="13340c14"]:hover,
.elementor-6944 a[data-id="416405b9"]:hover {
  border-color: #0B8231 !important;
  border-width: 2px !important;
  background-color: #F3F9F5 !important;
  transform: translateY(-4px);
  box-shadow: 0 2px 6px rgba(0,0,0,.04) !important;
}
}
/* Keyboard focus gets the same treatment regardless of hover support. */
.elementor-6944 a[data-id="31979e42"]:focus-visible,
.elementor-6944 a[data-id="5339d400"]:focus-visible,
.elementor-6944 a[data-id="3863bdda"]:focus-visible,
.elementor-6944 a[data-id="72a78f02"]:focus-visible,
.elementor-6944 a[data-id="20b4cf4b"]:focus-visible,
.elementor-6944 a[data-id="13340c14"]:focus-visible,
.elementor-6944 a[data-id="416405b9"]:focus-visible {
  border-color: #0B8231 !important;
  border-width: 2px !important;
  background-color: #F3F9F5 !important;
  outline: none;
}
/* Card 31979e42 (Filmcoating) nests a filled "View range" button. Its own darken-on-hover
   used to fire on a direct :hover of the button, independent of the card's hover -- two
   separate triggers for what is meant to be one interaction. Drive it from the card's
   hover/focus instead, same as the card's own border/background/lift. */
@media (hover: hover) {
.elementor-6944 a[data-id="31979e42"]:hover .e-58f976d1-a248 {
  background-color: #e64c00 !important;
}
}
.elementor-6944 a[data-id="31979e42"]:focus-visible .e-58f976d1-a248 {
  background-color: #e64c00 !important;
}

/* responsive fix: stacked step text + hero image on top */
/* hero: image above the text on tablet and mobile */
@media (max-width: 1024px) {
  .elementor-6944 .elementor-element-7262e2f7 { flex-direction: column !important; }
  .elementor-6944 .elementor-element-7262e2f7 > img,
  .elementor-6944 .elementor-element-7262e2f7 > picture { order: -1; width: 100%; }
}/* End custom CSS */