/* DGM-Inventum "Warm Tactile" theme. Everything is scoped to the additive
   Inventum content blocks so shared tenant components remain unchanged. */
.dgm-inventum {
  --inv-canvas: #fbfaf9;
  --inv-panel: #f8f7f4;
  --inv-stone: #f2f0ed;
  --inv-cream: #f0ede7;
  --inv-line: #eae6df;
  --inv-ink: #474645;
  --inv-heading: #343433;
  --inv-black: #161513;
  --inv-muted: #84817d;
  --inv-primary: #00abe3;
  position: relative;
  overflow: clip;
  background: var(--inv-canvas);
  color: var(--inv-ink);
  font-family: Inter, system-ui, sans-serif;
  letter-spacing: -0.011em;
  text-wrap: pretty;
  -webkit-font-smoothing: antialiased;
}

.dgm-inventum *,
.dgm-inventum *::before,
.dgm-inventum *::after { box-sizing: border-box; }
.dgm-inventum h1,
.dgm-inventum h2,
.dgm-inventum h3,
.dgm-inventum h4,
.dgm-inventum .font-heading {
  color: var(--inv-heading);
  font-family: "Inter Tight", Inter, system-ui, sans-serif;
  letter-spacing: -0.03em;
}
.dgm-inventum h1,
.dgm-inventum .display { letter-spacing: -0.042em; line-height: 1.02; }
.dgm-inventum h3,
.dgm-inventum h4 { letter-spacing: -0.02em; }
.dgm-inventum h1.text-white,
.dgm-inventum h2.text-white,
.dgm-inventum h3.text-white,
.dgm-inventum h4.text-white { color: #fff; }
.dgm-inventum .font-mono {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: 0;
}
.dgm-inventum a:focus-visible,
.dgm-inventum button:focus-visible {
  outline: 3px solid rgba(0, 171, 227, .35);
  outline-offset: 4px;
}

/* Theme utilities missing from the shared Tailwind bundle. */
.dgm-inventum .bg-canvas { background-color: var(--inv-canvas); }
.dgm-inventum .bg-panel { background-color: var(--inv-panel); }
.dgm-inventum .bg-stone { background-color: var(--inv-stone); }
.dgm-inventum .text-ink { color: var(--inv-ink); }
.dgm-inventum .text-ink-heading { color: var(--inv-heading); }
.dgm-inventum .text-ink-black { color: var(--inv-black); }
.dgm-inventum .text-ink-muted { color: var(--inv-muted); }
.dgm-inventum .text-ink-heading\/80 { color: rgba(52, 52, 51, .8); }
.dgm-inventum .text-ink-muted\/80 { color: rgba(132, 129, 125, .8); }
.dgm-inventum .border-line { border-color: var(--inv-line); }

.dgm-inventum .card {
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--inv-line);
  transition: box-shadow .28s ease, transform .28s cubic-bezier(.19, 1, .22, 1);
}
.dgm-inventum .card-hover:hover {
  transform: translateY(-3px);
  box-shadow: inset 0 0 0 1px #e3ded5, 0 1px 6px rgba(22, 21, 19, .05), 0 10px 30px rgba(22, 21, 19, .06);
}
.dgm-inventum .ring-stone { box-shadow: inset 0 0 0 1px var(--inv-line); }
.dgm-inventum .shadow-product {
  box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 40px 80px rgba(22, 21, 19, .22);
}
.dgm-inventum .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  border-radius: 9999px;
  font-weight: 600;
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.dgm-inventum .btn:hover { transform: translateY(-1px); }
.dgm-inventum .btn-dark { background: var(--inv-black); color: #fff; }
.dgm-inventum .btn-dark:hover { background: var(--inv-heading); color: #fff; }
.dgm-inventum .btn-cream {
  background: var(--inv-cream);
  color: var(--inv-black);
  box-shadow: inset 0 0 0 1px #e6e1d8;
}
.dgm-inventum .btn-cream:hover { background: #e9e4da; color: var(--inv-black); }
.dgm-inventum .link-accent { color: #0089bd; font-weight: 600; }
.dgm-inventum .link-accent:hover { color: var(--inv-primary); }
.dgm-inventum .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  border-radius: 9999px;
  padding: .4rem .85rem;
  background: #fff;
  color: #5b5955;
  box-shadow: inset 0 0 0 1px var(--inv-line);
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.dgm-inventum .toy {
  --parallax-x: 0px;
  --parallax-y: 0px;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 22px;
  color: #fff;
  box-shadow: 0 10px 24px rgba(22, 21, 19, .1);
  transform: translate3d(var(--parallax-x), var(--parallax-y), 0) rotate(var(--r, 0deg));
  will-change: transform;
}
.dgm-inventum .toy i { font-size: 22px; }
.dgm-inventum [data-reveal] {
  transition: opacity .9s cubic-bezier(.19, 1, .22, 1), transform .9s cubic-bezier(.19, 1, .22, 1);
  transition-delay: var(--reveal-delay, 0ms);
}
.dgm-inventum [data-reveal]:not([data-revealed]) { opacity: 0; transform: translate3d(0, 26px, 0); }
.dgm-inventum [data-reveal][data-revealed] { opacity: 1; transform: none; }
.dgm-inventum .pop:not([data-revealed]) { opacity: 0; transform: scale(.7); }
.dgm-inventum .pop {
  transition: opacity .7s cubic-bezier(.19, 1, .22, 1), transform .7s cubic-bezier(.34, 1.56, .64, 1);
  transition-delay: var(--reveal-delay, 0ms);
}
.dgm-inventum .pop[data-revealed] { opacity: 1; }

/* Existing Shadcn/Reka tabs, visually aligned with the tactile system. */
.dgm-inventum content-tabs { display: block; }
.dgm-inventum .content-tabs__root { gap: 0 !important; }
.dgm-inventum .content-tabs__menu-wrap > div {
  margin-bottom: 1rem !important;
  padding-bottom: 0 !important;
}
.dgm-inventum [role="tablist"] {
  width: 100% !important;
  max-width: 50rem;
  min-height: 3.5rem !important;
  height: auto !important;
  margin-inline: auto;
  padding: .375rem !important;
  border: 1px solid #e4dfd7 !important;
  border-radius: 1rem !important;
  background: #f2f0ed !important;
  color: #706d69;
  box-shadow: inset 0 1px 2px rgba(22, 21, 19, .035);
}
.dgm-inventum [role="tablist"] .tabs-morph-indicator {
  border: 1px solid #e5e0d8;
  border-radius: .7rem !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(22, 21, 19, .06), 0 6px 18px rgba(22, 21, 19, .055) !important;
}
.dgm-inventum [role="tab"] {
  min-height: 2.75rem !important;
  height: 2.75rem !important;
  border-radius: .7rem !important;
  padding: .55rem 1rem !important;
  background: transparent !important;
  color: #706d69 !important;
  box-shadow: none !important;
  font-weight: 650;
  transition: color .2s ease, background-color .2s ease;
}
.dgm-inventum [role="tab"]:hover { color: #343433 !important; }
.dgm-inventum [role="tab"][aria-selected="true"] { color: #161513 !important; }
.dgm-inventum [role="tab"] i { color: #008fbd !important; }
.dgm-inventum [role="tab"]:focus-visible {
  outline: 3px solid rgba(0, 171, 227, .28) !important;
  outline-offset: 2px;
}
.dgm-inventum [role="tabpanel"] > .grid,
.dgm-inventum [role="tabpanel"] > .card { margin-top: 0 !important; }

.dgm-inventum-detail-hero { border-bottom: 1px solid var(--inv-line); }
.dgm-inventum-detail-hero .inv-detail-hero-grid,
.inv-crm .inv-crm-hero-grid { grid-template-columns: minmax(0, 1fr); }
.dgm-inventum-detail-hero .inv-detail-hero-title {
  max-width: 100%;
  /* Long German compounds (Veranstaltungsmanagement, Teilnehmendenmanagement)
     exceed the narrow mobile column at any sane hero size, so let them
     hyphenate at syllable boundaries (lang="de-de" is set); anywhere-break
     stays as the guaranteed no-overflow fallback. */
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: anywhere;
  font-size: 2.1rem;
}
.inv-crm .inv-crm-title { font-size: 2.75rem; }
.dgm-inventum-detail-hero .inv-detail-hero-media {
  min-height: 12rem;
  position: relative;
}
/* Breadcrumb never pushes the compact hero wider than the viewport. */
.dgm-inventum-detail-hero .inv-detail-hero-crumbs > span { min-width: 0; overflow-wrap: anywhere; }
.dgm-inventum-detail-hero .inv-detail-hero-frame { position: absolute; inset: 0; }
.dgm-inventum-detail-hero .inv-detail-hero-fallback {
  background:
    radial-gradient(circle at 22% 28%, rgba(0, 171, 227, .55), transparent 26%),
    radial-gradient(circle at 76% 74%, rgba(122, 108, 240, .5), transparent 24%),
    linear-gradient(135deg, #17171a, #2d3038);
}
#content__section.dgm-inventum-subpage {
  overflow: clip;
  background: var(--inv-canvas, #fbfaf9);
}
#content__section.dgm-inventum-subpage > :not(.dgm-inventum-detail-hero):not(.ce-anchor) {
  position: relative;
}
#content__section.dgm-inventum-subpage .shadow-xl,
#content__section.dgm-inventum-subpage .shadow-2xl,
#content__section.dgm-inventum-subpage .shadow-lg {
  box-shadow: inset 0 0 0 1px #eae6df, 0 18px 45px rgba(22, 21, 19, .06) !important;
}
#content__section.dgm-inventum-subpage .rounded-md { border-radius: 14px; }
#content__section.dgm-inventum-subpage .rounded-lg { border-radius: 18px; }
#content__section.dgm-inventum-subpage h2,
#content__section.dgm-inventum-subpage h3,
#content__section.dgm-inventum-subpage h4 {
  font-family: "Inter Tight", Inter, system-ui, sans-serif;
  letter-spacing: -.025em;
}
#content__section.dgm-inventum-subpage tabs-list {
  border-color: #eae6df;
  background: #f2f0ed;
  box-shadow: inset 0 0 0 1px #eae6df;
}
#content__section.dgm-inventum-page-8849 ul.grid > li {
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #eae6df;
  padding: 1.25rem;
}
.dgm-inventum-page-7608 .space-y-12.md\:grid > div {
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #eae6df;
}
.dgm-inventum-page-7608 .space-y-12.md\:grid > div .text-base .text-gray-500 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}
.dgm-inventum-page-7608 .space-y-12.md\:grid > div .h-52 {
  height: 10rem;
  box-shadow: inset 0 0 0 1px #eae6df !important;
}
.dgm-inventum-page-7608 .inv-reference-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: .4rem 1rem;
  margin: 1rem 0 2rem;
  padding: 1.25rem;
  border-radius: 18px;
  background: #f2f0ed;
  box-shadow: inset 0 0 0 1px #eae6df;
}
.dgm-inventum-page-7608 .inv-reference-tools label {
  grid-column: 1 / -1;
  font-family: "Inter Tight", Inter, sans-serif;
  font-weight: 700;
  color: #343433;
}
.dgm-inventum-page-7608 .inv-reference-tools div { position: relative; }
.dgm-inventum-page-7608 .inv-reference-tools i {
  position: absolute;
  left: 1rem;
  top: 50%;
  color: #00abe3;
  transform: translateY(-50%);
}
.dgm-inventum-page-7608 .inv-reference-tools input {
  width: 100%;
  min-height: 3rem;
  border: 0;
  border-radius: 999px;
  padding: .7rem 1rem .7rem 2.75rem;
  background: #fff;
  color: #161513;
  box-shadow: inset 0 0 0 1px #ded8ce;
}
.dgm-inventum-page-7608 .inv-reference-tools > span {
  padding-bottom: .75rem;
  color: #84817d;
  font-size: .8rem;
  white-space: nowrap;
}
.dgm-inventum-page-7608 .inv-reference-more {
  margin: 2rem auto 4rem;
  padding: .8rem 1.4rem;
}
@media (max-width: 639px) {
  .dgm-inventum-page-7608 .inv-reference-tools { grid-template-columns: 1fr; }
  .dgm-inventum-page-7608 .inv-reference-tools > span { padding: 0; }
}
.dgm-inventum .inv-hero-proof__item {
  transform: rotate(var(--proof-rotation, 0deg));
  transition: transform .35s cubic-bezier(.19, 1, .22, 1), box-shadow .35s ease;
}
.dgm-inventum .inv-hero-proof__item:nth-child(2) { --proof-rotation: 1.2deg; }
.dgm-inventum .inv-hero-proof__item:nth-child(3) { --proof-rotation: -1.1deg; }
.dgm-inventum .inv-hero-proof__item:hover {
  transform: translateY(-5px) rotate(0deg);
  box-shadow: inset 0 0 0 1px #ded8ce, 0 18px 35px rgba(22, 21, 19, .09);
}
@media (min-width: 640px) {
  .dgm-inventum-detail-hero .inv-detail-hero-title { font-size: clamp(2.3rem, 2.6vw, 2.9rem); }
  .inv-crm .inv-crm-title { font-size: 4.2rem; }
  .dgm-inventum-detail-hero .inv-detail-hero-media { min-height: 15rem; }
}
@media (min-width: 1024px) {
  /* Compact detail hero: give the text column the room so long German
     compound titles (Veranstaltungsmanagement, Teilnehmendenmanagement)
     stay on one line instead of breaking mid-word. */
  .dgm-inventum-detail-hero .inv-detail-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(22rem, .82fr); }
  .inv-crm .inv-crm-hero-grid { grid-template-columns: minmax(0, .92fr) minmax(28rem, 1.08fr); }
}

@media (prefers-reduced-motion: no-preference) {
  .dgm-inventum .float { animation: inv-bob 5.5s ease-in-out infinite; }
  @keyframes inv-bob {
    0%, 100% { transform: translate3d(var(--parallax-x), var(--parallax-y), 0) rotate(var(--r, 0deg)); }
    50% { transform: translate3d(var(--parallax-x), calc(var(--parallax-y) - 14px), 0) rotate(var(--r, 0deg)); }
  }
}
@media (prefers-reduced-motion: reduce) {
  .dgm-inventum [data-reveal],
  .dgm-inventum .pop { opacity: 1 !important; transform: none !important; transition: none !important; }
  .dgm-inventum .float { animation: none !important; }
}
/* Scroll-up menu reveal: the shared smart-sticky hides the bar on scroll but
   its reveal does not fire on this site. body.inv-menu-reveal is set ONLY by
   inventum.js (tenant-scoped) while the user scrolls upward — it outranks the
   Vue-managed hidden state without touching the shared component. */
body.inv-menu-reveal .dgm-page-header-wrap > .mainmenu.dgm-mainmenu--hidden {
  top: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Footer (classes set only by inventum.js on Inventum pages): replace the
   7-column sitemap grid with a flowing layout — childless items compact,
   the one populated column gets room and wraps its children in two columns. */
.inv-footer { margin-top: 3rem !important; }
.inv-footer-nav { margin-top: 2.5rem !important; padding-top: 2.25rem !important; }
.inv-footer-nav > ul {
  display: flex !important;
  flex-wrap: wrap;
  gap: 2.25rem 3.5rem;
}
.inv-footer-nav > ul > li { flex: 0 0 auto; min-width: 0; }
.inv-footer-nav > ul > li:has(> ul li) { order: 10; flex: 1 1 100%; }
.inv-footer-nav > ul > li > ul {
  columns: 2;
  column-gap: 2.5rem;
  margin-top: .85rem;
}
@media (min-width: 1024px) {
  .inv-footer-nav > ul > li > ul { columns: 3; }
}
.inv-footer-nav > ul > li > ul > li {
  break-inside: avoid;
  margin: 0 0 .55rem !important;
}
@media (max-width: 639px) {
  .inv-footer-nav > ul { gap: 1.5rem 2rem; }
  .inv-footer-nav > ul > li > ul { columns: 1; }
}

/* Without scripting nothing sets data-revealed — content must not stay hidden. */
@media (scripting: none) {
  .dgm-inventum [data-reveal],
  .dgm-inventum .pop { opacity: 1 !important; transform: none !important; }
}
/* Legacy long-form sections on subpages: readable measure. */
#content__section.dgm-inventum-subpage p {
  max-width: 78ch;
  margin-inline: auto;
}

/* TYPO3 Form Framework (Kontakt / Detailanfrage) in the warm-tactile system. */
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] {
  max-width: 46rem !important;
  margin: 0 auto 4rem !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] fieldset {
  margin: 0 0 1.25rem !important;
  padding: 1.5rem !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px #eae6df !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] legend {
  float: left !important;
  width: 100% !important;
  margin: 0 0 1rem !important;
  font-family: "Inter Tight", Inter, sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #161513 !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] legend + * { clear: both !important; }
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] label {
  font-size: .88rem !important;
  font-weight: 600 !important;
  color: #474645 !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .form-control {
  width: 100% !important;
  min-height: 2.9rem !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: .65rem .9rem !important;
  background: #fbfaf9 !important;
  color: #161513 !important;
  box-shadow: inset 0 0 0 1px #ded8ce !important;
  transition: box-shadow .15s ease !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .form-control:focus {
  outline: none !important;
  box-shadow: inset 0 0 0 1px #00abe3, 0 0 0 3px rgba(0, 171, 227, .18) !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] textarea.form-control { min-height: 8rem !important; }
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] input[type="radio"],
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] input[type="checkbox"] {
  width: 1.05rem !important;
  height: 1.05rem !important;
  accent-color: #00abe3 !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: .5rem !important;
  min-height: 2.9rem !important;
  border: 0 !important;
  border-radius: 9999px !important;
  padding: .7rem 1.6rem !important;
  background: #f0ede7 !important;
  color: #161513 !important;
  box-shadow: inset 0 0 0 1px #e6e1d8 !important;
  font-weight: 600 !important;
  transition: background-color .2s ease, transform .2s ease !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .btn-primary {
  background: #161513 !important;
  color: #fff !important;
  box-shadow: none !important;
}
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .btn:hover { transform: translateY(-1px) !important; }
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .btn-primary:hover { background: #343433 !important; }
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .error .form-control,
#content__section.dgm-inventum-subpage form[action*="tx_form_formframework"] .form-control.error {
  box-shadow: inset 0 0 0 1px #ff6a5b, 0 0 0 3px rgba(255, 106, 91, .15) !important;
}
@media (max-width: 639px) {
  .dgm-inventum [role="tablist"] {
    min-width: 0 !important;
    min-height: 3.75rem !important;
  }
  .dgm-inventum [role="tab"] {
    min-width: 0;
    height: 3rem !important;
    min-height: 3rem !important;
    flex-direction: column;
    gap: .15rem;
    padding: .35rem .3rem !important;
    font-size: .72rem !important;
    line-height: 1.05;
  }
  .dgm-inventum [role="tab"] i { margin: 0 !important; font-size: .8rem; }
  /* CRM: 4 text tabs wrap to a 2x2 grid — no hidden off-screen tabs. */
  .inv-crm [role="tablist"] {
    min-width: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  /* Shorter morph on mobile narrows the rapid-switch mis-alignment window. */
  .dgm-inventum .tabs-morph-indicator { transition-duration: .15s !important; }
  .dgm-inventum section { scroll-margin-top: 5rem; }
  .dgm-inventum .shadow-product { box-shadow: 0 20px 45px rgba(22, 21, 19, .18); }
}

/* =====================================================================
   SUBPAGE LEGACY-SECTION POLISH   (added 2026-07-11)
   Scoped to #content__section.dgm-inventum-subpage so the "warm tactile"
   system reaches the older Mask content elements that sit under the new
   detail hero. No class renames — we restyle the utility classes the Mask
   templates already emit. (Fixes: legacy sections looked cold / generic.)
   ===================================================================== */

/* --- Warm text palette: remap the cold Tailwind grays to the tactile ink scale --- */
#content__section.dgm-inventum-subpage .text-black,
#content__section.dgm-inventum-subpage .text-gray-900 { color: #1d1c1a; }
#content__section.dgm-inventum-subpage .text-gray-800 { color: #343433; }
#content__section.dgm-inventum-subpage .text-gray-700 { color: #474645; }
#content__section.dgm-inventum-subpage .text-gray-600 { color: #5f5d59; }
#content__section.dgm-inventum-subpage .text-gray-500 { color: #84817d; }
#content__section.dgm-inventum-subpage .text-gray-400 { color: #9a978f; }

/* --- Accent unification: eyebrow labels, "mehr erfahren" links, inline icons --- */
#content__section.dgm-inventum-subpage .text-primary-500 { color: #0089bd; }
#content__section.dgm-inventum-subpage a.text-primary-500 { font-weight: 600; transition: color .18s ease; }
#content__section.dgm-inventum-subpage a.text-primary-500:hover,
#content__section.dgm-inventum-subpage a.hover\:text-primary-600:hover { color: #00abe3; }
#content__section.dgm-inventum-subpage .link-accent { color: #0089bd; font-weight: 600; }
#content__section.dgm-inventum-subpage .link-accent:hover { color: #00abe3; }

/* --- Headings: Inter Tight, warm ink, one consistent display scale --- */
#content__section.dgm-inventum-subpage .font-heading {
  font-family: "Inter Tight", Inter, system-ui, sans-serif;
  color: #343433;
  letter-spacing: -0.025em;
}
/* Big section display headings (div / h2 / h3 / p carrying the large text
   utilities) normalise to one warm scale instead of ranging text-4xl…text-5xl. */
#content__section.dgm-inventum-subpage .font-heading.sm\:text-5xl,
#content__section.dgm-inventum-subpage .font-heading.sm\:text-4xl,
#content__section.dgm-inventum-subpage h2.text-4xl,
#content__section.dgm-inventum-subpage h3.sm\:text-4xl {
  font-size: clamp(1.6rem, 2.2vw, 2.05rem);
  line-height: 1.16;
  color: #161513;
  letter-spacing: -0.028em;
}

/* --- mask_subpage_feature_menu : service-link cards --- */
#content__section.dgm-inventum-subpage ul[role="list"] > a {
  border-radius: 14px;
  border-color: transparent;
  background: #fff;
  box-shadow: inset 0 0 0 1px #eae6df;
  transition: box-shadow .28s ease, transform .28s cubic-bezier(.19, 1, .22, 1);
}
#content__section.dgm-inventum-subpage ul[role="list"] > a:hover {
  transform: translateY(-3px);
  box-shadow: inset 0 0 0 1px #e3ded5, 0 1px 6px rgba(22, 21, 19, .05), 0 12px 30px rgba(22, 21, 19, .07);
  color: inherit;
}
#content__section.dgm-inventum-subpage ul[role="list"] > a i { color: #00abe3; }
/* clickable affordance: a chevron that fades in on hover (no arrow in the markup) */
#content__section.dgm-inventum-subpage ul[role="list"] > a > div:last-child { position: relative; padding-right: 1.9rem; }
#content__section.dgm-inventum-subpage ul[role="list"] > a > div:last-child::after {
  content: "";
  position: absolute;
  top: 50%;
  right: .95rem;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border-top: 2px solid #c8c2b7;
  border-right: 2px solid #c8c2b7;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity .2s ease, transform .25s cubic-bezier(.19, 1, .22, 1), border-color .2s ease;
}
#content__section.dgm-inventum-subpage ul[role="list"] > a:hover > div:last-child::after {
  opacity: 1;
  border-color: #00abe3;
  transform: rotate(45deg) translate(2px, -2px);
}

/* --- mask_image_card_with_description : media cards --- */
#content__section.dgm-inventum-subpage .image-cards-grid article {
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #eae6df;
  transition: box-shadow .3s ease, transform .3s cubic-bezier(.19, 1, .22, 1);
}
#content__section.dgm-inventum-subpage .image-cards-grid article:hover {
  transform: translateY(-4px);
  box-shadow: inset 0 0 0 1px #e3ded5, 0 1px 6px rgba(22, 21, 19, .05), 0 18px 44px rgba(22, 21, 19, .09);
}
#content__section.dgm-inventum-subpage .image-cards-grid article img { transition: transform .55s cubic-bezier(.19, 1, .22, 1); }
#content__section.dgm-inventum-subpage .image-cards-grid article:hover img { transform: scale(1.045); }

/* --- mask_features_with_image : icon-feature grid items become cards --- */
#content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16 {
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #eae6df;
  padding: 1.4rem 1.4rem 1.5rem;
  padding-left: calc(1.4rem + 3.1rem);
  transition: box-shadow .28s ease, transform .28s cubic-bezier(.19, 1, .22, 1);
}
#content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16:hover {
  transform: translateY(-3px);
  box-shadow: inset 0 0 0 1px #e3ded5, 0 12px 30px rgba(22, 21, 19, .07);
}
/* re-seat the absolute icon square inside the new card padding */
#content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16 > dt > .absolute {
  left: 1.4rem;
  top: 1.4rem;
}
/* the trailing "mehr erfahren" link reads as an action inside the card */
#content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16 > a { margin-top: 1rem; }

/* --- Cyan-tile icon squares (feature lists) — unify to the brand accent, soften --- */
#content__section.dgm-inventum-subpage .bg-primary-500.rounded-md {
  background-color: #00abe3;
  border-radius: 12px;
  box-shadow: 0 5px 14px rgba(0, 171, 227, .18);
}
/* mask_feature_list_with_subpoints: the title <p> uses ml-16 to clear the
   absolute icon tile, but the load-bearing `p { margin-inline:auto }` rule
   above (higher specificity than .ml-16) collapsed it to 0 → the heading ran
   under the icon. Restore the indent for these titles only. */
#content__section.dgm-inventum-subpage dl p.ml-16 {
  margin-left: 4rem;
  margin-right: 0;
  max-width: none;
}

/* --- Images with no ring of their own: add a warm hairline (skip already-shadowed) --- */
#content__section.dgm-inventum-subpage img.rounded-lg:not([class*="shadow"]),
#content__section.dgm-inventum-subpage img.rounded-md:not([class*="shadow"]) {
  box-shadow: 0 0 0 1px rgba(22, 21, 19, .07);
}

/* --- Warm the cold gray section panel + tidy vertical rhythm --- */
#content__section.dgm-inventum-subpage .container.bg-gray-50 { background-color: #f6f4f1; }
#content__section.dgm-inventum-subpage .dgm-ce-space { margin-top: 3rem; }
#content__section.dgm-inventum-subpage .py-6.sm\:py-10.lg\:pb-16 { padding-top: 1.75rem; padding-bottom: .75rem; }

@media (max-width: 639px) {
  /* keep the new cards comfortable but not cramped on phones */
  #content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16 {
    padding: 1.15rem 1.15rem 1.25rem;
    padding-left: calc(1.15rem + 3rem);
  }
  #content__section.dgm-inventum-subpage dl.grid > div.relative.lg\:pl-16 > dt > .absolute { left: 1.15rem; top: 1.15rem; }
}
