/* Morgen Core V6 — Nordlicht
 * Scope lock: every component selector is isolated below #morgen-v6-root.
 * Version: 2.24.20
 */

/* 1. RESET (V6 template only) */
html {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  scrollbar-width: none;
}
html::-webkit-scrollbar { width: 0; height: 0; }
body.morgen-core-v6-body {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}
@supports (overflow: clip) {
  html,
  body.morgen-core-v6-body { overflow-x: clip; }
}
#morgen-v6-root,
#morgen-v6-root *,
#morgen-v6-root *::before,
#morgen-v6-root *::after { box-sizing: border-box; }
#morgen-v6-root { margin: 0; min-height: 100vh; overflow: clip; background: var(--mg6-surface, #FFFFFF); color: var(--mg6-ink, #0D1B25); }
#morgen-v6-root img,
#morgen-v6-root svg { display: block; max-width: 100%; }
#morgen-v6-root img { height: auto; }
#morgen-v6-root button,
#morgen-v6-root input,
#morgen-v6-root select,
#morgen-v6-root textarea { font: inherit; }
#morgen-v6-root button { margin: 0; }
#morgen-v6-root a { color: inherit; }
#morgen-v6-root [hidden] { display: none; }
#morgen-v6-root figure,
#morgen-v6-root blockquote,
#morgen-v6-root dl,
#morgen-v6-root dd,
#morgen-v6-root p,
#morgen-v6-root h1,
#morgen-v6-root h2,
#morgen-v6-root h3,
#morgen-v6-root h4,
#morgen-v6-root h5,
#morgen-v6-root h6,
#morgen-v6-root ul,
#morgen-v6-root ol { margin-top: 0; }

/* 2. TOKEN DEFINITIONS */
#morgen-v6-root.mg6 {
  --mg6-amber: #2E7AA3;
  --mg6-amber-deep: #1a5c7a;
  --mg6-amber-highlight: #74a9c5;
  --mg6-amber-soft: #D6E0E6;
  --mg6-amber-rgb: 46, 122, 163;
  --mg6-dark-rgb: 7, 59, 92;
  --mg6-surface-rgb: 255, 255, 255;
  --mg6-ink-rgb: 13, 27, 37;
  --mg6-ink: #0D1B25;
  --mg6-ink-mid: #2c4050;
  --mg6-ink-muted: #5C6B76;
  --mg6-surface: #FFFFFF;
  --mg6-surface-warm: #F2F6F8;
  --mg6-surface-line: #C9D6DE;
  --mg6-dark: #073B5C;
  --mg6-dark-mid: #0e4d6f;
  --mg6-dark-deep: #052942;
  --mg6-dark-line: rgba(255, 255, 255, 0.12);
  --mg6-on-dark: #FFFFFF;
  --mg6-on-dark-rgb: 255, 255, 255;
  --mg6-on-accent: #FFFFFF;
  --mg6-on-accent-rgb: 255, 255, 255;
  --mg6-on-accent-deep: #FFFFFF;
  --mg6-on-accent-deep-rgb: 255, 255, 255;
  --mg6-stat: #FFFFFF;
  --mg6-focus-ring: rgba(46, 122, 163, 0.48);
  --mg6-number-radius: var(--mg6-radius-control, 8px);
  --mg6-hero-slide-duration: 820ms;
  --mg6-hero-slide-ease: cubic-bezier(.22, 1, .36, 1);
  --mg6-success: #196b45;
  --mg6-danger: #C43B2F;
  --mg6-logo-header: #0D1B25;
  --mg6-logo-sticky: #0D1B25;
  --mg6-logo-footer: #0D1B25;
  --mg6-space-xs: 4px;
  --mg6-space-sm: 8px;
  --mg6-space-md: 16px;
  --mg6-space-lg: 24px;
  --mg6-space-xl: 40px;
  --mg6-space-2xl: 64px;
  --mg6-space-3xl: 96px;
  --mg6-radius-sm: 2px;
  --mg6-radius-md: 4px;
  --mg6-radius-lg: 12px;
  --mg6-radius-pill: 999px;
  --mg6-shadow-card: 0 2px 12px rgba(0, 0, 0, 0.08);
  --mg6-shadow-hover: 0 8px 28px rgba(0, 0, 0, 0.13);
  --mg6-shadow-nav: 0 1px 0 rgba(0, 0, 0, 0.1);
  --mg6-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --mg6-duration-fast: 140ms;
  --mg6-duration-base: 220ms;
  --mg6-shell-width: min(calc(100% - clamp(32px, 4vw, 64px)), 1440px);
  --mg6-shell-max: 1440px;
  --mg6-shell-pad: 24px;
  --mg6-font-heading: "Heebo", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --mg6-font-display: var(--mg6-font-heading);
  --mg6-font-body: "Heebo", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --mg6-font-ui: "Heebo", system-ui, sans-serif;
  --mg6-text-xs: 11px;
  --mg6-text-sm: 13px;
  --mg6-text-base: 15px;
  --mg6-text-md: 17px;
  --mg6-text-lg: 20px;
  --mg6-text-xl: clamp(26px, 2.8vw, 36px);
  --mg6-text-2xl: clamp(32px, 3.6vw, 48px);
  --mg6-text-3xl: clamp(38px, 4.8vw, 64px);
  --mg6-weight-regular: 400;
  --mg6-weight-medium: 500;
  --mg6-weight-semibold: 600;
  --mg6-weight-bold: 700;
  --mg6-weight-black: 800;
  --mg6-leading-tight: 1.16;
  --mg6-leading-snug: 1.38;
  --mg6-leading-base: 1.62;
  --mg6-leading-loose: 1.74;
  --mg6-weight-extralight: 200;
  font-family: var(--mg6-font-body);
  font-size: var(--mg6-text-base);
  font-weight: var(--mg6-weight-extralight);
  line-height: var(--mg6-leading-base);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* 3. LAYOUT UTILITIES */
#morgen-v6-root .mg6-shell { width: var(--mg6-shell-width); margin-inline: auto; }
#morgen-v6-root .mg6-section { padding: var(--mg6-space-3xl) 0; background: var(--mg6-surface); }
#morgen-v6-root .mg6-section--warm,
#morgen-v6-root .mg6-card-section--warm { background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-section--dark { background: var(--mg6-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-content-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr); gap: clamp(40px, 6vw, 88px); align-items: start; }
#morgen-v6-root .mg6-card-grid { display: grid; gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-card-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#morgen-v6-root .mg6-card-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
#morgen-v6-root .mg6-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
#morgen-v6-root .mg6-skip { position: fixed; top: 10px; left: 10px; z-index: 1000; transform: translateY(-150%); padding: 12px 18px; border-radius: var(--mg6-radius-md); background: var(--mg6-ink); color: #fff; font-weight: 700; text-decoration: none; transition: transform var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-skip:focus { transform: translateY(0); }
#morgen-v6-root .mg6-empty-state { padding: var(--mg6-space-2xl); border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface-warm); text-align: center; }
#morgen-v6-root .mg6-cta-strip { padding: var(--mg6-space-2xl) 0; background: var(--mg6-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-cta-strip__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--mg6-space-xl); }
#morgen-v6-root .mg6-cta-strip h2 { max-width: 760px; margin-bottom: 0; }

/* 4. TYPOGRAPHY BASE */
#morgen-v6-root h1,
#morgen-v6-root h2,
#morgen-v6-root h3,
#morgen-v6-root h4,
#morgen-v6-root h5,
#morgen-v6-root h6 {
  color: inherit;
  font-family: var(--mg6-font-heading);
  line-height: var(--mg6-leading-tight);
  text-wrap: balance;
}
#morgen-v6-root h1 { margin-bottom: var(--mg6-space-lg); font-size: var(--mg6-text-3xl); font-weight: var(--mg6-weight-bold); letter-spacing: -0.025em; }
#morgen-v6-root h2 { margin-bottom: var(--mg6-space-lg); font-size: var(--mg6-text-2xl); font-weight: var(--mg6-weight-bold); letter-spacing: -0.02em; }
#morgen-v6-root h3 { margin-bottom: var(--mg6-space-md); font-size: var(--mg6-text-lg); font-weight: var(--mg6-weight-semibold); letter-spacing: -0.012em; }
#morgen-v6-root h4 { margin-bottom: 12px; font-size: var(--mg6-text-md); font-weight: var(--mg6-weight-semibold); letter-spacing: -0.008em; }
#morgen-v6-root h5 { margin-bottom: var(--mg6-space-sm); font-size: var(--mg6-text-base); font-weight: var(--mg6-weight-semibold); }
#morgen-v6-root h6 { margin-bottom: var(--mg6-space-sm); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-bold); letter-spacing: 0.02em; }
#morgen-v6-root :where(ul, ol, dl, blockquote) { line-height: var(--mg6-leading-base); }
#morgen-v6-root :where(strong, b) { font-weight: var(--mg6-weight-bold); }
#morgen-v6-root small { font-size: var(--mg6-text-xs); line-height: var(--mg6-leading-snug); }
#morgen-v6-root p { margin-bottom: var(--mg6-space-md); color: var(--mg6-ink-mid); font-family: var(--mg6-font-body); line-height: var(--mg6-leading-base); }
#morgen-v6-root .mg6-section--dark p,
#morgen-v6-root .mg6-stat-section p,
#morgen-v6-root .mg6-footer__cta p,
#morgen-v6-root .mg6-cta-strip p { color: rgba(var(--mg6-on-dark-rgb), 0.76); }
#morgen-v6-root .mg6-prose-lede { font-size: var(--mg6-text-md); line-height: var(--mg6-leading-loose); }
#morgen-v6-root .mg6-section-head { max-width: 820px; margin-bottom: var(--mg6-space-2xl); }
#morgen-v6-root .mg6-section-head__title { margin-bottom: var(--mg6-space-md); }
#morgen-v6-root .mg6-section-head__sub { max-width: 760px; margin-bottom: 0; font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-eyebrow { display: block; margin-bottom: var(--mg6-space-md); font-family: var(--mg6-font-ui); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-bold); letter-spacing: 0.12em; text-transform: uppercase; color: var(--mg6-ink-muted); }
#morgen-v6-root .mg6-eyebrow--light { color: rgba(var(--mg6-on-dark-rgb), 0.74); }
#morgen-v6-root .mg6-text-link { display: inline-flex; align-items: center; gap: var(--mg6-space-xs); padding-bottom: 2px; border: 0; border-bottom: 2px solid var(--mg6-amber); background: transparent; color: var(--mg6-ink); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); line-height: 1.3; text-decoration: none; cursor: pointer; transition: color var(--mg6-duration-fast) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-text-link:hover { color: var(--mg6-amber-deep); border-color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-text-link--light { border-color: rgba(var(--mg6-on-dark-rgb), .72); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-text-link--light:hover { border-color: var(--mg6-on-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-text-link--button { font-family: inherit; }
#morgen-v6-root .mg6-highlight__badge-title,
#morgen-v6-root .mg6-data-panel__metric strong,
#morgen-v6-root .mg6-stat-card__value,
#morgen-v6-root .mg6-principle-card__number,
#morgen-v6-root .mg6-application-card__index,
#morgen-v6-root .mg6-card__document-mark,
#morgen-v6-root .mg6-error__code,
#morgen-v6-root .mg6-process-list span { font-family: var(--mg6-font-heading); }
#morgen-v6-root .mg6-text-link:focus-visible,
#morgen-v6-root a:focus-visible,
#morgen-v6-root button:focus-visible,
#morgen-v6-root input:focus-visible,
#morgen-v6-root select:focus-visible,
#morgen-v6-root textarea:focus-visible { outline: 3px solid var(--mg6-focus-ring); outline-offset: 3px; }

/* 5. NAVIGATION / HEADER */
#morgen-v6-root .mg6-sitebar {
    position: sticky;
    top: 0;
    z-index: 120;
    display: block;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(var(--mg6-surface-rgb), 0.98);
    box-shadow: var(--mg6-shadow-nav);
    backdrop-filter: blur(14px);
    transition: top var(--mg6-duration-base) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease);
}
body.admin-bar #morgen-v6-root .mg6-sitebar { top: 32px; }
#morgen-v6-root.is-drawer-open .mg6-sitebar { min-height: 100vh; }
body.admin-bar #morgen-v6-root.is-drawer-open .mg6-sitebar { min-height: calc(100vh - 32px); }
@media (max-width: 782px) {
    body.admin-bar #morgen-v6-root .mg6-sitebar { top: 46px; }
    body.admin-bar #morgen-v6-root.is-drawer-open .mg6-sitebar { min-height: calc(100vh - 46px); }
}
#morgen-v6-root .mg6-sitebar a,
#morgen-v6-root .mg6-sitebar button { text-decoration: none; }
#morgen-v6-root .mg6-sitebar.is-scrolled { box-shadow: 0 8px 26px rgba(0, 0, 0, 0.1); }
#morgen-v6-root .mg6-sitebar__inner { display: grid; grid-template-columns: minmax(210px, 250px) minmax(0, 1fr) auto; align-items: center; min-height: 84px; gap: clamp(14px, 1.8vw, 28px); }
#morgen-v6-root .mg6-logo {
  display: inline-grid;
  align-content: center;
  justify-items: start;
  gap: 3px;
  width: min(230px, 100%);
  color: var(--mg6-logo-header, var(--mg6-ink));
  text-decoration: none;
}
#morgen-v6-root .mg6-sitebar.is-scrolled .mg6-logo { color: var(--mg6-logo-sticky, var(--mg6-ink)); }
#morgen-v6-root .mg6-logo__mark { display: grid; align-items: center; width: 100%; min-width: 0; line-height: 0; color: inherit; }
#morgen-v6-root .mg6-logo__mark > svg,
#morgen-v6-root .mg6-logo__mark > img { display: block; width: 100%; height: auto; max-height: 42px; object-fit: contain; object-position: left center; }
#morgen-v6-root .mg6-logo__mark > .mg-logo-raster { display: block; width: 100%; height: 42px; max-height: 42px; aspect-ratio: auto; }
#morgen-v6-root .mg6-logo-tagline {
  display: block;
  max-width: 100%;
  overflow: hidden;
  color: var(--mg6-ink-muted);
  font-family: var(--mg6-font-body);
  font-size: 10px;
  font-weight: var(--mg6-weight-medium);
  letter-spacing: 0.035em;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#morgen-v6-root .mg6-nav { justify-self: end; min-width: 0; max-width: 100%; }
#morgen-v6-root .mg6-nav__list,
#morgen-v6-root .mg6-nav__sublist,
#morgen-v6-root .mg6-drawer__list,
#morgen-v6-root .mg6-drawer__sublist { list-style: none; margin: 0; padding: 0; }
#morgen-v6-root .mg6-nav__list { display: flex; align-items: stretch; justify-content: flex-end; gap: 0; }
#morgen-v6-root .mg6-nav__item { position: relative; display: flex; align-items: center; }
#morgen-v6-root .mg6-nav__link { position: relative; display: inline-flex; align-items: center; min-height: 84px; padding: 0 clamp(8px, 0.8vw, 12px); border: 0; background: transparent; color: var(--mg6-ink-mid); font-family: var(--mg6-font-ui); font-size: var(--mg6-text-base); font-weight: var(--mg6-weight-medium); line-height: 1.25; text-align: center; text-decoration: none; cursor: pointer; }
#morgen-v6-root .mg6-nav__link::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 3px; background: var(--mg6-amber); transform: scaleX(0); transform-origin: left center; transition: transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-nav__link:hover,
#morgen-v6-root .mg6-nav__link[aria-current="page"] { color: var(--mg6-ink); }
#morgen-v6-root .mg6-nav__link:hover::after,
#morgen-v6-root .mg6-nav__link[aria-current="page"]::after { transform: scaleX(1); }
#morgen-v6-root .mg6-nav__link[aria-current="page"] { font-weight: var(--mg6-weight-semibold); }
#morgen-v6-root .mg6-nav__panel { position: absolute; top: calc(100% - 1px); left: 50%; width: min(360px, 84vw); padding: var(--mg6-space-sm); border: 1px solid var(--mg6-surface-line); background: #fff; box-shadow: var(--mg6-shadow-hover); opacity: 0; visibility: hidden; transform: translate(-50%, 8px); transition: opacity var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-base) var(--mg6-ease), visibility var(--mg6-duration-fast); }
#morgen-v6-root .mg6-nav__item:hover .mg6-nav__panel,
#morgen-v6-root .mg6-nav__item:focus-within .mg6-nav__panel,
#morgen-v6-root .mg6-nav__item.is-open .mg6-nav__panel { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
#morgen-v6-root .mg6-nav__sublist { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
#morgen-v6-root .mg6-nav__sublink { display: block; padding: 10px 12px; border-radius: var(--mg6-radius-md); color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); text-decoration: none; }
#morgen-v6-root .mg6-nav__sublink:hover,
#morgen-v6-root .mg6-nav__sublink[aria-current="page"] { background: var(--mg6-amber-soft); color: var(--mg6-ink); }
#morgen-v6-root .mg6-sitebar__tools { display: flex; align-items: center; gap: 10px; }
#morgen-v6-root .mg6-language { display: flex; align-items: center; gap: 5px; color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-language__link { text-decoration: none; }
#morgen-v6-root .mg6-language__link.is-active { color: var(--mg6-ink); font-weight: 700; }
#morgen-v6-root .mg6-icon-button { display: inline-grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 1px solid var(--mg6-surface-line); border-radius: 50%; background: #fff; color: var(--mg6-ink); cursor: pointer; transition: background var(--mg6-duration-fast), border-color var(--mg6-duration-fast), transform var(--mg6-duration-fast); }
#morgen-v6-root .mg6-icon-button:hover { background: var(--mg6-amber-soft); border-color: var(--mg6-amber); transform: translateY(-1px); }
#morgen-v6-root .mg6-icon-button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#morgen-v6-root .mg6-quick { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; border: 1px solid var(--mg6-amber); border-radius: var(--mg6-radius-pill); background: var(--mg6-amber); color: var(--mg6-on-accent); font-size: var(--mg6-text-base); font-weight: 700; text-decoration: none; cursor: pointer; transition: background var(--mg6-duration-fast) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease), color var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-quick:hover,
#morgen-v6-root .mg6-quick:focus-visible { border-color: var(--mg6-amber-deep); background: var(--mg6-amber-deep); color: var(--mg6-on-accent-deep); transform: translateY(-1px); }
#morgen-v6-root .mg6-quick svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#morgen-v6-root .mg6-menu-toggle { display: none; align-items: center; gap: 10px; min-height: 44px; padding: 0 14px; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-pill); background: #fff; color: var(--mg6-ink); font-size: var(--mg6-text-xs); font-weight: 700; text-decoration: none; cursor: pointer; }
#morgen-v6-root .mg6-menu-toggle__icon { display: grid; grid-template-columns: repeat(3, 5px); gap: 3px; width: 21px; }
#morgen-v6-root .mg6-menu-toggle__icon i { display: block; width: 5px; height: 5px; border-radius: 50%; background: currentColor; transition: transform var(--mg6-duration-base) var(--mg6-ease), opacity var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(1) { transform: translate(4px, 4px) rotate(45deg); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(2) { opacity: 0; transform: scale(0); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(3) { transform: translate(-4px, 4px) rotate(-45deg); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(4) { opacity: 0; transform: scale(0); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(5) { opacity: 0; transform: scale(0); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__icon i:nth-child(6) { transform: translate(4px, -4px) rotate(-45deg); }
/* Explicit [hidden] guard — position:fixed can sometimes win over the UA display:none from [hidden].
   This ensures the drawer and backdrop are truly invisible until JS removes the attribute. */
#morgen-v6-root .mg6-drawer[hidden],
#morgen-v6-root .mg6-drawer-backdrop[hidden] { display: none !important; }
#morgen-v6-root .mg6-drawer { position: fixed; left: 0; right: 0; bottom: 0; z-index: 250; max-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px) - 60px); padding: var(--mg6-space-lg) var(--mg6-space-lg) calc(var(--mg6-space-lg) + env(safe-area-inset-bottom, 0px)); border-radius: 18px 18px 0 0; background: #fff; box-shadow: 0 -12px 46px rgba(0, 0, 0, 0.18); overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
#morgen-v6-root .mg6-drawer__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: var(--mg6-space-lg); border-bottom: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-drawer__title { font-family: var(--mg6-font-display); font-size: var(--mg6-text-xl); font-weight: 700; }
#morgen-v6-root .mg6-drawer__nav { margin-top: var(--mg6-space-lg); }
#morgen-v6-root .mg6-drawer__item { border-bottom: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-drawer__row { display: grid; grid-template-columns: 1fr auto; align-items: center; }
#morgen-v6-root .mg6-drawer__link { display: block; padding: 16px 0; color: var(--mg6-ink); font-size: var(--mg6-text-base); font-weight: 600; text-decoration: none; }
#morgen-v6-root .mg6-drawer__link[aria-current="page"] { color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-drawer__group-toggle { display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 50%; background: var(--mg6-surface-warm); cursor: pointer; }
#morgen-v6-root .mg6-drawer__sublist { padding: 0 0 14px 16px; }
#morgen-v6-root .mg6-drawer__sublist a { display: block; padding: 8px 0; color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); text-decoration: none; }
#morgen-v6-root .mg6-drawer__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--mg6-space-lg); padding-top: var(--mg6-space-xl); }
#morgen-v6-root .mg6-drawer-backdrop { position: fixed; inset: var(--wp-admin--admin-bar--height, 0px) 0 0 0; z-index: 240; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(10, 15, 15, 0.48); cursor: default; touch-action: none; }

@media (max-width: 1024px) {
.mg6-drawer__actions .mg6-text-link {
  display: inline-block !important;
  text-align: center;
  width: fit-content;
  margin: auto;
}
}

/* 6. HERO / CAROUSEL — contained Figma-style card layout */
#morgen-v6-root .mg6-hero { position: relative; width: var(--mg6-shell-width); max-width: var(--mg6-shell-max); margin: var(--mg6-space-md) auto 0; min-height: clamp(420px, 38vw, 640px); aspect-ratio: 16 / 7; overflow: hidden; border-radius: var(--mg6-radius-lg, 16px); background: var(--mg6-surface-warm); color: var(--mg6-on-dark); isolation: isolate; contain: paint; box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12); }
#morgen-v6-root .mg6-hero__track { position: absolute; inset: 0; display: flex; width: 100%; height: 100%; gap: 0; overflow: visible; transform: translate3d(0, 0, 0); transition: transform var(--mg6-hero-slide-duration) var(--mg6-hero-slide-ease); will-change: transform; backface-visibility: hidden; }
#morgen-v6-root .mg6-hero__track.is-jumping { transition: none; }
#morgen-v6-root .mg6-hero__slide { position: relative; display: block; flex: 0 0 100%; width: 100%; min-width: 100%; height: 100%; overflow: hidden; border-radius: 0; opacity: 1; visibility: visible; pointer-events: none; transform: none; transition: none; backface-visibility: hidden; }
#morgen-v6-root .mg6-hero__slide.is-active { pointer-events: auto; }
#morgen-v6-root .mg6-hero__media,
#morgen-v6-root .mg6-hero__overlay { position: absolute; inset: 0; }
#morgen-v6-root .mg6-hero__media { margin: 0; }
#morgen-v6-root .mg6-hero__media img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
#morgen-v6-root .mg6-hero__overlay { display: flex; align-items: end; background: linear-gradient(to top, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.2) 55%, rgba(0, 0, 0, 0.04) 100%); }
#morgen-v6-root .mg6-hero__overlay-inner { width: calc(100% - 64px); max-width: var(--mg6-shell-max); margin-inline: auto; }
#morgen-v6-root .mg6-hero__copy { max-width: min(700px, calc(100% - 48px)); padding: 60px 0 var(--mg6-space-xl); }
#morgen-v6-root .mg6-hero__eyebrow { margin-bottom: 12px; color: var(--mg6-on-dark); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
#morgen-v6-root .mg6-hero__title { margin-bottom: var(--mg6-space-md); color: var(--mg6-on-dark); font-family: var(--mg6-font-display); font-size: clamp(34px, 3.6vw, 56px); font-weight: 700; letter-spacing: -0.025em; text-wrap: balance; }
#morgen-v6-root .mg6-hero__sub { max-width: 620px; margin-bottom: var(--mg6-space-lg); color: rgba(var(--mg6-on-dark-rgb), 0.88); font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
#morgen-v6-root .mg6-hero__control { position: absolute; top: 50%; z-index: 6; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid rgba(var(--mg6-on-dark-rgb), 0.6); border-radius: 50%; background: rgba(var(--mg6-ink-rgb), 0.24); color: var(--mg6-on-dark); font-size: 28px; line-height: 1; cursor: pointer; transform: translateY(-50%); backdrop-filter: blur(5px); }
#morgen-v6-root .mg6-hero__control:hover { background: rgba(var(--mg6-ink-rgb), 0.56); }
#morgen-v6-root .mg6-hero__prev { left: 14px; }
#morgen-v6-root .mg6-hero__next { right: 14px; }
#morgen-v6-root .mg6-hero__dots { position: absolute; left: 50%; bottom: 16px; z-index: 7; display: flex; gap: 8px; transform: translateX(-50%); }
#morgen-v6-root .mg6-hero__dot { width: 38px; height: 4px; padding: 0; border: 0; border-radius: 2px; background: rgba(var(--mg6-on-dark-rgb), 0.38); cursor: pointer; transition: background var(--mg6-duration-fast), transform var(--mg6-duration-fast); }
#morgen-v6-root .mg6-hero__dot.is-active { background: var(--mg6-on-dark); transform: scaleY(1.4); }

/* 7. EDITORIAL SECTIONS */
#morgen-v6-root .mg6-welcome { padding: var(--mg6-space-2xl) 0 var(--mg6-space-xl); background: var(--mg6-surface); }
#morgen-v6-root .mg6-welcome__title { margin-bottom: 12px; font-family: var(--mg6-font-heading); font-size: var(--mg6-text-xl); font-weight: var(--mg6-weight-medium); letter-spacing: -0.02em; }
#morgen-v6-root .mg6-welcome__title strong { font-weight: 800; }
#morgen-v6-root .mg6-welcome__body { max-width: 980px; }
#morgen-v6-root .mg6-highlight { padding: var(--mg6-space-md) 0 var(--mg6-space-3xl); background: var(--mg6-surface); }
#morgen-v6-root .mg6-highlight__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  min-height: 520px;
  border: 1px solid var(--mg6-surface-line);
  background: var(--mg6-surface-warm);
  box-shadow: 0 26px 70px -54px rgba(7, 17, 24, .45);
  overflow: hidden;
}
#morgen-v6-root .mg6-highlight__panel::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 130px;
  height: 4px;
  background: var(--mg6-amber);
}
#morgen-v6-root .mg6-highlight__visual { position: relative; min-height: 520px; margin: 0; overflow: hidden; background: var(--mg6-amber-soft); }
#morgen-v6-root .mg6-highlight__visual::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(140deg, rgba(7, 17, 24, .03) 32%, rgba(7, 17, 24, .66) 100%); pointer-events: none; }
#morgen-v6-root .mg6-highlight__image { display: block; width: 100%; height: 100%; min-height: 520px; object-fit: cover; object-position: center; transform: scale(1.002); }
#morgen-v6-root .mg6-highlight__badge {
  position: absolute;
  right: var(--mg6-space-xl);
  bottom: var(--mg6-space-xl);
  left: var(--mg6-space-xl);
  z-index: 2;
  display: grid;
  gap: 7px;
  max-width: 540px;
  margin: 0;
  padding: 20px 22px;
  border-left: 3px solid var(--mg6-amber);
  background: rgba(var(--mg6-ink-rgb), .78);
  color: var(--mg6-on-dark);
  backdrop-filter: blur(10px);
}
#morgen-v6-root .mg6-highlight__badge span { color: rgba(var(--mg6-on-dark-rgb), .72); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
#morgen-v6-root .mg6-highlight__badge strong { color: var(--mg6-on-dark); font-family: var(--mg6-font-display); font-size: clamp(21px, 2.1vw, 30px); line-height: 1.15; }
#morgen-v6-root .mg6-highlight__content { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: clamp(38px, 5vw, 74px); }
#morgen-v6-root .mg6-highlight__title { max-width: 650px; margin: 0; font-family: var(--mg6-font-display); font-size: clamp(34px, 3.35vw, 54px); line-height: 1.03; letter-spacing: -.045em; }
#morgen-v6-root .mg6-highlight__lede { max-width: 680px; margin: var(--mg6-space-lg) 0 0; color: var(--mg6-ink-mid); font-size: var(--mg6-text-md); line-height: 1.72; }
#morgen-v6-root .mg6-highlight__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: clamp(28px, 4vw, 48px); border-top: 1px solid var(--mg6-surface-line); border-bottom: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-highlight__metrics > div { display: grid; align-content: start; gap: 7px; min-width: 0; padding: 20px 18px 20px 0; }
#morgen-v6-root .mg6-highlight__metrics > div + div { padding-left: 18px; border-left: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-highlight__metrics strong { color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: clamp(32px, 3vw, 44px); line-height: 1; }
#morgen-v6-root .mg6-highlight__metrics span { color: var(--mg6-ink-muted); font-size: 11px; font-weight: 800; letter-spacing: .06em; line-height: 1.35; text-transform: uppercase; }
#morgen-v6-root .mg6-highlight__actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--mg6-space-lg); margin-top: var(--mg6-space-xl); }
#morgen-v6-root .mg6-feature-band { padding: var(--mg6-space-3xl) 0; background: linear-gradient(135deg, var(--mg6-amber-soft) 0%, rgba(var(--mg6-amber-rgb), .06) 52%, var(--mg6-surface-warm) 100%); }
#morgen-v6-root .mg6-feature-band__title { max-width: 950px; font-family: var(--mg6-font-display); font-size: var(--mg6-text-2xl); }

#morgen-v6-root .mg6-feature-band--selection { position: relative; isolation: isolate; overflow: hidden; }
#morgen-v6-root .mg6-feature-band--selection::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 8% 18%, rgba(var(--mg6-amber-rgb), .12), transparent 27%),
    linear-gradient(135deg, rgba(var(--mg6-amber-rgb), .055), transparent 52%);
  pointer-events: none;
}
#morgen-v6-root .mg6-selection-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(35, 46, 47, .14);
  border-radius: var(--mg6-radius-lg);
  background: var(--mg6-surface);
  box-shadow: 0 30px 78px -58px rgba(7, 17, 24, .55);
}
#morgen-v6-root .mg6-selection-panel::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  width: clamp(110px, 13vw, 190px);
  height: 4px;
  background: var(--mg6-amber);
}
#morgen-v6-root .mg6-selection-panel__head {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .72fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: start;
  padding: clamp(34px, 5vw, 72px);
  background: linear-gradient(135deg, #fff 0%, var(--mg6-surface-warm) 64%, rgba(var(--mg6-amber-rgb), .07) 100%);
}
#morgen-v6-root .mg6-selection-panel__heading,
#morgen-v6-root .mg6-selection-panel__intro,
#morgen-v6-root .mg6-selection-panel__main,
#morgen-v6-root .mg6-selection-panel__rail { min-width: 0; }
#morgen-v6-root .mg6-selection-panel__title {
  max-width: 760px;
  margin-bottom: 0;
  font-family: var(--mg6-font-display);
  font-size: var(--mg6-text-2xl);
}
#morgen-v6-root .mg6-selection-panel__intro { display: grid; gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-selection-panel__intro > p {
  width: 100%;
  max-width: none;
  margin: 0;
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}
#morgen-v6-root .mg6-selection-panel__meta { display: flex; flex-wrap: wrap; gap: 8px; }
#morgen-v6-root .mg6-selection-panel__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid var(--mg6-surface-line);
  border-radius: var(--mg6-radius-pill);
  background: rgba(255, 255, 255, .82);
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-semibold);
  line-height: 1.2;
}
#morgen-v6-root .mg6-selection-panel__meta strong { margin-right: 4px; color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-selection-panel__body {
  display: grid;
  grid-template-columns: minmax(0, 1.34fr) minmax(310px, .66fr);
  border-top: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-selection-panel__main { padding: clamp(34px, 5vw, 68px); }
#morgen-v6-root .mg6-selection-panel__lede {
  max-width: 900px;
  margin: 0 0 var(--mg6-space-xl);
  padding-left: 20px;
  border-left: 3px solid var(--mg6-amber);
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}
#morgen-v6-root .mg6-selection-inputs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--mg6-surface-line);
  background: var(--mg6-surface-line);
}
#morgen-v6-root .mg6-selection-inputs > div {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: var(--mg6-space-md);
  align-items: start;
  min-height: 126px;
  padding: var(--mg6-space-lg);
  background: var(--mg6-surface);
}
#morgen-v6-root .mg6-selection-inputs > div:nth-child(2),
#morgen-v6-root .mg6-selection-inputs > div:nth-child(3) { background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-selection-inputs > div > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(var(--mg6-amber-rgb), .48);
  background: rgba(var(--mg6-amber-rgb), .1);
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-display);
  font-size: var(--mg6-text-sm);
  font-weight: var(--mg6-weight-bold);
}
#morgen-v6-root .mg6-selection-inputs strong { display: block; margin-bottom: 7px; color: var(--mg6-ink); font-size: var(--mg6-text-base); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-selection-inputs small { display: block; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-base); }
#morgen-v6-root .mg6-selection-panel__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: var(--mg6-space-xl); }
#morgen-v6-root .mg6-selection-panel__rail {
  display: grid;
  align-content: start;
  padding: clamp(34px, 4vw, 58px);
  background: linear-gradient(145deg, var(--mg6-dark) 0%, var(--mg6-dark-mid) 100%);
  color: var(--mg6-on-dark);
}
#morgen-v6-root .mg6-selection-panel__rail .mg6-eyebrow { margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-selection-sequence { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
#morgen-v6-root .mg6-selection-sequence li {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 19px 0;
  border-top: 1px solid rgba(var(--mg6-on-dark-rgb), .13);
}
#morgen-v6-root .mg6-selection-sequence li:first-child { padding-top: 0; border-top: 0; }
#morgen-v6-root .mg6-selection-sequence li > span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(var(--mg6-on-dark-rgb), .34);
  border-radius: 50%;
  background: rgba(var(--mg6-on-dark-rgb), .08);
  color: var(--mg6-on-dark);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
}
#morgen-v6-root .mg6-selection-sequence strong { display: block; margin-bottom: 5px; color: var(--mg6-on-dark); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-selection-sequence small { display: block; color: rgba(var(--mg6-on-dark-rgb), .68); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-base); }
#morgen-v6-root .mg6-application-review {
  position: relative;
  display: grid;
  grid-template-columns: minmax(360px, .88fr) minmax(0, 1.12fr);
  min-height: 650px;
  border: 1px solid rgba(35, 46, 47, .14);
  background: rgba(255, 255, 255, .76);
  box-shadow: 0 34px 82px -58px rgba(7, 17, 24, .52);
  overflow: hidden;
}
#morgen-v6-root .mg6-application-review::before { content: ""; position: absolute; top: 0; right: 0; z-index: 3; width: 150px; height: 4px; background: var(--mg6-amber); }
#morgen-v6-root .mg6-application-review__visual { position: relative; min-width: 0; min-height: 650px; margin: 0; background: var(--mg6-surface-warm); overflow: hidden; }
#morgen-v6-root .mg6-application-review__visual::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(7, 17, 24, .03) 28%, rgba(7, 17, 24, .78) 100%); pointer-events: none; }
#morgen-v6-root .mg6-application-review__image { display: block; width: 100%; height: 100%; min-height: 650px; max-width: none; object-fit: cover; object-position: center; transform: scale(1.002); }
#morgen-v6-root .mg6-application-review__caption { position: absolute; right: clamp(22px, 3vw, 42px); bottom: clamp(22px, 3vw, 42px); left: clamp(22px, 3vw, 42px); z-index: 2; display: grid; gap: 10px; margin: 0; color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-application-review__caption > span { color: var(--mg6-on-dark); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
#morgen-v6-root .mg6-application-review__caption > strong { max-width: 520px; color: var(--mg6-on-dark); font-family: var(--mg6-font-display); font-size: clamp(25px, 2.35vw, 38px); line-height: 1.08; letter-spacing: -.025em; }
#morgen-v6-root .mg6-application-review__caption ul { display: flex; flex-wrap: wrap; gap: 8px; max-width: 560px; margin: 8px 0 0; padding: 0; list-style: none; }
#morgen-v6-root .mg6-application-review__caption li { padding: 7px 11px; border: 1px solid rgba(var(--mg6-on-dark-rgb), .34); border-radius: var(--mg6-radius-pill); background: rgba(var(--mg6-ink-rgb), .52); color: rgba(var(--mg6-on-dark-rgb), .9); font-size: 11px; font-weight: 700; letter-spacing: .045em; line-height: 1; text-transform: uppercase; backdrop-filter: blur(8px); }
#morgen-v6-root .mg6-application-review__content { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: clamp(34px, 4.6vw, 68px); }
#morgen-v6-root .mg6-application-review__lede { max-width: 820px; margin: 0 0 var(--mg6-space-xl); padding-left: 20px; border-left: 3px solid var(--mg6-amber); color: var(--mg6-ink-mid); font-size: var(--mg6-text-md); line-height: 1.72; }
#morgen-v6-root .mg6-application-review__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
#morgen-v6-root .mg6-application-review__steps li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 14px; min-width: 0; padding: 22px; border: 1px solid var(--mg6-surface-line); background: rgba(255, 255, 255, .88); transition: border-color var(--mg6-duration-base) var(--mg6-ease), transform var(--mg6-duration-base) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-application-review__steps li:hover { border-color: rgba(var(--mg6-amber-rgb), .38); box-shadow: 0 18px 38px -32px rgba(var(--mg6-ink-rgb), .5); transform: translateY(-2px); }
#morgen-v6-root .mg6-application-review__steps li > span { color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: clamp(28px, 2.6vw, 38px); line-height: 1; }
#morgen-v6-root .mg6-application-review__steps li > div { min-width: 0; }
#morgen-v6-root .mg6-application-review__steps strong { display: block; margin-bottom: 8px; color: var(--mg6-ink); font-size: var(--mg6-text-base); line-height: 1.35; }
#morgen-v6-root .mg6-application-review__steps p { margin: 0; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: 1.62; }
#morgen-v6-root .mg6-application-review__footer { display: flex; align-items: end; justify-content: space-between; gap: var(--mg6-space-lg); margin-top: var(--mg6-space-xl); padding-top: var(--mg6-space-lg); border-top: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-application-review__footer p { display: grid; gap: 4px; max-width: 520px; margin: 0; }
#morgen-v6-root .mg6-application-review__footer strong { color: var(--mg6-ink); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-application-review__footer span { color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); line-height: 1.55; }
#morgen-v6-root .mg6-application-review__footer .mg6-btn { flex: 0 0 auto; }
#morgen-v6-root .mg6-banner { position: relative; padding: var(--mg6-space-2xl) 0; border-bottom: 1px solid var(--mg6-surface-line); background: linear-gradient(120deg, var(--mg6-surface), var(--mg6-amber-soft)); overflow: hidden; }
#morgen-v6-root .mg6-banner--image { min-height: 520px; display: flex; align-items: end; color: #fff; }
#morgen-v6-root .mg6-banner__media,
#morgen-v6-root .mg6-banner__shade { position: absolute; inset: 0; }
#morgen-v6-root .mg6-banner__media img { width: 100%; height: 100%; object-fit: cover; }
#morgen-v6-root .mg6-banner__shade { background: linear-gradient(to top, rgba(15, 25, 25, 0.82), rgba(15, 25, 25, 0.16) 72%); }
#morgen-v6-root .mg6-banner__inner { position: relative; z-index: 2; }
#morgen-v6-root .mg6-banner h1 { max-width: 980px; }
#morgen-v6-root .mg6-banner h1 em { color: var(--mg6-amber); font-style: normal; }
#morgen-v6-root .mg6-banner--image h1 em { color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-banner__lede { max-width: 820px; margin-bottom: 0; font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-banner--image .mg6-banner__lede { color: rgba(255, 255, 255, 0.84); }
#morgen-v6-root .mg6-breadcrumbs { margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; margin-bottom: 0; color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-breadcrumbs li:not(:last-child)::after { content: "/"; margin-left: 6px; opacity: 0.55; }
#morgen-v6-root .mg6-breadcrumbs a { text-decoration: none; }
#morgen-v6-root .mg6-banner--image .mg6-breadcrumbs { color: rgba(255, 255, 255, 0.76); }
#morgen-v6-root .mg6-quote-card { margin: 0; padding: var(--mg6-space-xl); border-left: 6px solid var(--mg6-amber); background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-quote-card blockquote { margin-bottom: var(--mg6-space-lg); font-family: var(--mg6-font-display); font-size: var(--mg6-text-xl); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-quote-card p { margin-bottom: 0; font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-brand-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-brand-card { padding: var(--mg6-space-xl); border: 1px solid var(--mg6-dark-line); background: rgba(255, 255, 255, 0.06); }
#morgen-v6-root .mg6-brand-card span { display: inline-flex; margin-bottom: var(--mg6-space-lg); padding: 6px 9px; border: 1px solid rgba(var(--mg6-on-dark-rgb), .22); background: rgba(var(--mg6-on-dark-rgb), .07); color: var(--mg6-on-dark); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
#morgen-v6-root .mg6-process-list { display: grid; gap: 1px; background: var(--mg6-surface-line); }
#morgen-v6-root .mg6-process-list > div { display: grid; grid-template-columns: 56px 180px 1fr; gap: var(--mg6-space-lg); align-items: start; padding: var(--mg6-space-lg); background: var(--mg6-surface); }
#morgen-v6-root .mg6-process-list span { color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: var(--mg6-text-xl); }
#morgen-v6-root .mg6-process-list strong { font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-process-list p { margin-bottom: 0; }
#morgen-v6-root .mg6-process-list--dark { background: var(--mg6-dark-line); }
#morgen-v6-root .mg6-process-list--dark > div { background: rgba(var(--mg6-on-dark-rgb), 0.06); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-process-list--dark span,
#morgen-v6-root .mg6-process-list--dark strong { color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-process-list--dark p { color: rgba(var(--mg6-on-dark-rgb), 0.72); }

/* 8. CARD COMPONENTS */
#morgen-v6-root .mg6-card-section { padding: var(--mg6-space-3xl) 0; background: var(--mg6-surface); }
#morgen-v6-root .mg6-card-section--reports { background: var(--mg6-surface); }
#morgen-v6-root .mg6-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface); transition: box-shadow var(--mg6-duration-base) var(--mg6-ease), transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-card:hover,
#morgen-v6-root .mg6-card--report:hover { box-shadow: var(--mg6-shadow-hover); transform: translateY(-4px); }
#morgen-v6-root .mg6-card__media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--mg6-ease); }
#morgen-v6-root .mg6-card:hover .mg6-card__media img { transform: scale(1.035); }
#morgen-v6-root .mg6-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: var(--mg6-space-lg); }
#morgen-v6-root .mg6-card__meta { margin-bottom: 8px; color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
#morgen-v6-root .mg6-card__title { margin-bottom: 12px; }
#morgen-v6-root .mg6-card__title a { text-decoration: none; }
#morgen-v6-root .mg6-card__text { flex: 1; }
#morgen-v6-root .mg6-card__thumb { position: relative; display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; border-bottom: 1px solid var(--mg6-surface-line); background: radial-gradient(circle at 30% 30%, var(--mg6-surface) 0, var(--mg6-amber-soft) 40%, rgba(var(--mg6-amber-rgb), .22) 100%); }
#morgen-v6-root .mg6-card__document-mark { color: rgba(26, 26, 26, 0.22); font-family: var(--mg6-font-display); font-size: clamp(58px, 7vw, 94px); font-weight: 800; letter-spacing: -0.06em; }
#morgen-v6-root .mg6-card__brand-tag { position: absolute; top: 16px; left: 16px; padding: 6px 9px; background: var(--mg6-amber); color: var(--mg6-on-accent); font-size: var(--mg6-text-xs); font-weight: 800; }
#morgen-v6-root .mg6-principle-card { position: relative; padding: var(--mg6-space-xl) var(--mg6-space-lg); border-top: 4px solid var(--mg6-amber); background: var(--mg6-surface); box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-principle-card__number { display: block; margin-bottom: var(--mg6-space-xl); color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: var(--mg6-text-xl); }
#morgen-v6-root .mg6-integrity-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: stretch;
  margin-top: var(--mg6-space-xl);
  padding: clamp(28px, 4vw, 52px);
  border: 1px solid var(--mg6-surface-line);
  background: linear-gradient(135deg, #fff 0%, var(--mg6-surface-warm) 62%, rgba(var(--mg6-amber-rgb), .09) 100%);
  box-shadow: 0 10px 36px rgba(0, 0, 0, .06);
}
#morgen-v6-root .mg6-integrity-panel__copy { min-width: 0; }
#morgen-v6-root .mg6-integrity-panel__copy h3 { margin-bottom: var(--mg6-space-lg); font-size: var(--mg6-text-xl); }
#morgen-v6-root .mg6-integrity-panel__copy p:last-of-type { margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-integrity-panel__rail {
  display: grid;
  align-content: start;
  min-width: 0;
  padding-left: clamp(24px, 3vw, 42px);
  border-left: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-integrity-panel__rail .mg6-eyebrow { margin-bottom: var(--mg6-space-lg); color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-integrity-steps { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
#morgen-v6-root .mg6-integrity-steps li { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; align-items: start; padding: 14px 0; border-top: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-integrity-steps li:first-child { padding-top: 0; border-top: 0; }
#morgen-v6-root .mg6-integrity-steps span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--mg6-amber); color: var(--mg6-on-accent); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-bold); }
#morgen-v6-root .mg6-integrity-steps strong { display: block; margin-bottom: 3px; color: var(--mg6-ink); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-integrity-steps small { display: block; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-snug); }

#morgen-v6-root .mg6-family-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-family-card { display: grid; grid-template-columns: 150px 1fr; min-height: 210px; border: 1px solid var(--mg6-surface-line); background: #fff; overflow: hidden; }
#morgen-v6-root .mg6-family-card__media { overflow: hidden; background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-family-card__media img { width: 100%; height: 100%; object-fit: cover; }
#morgen-v6-root .mg6-family-card__body { padding: var(--mg6-space-lg); }
#morgen-v6-root .mg6-family-card__body h3 a { text-decoration: none; }
#morgen-v6-root .mg6-family-card__count { color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: 800; text-transform: uppercase; }
#morgen-v6-root .mg6-application-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-application-card { display: grid; grid-template-columns: 72px 1fr; gap: var(--mg6-space-lg); padding: var(--mg6-space-xl); border: 1px solid var(--mg6-surface-line); background: #fff; }
#morgen-v6-root .mg6-application-card__index { color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: var(--mg6-text-2xl); line-height: 1; }
#morgen-v6-root .mg6-application-card h3 a { text-decoration: none; }
#morgen-v6-root .mg6-watch-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-watch-card { display: flex; gap: var(--mg6-space-md); padding: var(--mg6-space-lg); border: 1px solid var(--mg6-dark-line); background: rgba(255, 255, 255, 0.06); }
#morgen-v6-root .mg6-watch-card span { display: grid; flex: 0 0 34px; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--mg6-amber); color: var(--mg6-on-accent); font-weight: 800; }
#morgen-v6-root .mg6-watch-card p { margin-bottom: 0; }
#morgen-v6-root .mg6-review-card { padding: var(--mg6-space-xl); border-top: 5px solid var(--mg6-amber); background: var(--mg6-surface-warm); box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-review-card--light { background: rgba(255, 255, 255, 0.76); }
#morgen-v6-root .mg6-review-card ul { margin: 0 0 var(--mg6-space-lg); padding-left: 20px; }
#morgen-v6-root .mg6-review-card li + li { margin-top: 8px; }
#morgen-v6-root .mg6-dark-panel { padding: var(--mg6-space-xl); border: 1px solid var(--mg6-dark-line); background: rgba(255, 255, 255, 0.06); }
#morgen-v6-root .mg6-dark-panel p { margin-bottom: 0; }

/* Product detail */
#morgen-v6-root .mg6-product-hero { padding: var(--mg6-space-2xl) 0; background: linear-gradient(135deg, #fff, var(--mg6-amber-soft)); }
#morgen-v6-root .mg6-product-hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr); gap: clamp(44px, 7vw, 96px); align-items: center; }
#morgen-v6-root .mg6-product-hero__lede { max-width: 760px; font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-product-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin: var(--mg6-space-lg) 0; }
#morgen-v6-root .mg6-product-hero__trust { display: flex; flex-wrap: wrap; gap: 8px; }
#morgen-v6-root .mg6-product-hero__trust span { padding: 7px 10px; border: 1px solid rgba(var(--mg6-amber-rgb), 0.48); border-radius: var(--mg6-radius-pill); background: rgba(255, 255, 255, 0.7); color: var(--mg6-ink-mid); font-size: var(--mg6-text-xs); font-weight: 600; }
#morgen-v6-root .mg6-product-hero__media { margin: 0; border: 1px solid var(--mg6-surface-line); background: #fff; box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-product-hero__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; }
#morgen-v6-root .mg6-product-hero__media figcaption { padding: 12px 16px; border-top: 1px solid var(--mg6-surface-line); color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-spec-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mg6-space-lg); margin: 0; }
#morgen-v6-root .mg6-spec-card { padding: var(--mg6-space-lg); border: 1px solid var(--mg6-surface-line); background: #fff; }
#morgen-v6-root .mg6-spec-card dt { margin-bottom: 8px; color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
#morgen-v6-root .mg6-spec-card dd { color: var(--mg6-ink-mid); }
#morgen-v6-root .mg6-table-wrap { overflow-x: auto; border: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-data-table { width: 100%; border-collapse: collapse; background: #fff; }
#morgen-v6-root .mg6-data-table th,
#morgen-v6-root .mg6-data-table td { padding: 16px 18px; border-bottom: 1px solid var(--mg6-surface-line); text-align: left; vertical-align: top; }
#morgen-v6-root .mg6-data-table th { width: 32%; background: var(--mg6-surface-warm); color: var(--mg6-ink); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-data-table tr:last-child th,
#morgen-v6-root .mg6-data-table tr:last-child td { border-bottom: 0; }

/* 9. STAT / KPI BLOCKS */
#morgen-v6-root .mg6-stat-section { position: relative; padding: var(--mg6-space-3xl) 0; color: var(--mg6-on-dark); overflow: hidden; }
#morgen-v6-root .mg6-stat-section--compact { padding: var(--mg6-space-2xl) 0; }
#morgen-v6-root .mg6-stat-section__bg,
#morgen-v6-root .mg6-stat-section__overlay { position: absolute; inset: 0; }
#morgen-v6-root .mg6-stat-section__bg img { width: 100%; height: 100%; object-fit: cover; }
#morgen-v6-root .mg6-stat-section__overlay { background: rgba(var(--mg6-dark-rgb), 0.68); }
#morgen-v6-root .mg6-stat-section__content { position: relative; z-index: 2; }
#morgen-v6-root .mg6-stat-section__title { max-width: 780px; color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-stat-section__sub { max-width: 760px; }
#morgen-v6-root .mg6-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); margin-top: var(--mg6-space-2xl); }
#morgen-v6-root .mg6-stat-card { padding: var(--mg6-space-xl) var(--mg6-space-lg); border: 1px solid rgba(var(--mg6-on-dark-rgb), 0.18); background: rgba(var(--mg6-on-dark-rgb), 0.12); backdrop-filter: blur(4px); }
#morgen-v6-root .mg6-stat-card__label { margin-bottom: var(--mg6-space-md); color: var(--mg6-stat); font-size: var(--mg6-text-sm); font-weight: 700; }
#morgen-v6-root .mg6-stat-card__value { margin-bottom: var(--mg6-space-sm); color: var(--mg6-on-dark); font-family: var(--mg6-font-display); font-size: clamp(40px, 5vw, 72px); font-weight: 800; line-height: 1; }
#morgen-v6-root .mg6-stat-card__unit { margin-bottom: var(--mg6-space-md); color: var(--mg6-stat); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-stat-card__note { margin-bottom: 0; color: rgba(var(--mg6-on-dark-rgb), 0.76); font-size: var(--mg6-text-sm); }

/* 10. FOOTER */
#morgen-v6-root .mg6-footer { padding: var(--mg6-space-2xl) 0 var(--mg6-space-lg); border-top: 1px solid var(--mg6-surface-line); background: var(--mg6-surface-warm); color: var(--mg6-ink); }
#morgen-v6-root .mg6-footer__cta { display: grid; grid-template-columns: 1fr auto; gap: var(--mg6-space-xl); align-items: center; padding: var(--mg6-space-xl); background: var(--mg6-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-footer__cta h2 { max-width: 820px; color: var(--mg6-on-dark); font-family: var(--mg6-font-display); }
#morgen-v6-root .mg6-footer__cta p { color: rgba(var(--mg6-on-dark-rgb), 0.76); }
#morgen-v6-root .mg6-footer__cta .mg6-eyebrow { color: rgba(var(--mg6-on-dark-rgb), .78); }
#morgen-v6-root .mg6-footer__cta-actions { display: flex; flex-wrap: wrap; gap: 10px; }
#morgen-v6-root .mg6-footer__social { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; padding: var(--mg6-space-lg) 0; border-bottom: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-footer__social-label { margin-right: var(--mg6-space-md); color: var(--mg6-ink); font-size: var(--mg6-text-xs); font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
#morgen-v6-root .mg6-social-link { color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); text-decoration: none; }
#morgen-v6-root .mg6-social-link:hover { color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-footer__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--mg6-space-xl); padding: var(--mg6-space-2xl) 0; }
#morgen-v6-root .mg6-footer__brand p { max-width: 420px; color: var(--mg6-ink-mid); }
#morgen-v6-root .mg6-logo--footer { margin-bottom: var(--mg6-space-lg); color: var(--mg6-logo-footer, var(--mg6-ink)); }
#morgen-v6-root .mg6-footer__col-title { margin-bottom: var(--mg6-space-md); color: var(--mg6-ink); font-size: var(--mg6-text-sm); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
#morgen-v6-root .mg6-footer__list { display: flex; flex-direction: column; gap: var(--mg6-space-sm); list-style: none; margin: 0; padding: 0; }
#morgen-v6-root .mg6-footer__list a { color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); text-decoration: none; }
#morgen-v6-root .mg6-footer__list a:hover { color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-footer__notice { display: flex; gap: 8px; padding: var(--mg6-space-lg); border: 1px solid var(--mg6-surface-line); background: #fff; color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-footer__notice strong { color: var(--mg6-ink); }
#morgen-v6-root .mg6-footer__bottom { display: flex; justify-content: space-between; gap: var(--mg6-space-lg); padding-top: var(--mg6-space-lg); }
#morgen-v6-root .mg6-footer__bottom p { margin-bottom: 0; color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }

/* 11. FORMS / INPUTS */
#morgen-v6-root .mg6-contact-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr); gap: clamp(42px, 6vw, 84px); align-items: start; }
#morgen-v6-root .mg6-form { padding: var(--mg6-space-xl); border: 1px solid var(--mg6-surface-line); background: #fff; box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mg6-space-lg); margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-field { display: flex; flex-direction: column; gap: 7px; color: var(--mg6-ink); font-size: var(--mg6-text-sm); font-weight: 600; }
#morgen-v6-root .mg6-field--full { grid-column: 1 / -1; }
#morgen-v6-root .mg6-field input,
#morgen-v6-root .mg6-field select,
#morgen-v6-root .mg6-field textarea { width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-md); background: #fff; color: var(--mg6-ink); font-weight: 400; transition: border-color var(--mg6-duration-fast), box-shadow var(--mg6-duration-fast); }
#morgen-v6-root .mg6-field textarea { min-height: 140px; resize: vertical; }
#morgen-v6-root .mg6-field input:hover,
#morgen-v6-root .mg6-field select:hover,
#morgen-v6-root .mg6-field textarea:hover { border-color: var(--mg6-ink-muted); }
#morgen-v6-root .mg6-field input:focus,
#morgen-v6-root .mg6-field select:focus,
#morgen-v6-root .mg6-field textarea:focus { border-color: var(--mg6-amber-deep); box-shadow: 0 0 0 3px var(--mg6-focus-ring); outline: 0; }
#morgen-v6-root .mg6-form__status { min-height: 24px; }
#morgen-v6-root .mg6-contact-aside { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 110px); }
#morgen-v6-root .mg6-contact-list { display: grid; gap: 12px; margin: var(--mg6-space-lg) 0; }
#morgen-v6-root .mg6-contact-list a { display: flex; flex-direction: column; gap: 3px; padding: var(--mg6-space-md); border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface-warm); text-decoration: none; }
#morgen-v6-root .mg6-contact-list span { color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); font-weight: 700; text-transform: uppercase; }
#morgen-v6-root .mg6-alert { margin-bottom: var(--mg6-space-lg); padding: var(--mg6-space-md); border-left: 5px solid currentColor; background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-alert--success { color: var(--mg6-success); }
#morgen-v6-root .mg6-alert--error { color: var(--mg6-danger); }

/* Document library */
#morgen-v6-root .mg6-doc-toolbar { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(200px, 0.6fr) auto; gap: var(--mg6-space-md); align-items: end; padding: var(--mg6-space-lg); border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-doc-brands { display: flex; flex-wrap: wrap; gap: 8px; margin: var(--mg6-space-lg) 0; }
#morgen-v6-root .mg6-chip { min-height: 38px; padding: 0 15px; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-pill); background: #fff; color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); font-weight: 600; cursor: pointer; }
#morgen-v6-root .mg6-chip:hover,
#morgen-v6-root .mg6-chip.is-active { border-color: var(--mg6-amber); background: var(--mg6-amber-soft); color: var(--mg6-ink); }
#morgen-v6-root .mg6-doc-status { color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-doc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-doc-card { display: flex; flex-direction: column; padding: var(--mg6-space-lg); border: 1px solid var(--mg6-surface-line); background: #fff; box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-doc-card__head { display: flex; align-items: center; justify-content: space-between; gap: var(--mg6-space-md); margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-doc-card__icon { width: 44px; height: 44px; color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-doc-card__icon svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
#morgen-v6-root .mg6-doc-card__tag { padding: 5px 8px; border-radius: var(--mg6-radius-pill); background: var(--mg6-amber-soft); color: var(--mg6-ink); font-size: var(--mg6-text-xs); font-weight: 700; }
#morgen-v6-root .mg6-doc-card h3 { font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-doc-card__meta { color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-doc-card .mg6-btn { margin-top: auto; align-self: flex-start; }
#morgen-v6-root .mg6-doc-load { display: flex; margin: var(--mg6-space-xl) auto 0; }

/* Document library state rules — required for init, filter, pagination, and reveal */
#morgen-v6-root [data-morgen-doc-library].is-filtering [data-morgen-doc-list] { opacity: 0.72; transition: opacity var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root #mg6-document-library [data-morgen-doc-card][hidden],
#morgen-v6-root #mg6-document-library [data-morgen-doc-card].morgen-doc-result-hidden,
#morgen-v6-root #mg6-document-library [data-morgen-doc-card].is-hidden,
#morgen-v6-root #mg6-document-library [data-morgen-doc-load][hidden],
#morgen-v6-root #mg6-document-library [data-morgen-doc-load].morgen-doc-result-hidden,
#morgen-v6-root #mg6-document-library [data-morgen-doc-empty][hidden] { display: none; }
#morgen-v6-root #mg6-document-library [data-morgen-doc-pending-control] { pointer-events: none; opacity: 0.62; }
#morgen-v6-root [data-morgen-doc-card].is-newly-revealed { animation: mg6-doc-reveal 0.38s var(--mg6-ease) both; animation-delay: calc(var(--morgen-doc-reveal-index, 0) * 35ms); }
@keyframes mg6-doc-reveal {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root [data-morgen-doc-list] { transition: none; }
  #morgen-v6-root [data-morgen-doc-card].is-newly-revealed { animation: none; }
}


/* Premium scroll reveal: JS opts targets in at runtime, so no-JS content stays visible. */
#morgen-v6-root.mg6-js-ready [data-mg6-reveal] {
  opacity: 0;
  transform: translateY(18px);
  will-change: opacity, transform;
  transition: opacity var(--mg6-duration-reveal, 480ms) var(--mg6-ease),
              transform var(--mg6-duration-reveal, 480ms) var(--mg6-ease);
}
#morgen-v6-root.mg6-js-ready [data-mg6-reveal].is-revealed {
  opacity: 1;
  transform: none;
}
#morgen-v6-root.mg6-js-ready [data-mg6-reveal-group] > [data-mg6-reveal] {
  transition-delay: calc(var(--mg6-reveal-i, 0) * 70ms);
}
@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root.mg6-js-ready [data-mg6-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
    will-change: auto;
  }
}

/* 12. BUTTONS */
#morgen-v6-root .mg6-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--mg6-space-sm); min-height: 44px; padding: 0 var(--mg6-space-xl); border: 2px solid transparent; font-family: var(--mg6-font-ui); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); letter-spacing: 0.02em; line-height: 1; text-decoration: none; cursor: pointer; transition: background var(--mg6-duration-fast) var(--mg6-ease), color var(--mg6-duration-fast) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease), transform var(--mg6-duration-fast) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-btn:hover { transform: translateY(-1px); }
#morgen-v6-root .mg6-btn:active { transform: translateY(0); }
#morgen-v6-root .mg6-btn--pill { border-radius: var(--mg6-radius-pill); }
/* Filled controls derive their foreground from the actual accent token. */
#morgen-v6-root .mg6-btn--amber { border-color: var(--mg6-amber); background: var(--mg6-amber); color: var(--mg6-on-accent); }
#morgen-v6-root .mg6-btn--amber:hover { border-color: var(--mg6-amber-deep); background: var(--mg6-amber-deep); color: var(--mg6-on-accent-deep); box-shadow: 0 6px 18px rgba(var(--mg6-amber-rgb), 0.35); }
#morgen-v6-root .mg6-btn--amber-outline { border-color: var(--mg6-amber-deep); background: transparent; color: var(--mg6-ink); }
#morgen-v6-root .mg6-btn--amber-outline:hover { border-color: var(--mg6-amber); background: var(--mg6-amber); color: var(--mg6-on-accent); }
#morgen-v6-root .mg6-btn--dark-outline { border-color: var(--mg6-ink); background: transparent; color: var(--mg6-ink); }
#morgen-v6-root .mg6-btn--dark-outline:hover { border-color: var(--mg6-dark); background: var(--mg6-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-btn--outline-light { border-color: rgba(var(--mg6-on-dark-rgb), 0.68); background: transparent; color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-btn--outline-light:hover { border-color: var(--mg6-on-dark); background: rgba(var(--mg6-on-dark-rgb), 0.13); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-btn--sm { min-height: 36px; padding: 0 var(--mg6-space-lg); font-size: var(--mg6-text-xs); }
#morgen-v6-root .mg6-btn--lg { min-height: 52px; padding: 0 calc(var(--mg6-space-xl) * 1.5); font-size: var(--mg6-text-base); }
#morgen-v6-root :where(.mg6-btn, .mg6-quick, .mg6-icon-button, .mg6-chip, .mg6-scroll-nav button):disabled,
#morgen-v6-root :where(.mg6-btn, .mg6-quick, .mg6-icon-button, .mg6-chip, .mg6-scroll-nav button)[aria-disabled="true"] { cursor: default; opacity: .56; transform: none; }

/* 13. MODAL / OVERLAY */
#morgen-v6-root.is-drawer-open { isolation: isolate; }
#morgen-v6-root .mg6-error { display: grid; min-height: 70vh; place-items: center; padding: var(--mg6-space-3xl) 0; background: linear-gradient(135deg, var(--mg6-surface), var(--mg6-amber-soft)); }
#morgen-v6-root .mg6-error__inner { max-width: 760px; text-align: center; }
#morgen-v6-root .mg6-error__code { margin-bottom: 0; color: var(--mg6-amber-deep); font-family: var(--mg6-font-display); font-size: clamp(90px, 18vw, 190px); font-weight: 800; line-height: 0.8; }
#morgen-v6-root .mg6-error__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: var(--mg6-space-lg); }

/* 14. UTILITIES */
/* Base reveal — only fire when the drawer is actually shown; scoped to :not([hidden])
   so toggling hidden on/off does not replay a stale animation on the closed state. */
#morgen-v6-root.mg6-js-ready .mg6-drawer:not([hidden]) {
  animation-name: mg6-reveal;
  animation-duration: 240ms;
  animation-timing-function: var(--mg6-ease);
  animation-fill-mode: both;
}
@keyframes mg6-reveal { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }


/* 14.5 HOMEPAGE PARITY MODULES */
#morgen-v6-root .mg6-hero__subheading { margin: 0 0 var(--mg6-space-sm); color: var(--mg6-on-dark); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-bold); letter-spacing: .08em; line-height: var(--mg6-leading-snug); text-transform: uppercase; }
#morgen-v6-root .mg6-hero__copy--center { margin-inline: auto; text-align: center; }
#morgen-v6-root .mg6-hero__copy--center .mg6-hero__sub,
#morgen-v6-root .mg6-hero__copy--center .mg6-hero__actions { margin-inline: auto; justify-content: center; }
#morgen-v6-root .mg6-hero__copy--right { margin-left: auto; text-align: right; }
#morgen-v6-root .mg6-hero__copy--right .mg6-hero__sub { margin-left: auto; }
#morgen-v6-root .mg6-hero__copy--right .mg6-hero__actions { justify-content: flex-end; }
#morgen-v6-root .mg6-section-head--split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .62fr); gap: var(--mg6-space-xl); align-items: end; }
#morgen-v6-root .mg6-section-head--with-nav { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--mg6-space-xl); }
#morgen-v6-root .mg6-family-section,
#morgen-v6-root .mg6-media-section,
#morgen-v6-root .mg6-showcase-section,
#morgen-v6-root .mg6-process-section,
#morgen-v6-root .mg6-testimonial-section,
#morgen-v6-root .mg6-consultation { padding: var(--mg6-space-3xl) 0; }
#morgen-v6-root .mg6-home-family-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-home-family-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--mg6-space-md); align-items: start; min-height: 190px; padding: var(--mg6-space-xl); border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface); color: var(--mg6-ink); text-decoration: none; transition: transform var(--mg6-duration-base) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease), border-color var(--mg6-duration-fast); }
#morgen-v6-root .mg6-home-family-card:hover { border-color: var(--mg6-amber); box-shadow: var(--mg6-shadow-hover); transform: translateY(-4px); }
#morgen-v6-root .mg6-home-family-card__number { color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-bold); letter-spacing: .08em; }
#morgen-v6-root .mg6-home-family-card h3 { margin-bottom: var(--mg6-space-sm); font-size: var(--mg6-text-lg); }
#morgen-v6-root .mg6-home-family-card p { margin: 0; color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-home-family-card__arrow { color: var(--mg6-amber-deep); font-size: 22px; }
#morgen-v6-root .mg6-brand-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-md); margin-top: var(--mg6-space-xl); }
#morgen-v6-root .mg6-brand-tiers a { display: flex; flex-direction: column; gap: 4px; padding: var(--mg6-space-lg); border-left: 4px solid var(--mg6-amber); background: var(--mg6-surface-warm); color: var(--mg6-ink); text-decoration: none; }
#morgen-v6-root .mg6-brand-tiers span { color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-brand-tiers__summary { width: 100%; margin: var(--mg6-space-lg) 0 0; padding: 18px 22px; border-left: 3px solid var(--mg6-amber); background: linear-gradient(90deg, var(--mg6-surface-warm), rgba(var(--mg6-amber-rgb), .08)); color: var(--mg6-ink-mid); }
#morgen-v6-root .mg6-why-section { padding: var(--mg6-space-3xl) 0; background: var(--mg6-surface); }
#morgen-v6-root .mg6-why-panel { position: relative; isolation: isolate; overflow: hidden; padding: var(--mg6-space-2xl); border: 1px solid rgba(var(--mg6-on-dark-rgb), .08); background: linear-gradient(145deg, var(--mg6-dark) 0%, var(--mg6-dark-mid) 58%, var(--mg6-dark-deep) 100%); color: var(--mg6-on-dark); box-shadow: 0 28px 72px rgba(var(--mg6-ink-rgb), .16); }
#morgen-v6-root .mg6-why-panel::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(118deg, rgba(255,255,255,.035), transparent 42%, rgba(var(--mg6-amber-rgb),.035)); pointer-events: none; }
#morgen-v6-root .mg6-why-panel__art { position: absolute; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; }
#morgen-v6-root .mg6-why-panel__art span { position: absolute; display: block; border: clamp(46px, 5.5vw, 82px) solid rgba(255,255,255,.045); border-radius: 50%; }
#morgen-v6-root .mg6-why-panel__art span:first-child { width: clamp(420px, 48vw, 760px); height: clamp(420px, 48vw, 760px); right: -14%; top: -58%; }
#morgen-v6-root .mg6-why-panel__art span:last-child { width: clamp(210px, 25vw, 390px); height: clamp(210px, 25vw, 390px); left: -10%; bottom: -52%; border-color: rgba(var(--mg6-amber-rgb),.08); }
#morgen-v6-root .mg6-why-panel__head { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr); gap: clamp(36px, 6vw, 96px); align-items: start; }
#morgen-v6-root .mg6-why-panel__heading { min-width: 0; }
#morgen-v6-root .mg6-why-panel__heading h2 { max-width: 780px; margin-bottom: 0; color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-why-panel__intro { display: grid; justify-items: start; gap: var(--mg6-space-lg); min-width: 0; }
#morgen-v6-root .mg6-why-panel__intro > p { width: 100%; max-width: none; margin: 0; color: rgba(var(--mg6-on-dark-rgb), .76); }
#morgen-v6-root .mg6-proof-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 0; }
#morgen-v6-root .mg6-proof-row span { padding: 8px 11px; border: 1px solid rgba(var(--mg6-on-dark-rgb), .2); border-radius: var(--mg6-radius-pill); background: rgba(var(--mg6-on-dark-rgb), .045); color: var(--mg6-on-dark); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-semibold); }
#morgen-v6-root .mg6-why-list { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mg6-space-lg); margin-top: var(--mg6-space-2xl); background: transparent; }
#morgen-v6-root .mg6-why-list article { position: relative; display: grid; grid-template-columns: 48px minmax(0,1fr); gap: var(--mg6-space-lg); min-width: 0; min-height: 176px; overflow: hidden; padding: var(--mg6-space-xl); border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.055); transition: border-color var(--mg6-duration-fast) var(--mg6-ease), background var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-why-list article::before { content: ''; position: absolute; inset: 0 0 auto; height: 3px; background: var(--mg6-amber); opacity: .9; }
#morgen-v6-root .mg6-why-list article:hover { border-color: rgba(var(--mg6-amber-rgb),.58); background: rgba(255,255,255,.085); transform: translateY(-3px); }
#morgen-v6-root .mg6-why-list article > span { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(var(--mg6-on-dark-rgb), .34); background: rgba(var(--mg6-on-dark-rgb), .08); color: var(--mg6-on-dark); font-weight: var(--mg6-weight-bold); }
#morgen-v6-root .mg6-why-list h3 { margin-bottom: var(--mg6-space-sm); color: var(--mg6-on-dark); font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-why-list p { margin: 0; color: rgba(var(--mg6-on-dark-rgb), .7); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-scroll-nav { display: flex; gap: 8px; flex: 0 0 auto; }
#morgen-v6-root .mg6-scroll-nav button { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--mg6-surface-line); border-radius: 50%; background: var(--mg6-surface); color: var(--mg6-ink); font-size: 24px; cursor: pointer; transition: border-color var(--mg6-duration-fast) var(--mg6-ease), background var(--mg6-duration-fast) var(--mg6-ease), opacity var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-scroll-nav button:hover:not(:disabled) { border-color: var(--mg6-amber); background: var(--mg6-amber-soft); }
#morgen-v6-root .mg6-scroll-nav button:disabled { opacity: 0.36; cursor: default; }
#morgen-v6-root .mg6-media-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-media-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-lg); background: var(--mg6-surface); box-shadow: var(--mg6-shadow-card); }
#morgen-v6-root .mg6-media-card a { display: block; overflow: hidden; aspect-ratio: 16/10; border-radius: inherit; }
#morgen-v6-root .mg6-media-card img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-media-card:hover img { transform: scale(1.035); }
#morgen-v6-root .mg6-media-card figcaption { padding: 12px var(--mg6-space-md) 14px; border-top: 1px solid var(--mg6-surface-line); color: var(--mg6-ink); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-showcase-section { background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-showcase-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mg6-space-lg); }
#morgen-v6-root .mg6-video-card { position: relative; min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-lg); background: var(--mg6-dark); box-shadow: var(--mg6-shadow-card); transition: transform var(--mg6-duration-base) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease); }
#morgen-v6-root .mg6-video-card:hover { border-color: rgba(var(--mg6-amber-rgb), .54); box-shadow: var(--mg6-shadow-hover); transform: translateY(-3px); }
#morgen-v6-root .mg6-video-card__media { position: relative; display: block; width: 100%; overflow: hidden; aspect-ratio: 16/9; padding: 0; border: 0; border-radius: inherit; background: var(--mg6-dark); color: var(--mg6-on-dark); cursor: pointer; text-align: left; }
#morgen-v6-root .mg6-video-card__thumb { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; background: var(--mg6-dark); object-fit: cover; opacity: 1; transform: scale(1.002); transition: opacity 280ms var(--mg6-ease), transform 520ms var(--mg6-ease), filter 280ms var(--mg6-ease); }
#morgen-v6-root.mg6-js-ready .mg6-video-card:not([data-mg6-thumb-state="ready"]) .mg6-video-card__thumb { opacity: 0; }
#morgen-v6-root .mg6-video-card[data-mg6-thumb-state="ready"] .mg6-video-card__thumb { opacity: 1; }
#morgen-v6-root .mg6-video-card:hover .mg6-video-card__thumb,
#morgen-v6-root .mg6-video-card:focus-within .mg6-video-card__thumb { filter: saturate(1.04) contrast(1.02); transform: scale(1.035); }
#morgen-v6-root .mg6-video-card__loading { position: absolute; inset: 0; background: linear-gradient(105deg, var(--mg6-dark) 10%, var(--mg6-dark-mid) 36%, var(--mg6-dark) 64%); background-size: 220% 100%; opacity: 0; transition: opacity 220ms var(--mg6-ease); }
#morgen-v6-root.mg6-js-ready .mg6-video-card:is([data-mg6-thumb-state="pending"], [data-mg6-thumb-state="loading"]) .mg6-video-card__loading { opacity: 1; animation: mg6-video-loading 1.5s linear infinite; }
#morgen-v6-root .mg6-video-card[data-mg6-thumb-state="ready"] .mg6-video-card__loading,
#morgen-v6-root .mg6-video-card[data-mg6-thumb-state="error"] .mg6-video-card__loading { opacity: 0; animation: none; }
#morgen-v6-root .mg6-video-card__scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8, 15, 15, .04), rgba(8, 15, 15, .34)); transition: background var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-video-card:hover .mg6-video-card__scrim,
#morgen-v6-root .mg6-video-card:focus-within .mg6-video-card__scrim { background: linear-gradient(180deg, rgba(8, 15, 15, 0), rgba(8, 15, 15, .18)); }
#morgen-v6-root .mg6-video-card__play { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 68px; height: 68px; border: 1px solid rgba(255, 255, 255, .78); border-radius: 50%; background: rgba(255, 255, 255, .94); color: var(--mg6-ink); box-shadow: 0 18px 44px rgba(0, 0, 0, .28); transform: translate(-50%, -50%); transition: background var(--mg6-duration-fast) var(--mg6-ease), color var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-video-card__play svg { width: 28px; height: 28px; transform: translateX(1px); }
#morgen-v6-root .mg6-video-card:hover .mg6-video-card__play,
#morgen-v6-root .mg6-video-card:focus-within .mg6-video-card__play { background: var(--mg6-amber); color: var(--mg6-on-accent); transform: translate(-50%, -50%) scale(1.08); }
#morgen-v6-root .mg6-video-card__media:focus-visible { outline: 3px solid var(--mg6-focus-ring); outline-offset: -4px; }
#morgen-v6-root.is-video-modal-open { overflow: visible; }
#morgen-v6-root .mg6-video-modal { position: fixed; inset: 0; z-index: 100000; display: none; align-items: center; justify-content: center; padding: clamp(16px, 4vw, 48px); }
#morgen-v6-root .mg6-video-modal.is-open { display: flex; }
#morgen-v6-root .mg6-video-modal__backdrop { position: absolute; inset: 0; border: 0; background: rgba(9, 16, 16, .9); cursor: pointer; }
#morgen-v6-root .mg6-video-modal__dialog { position: relative; z-index: 1; width: min(1120px, 100%); overflow: hidden; border: 1px solid rgba(255, 255, 255, .16); border-radius: var(--mg6-radius-lg); background: #050808; box-shadow: 0 36px 120px rgba(0, 0, 0, .52); }
#morgen-v6-root .mg6-video-modal__dialog video { display: block; width: 100%; max-height: calc(100vh - 96px); background: #050808; object-fit: contain; }
#morgen-v6-root .mg6-video-modal__close { position: absolute; right: 14px; top: 14px; z-index: 2; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid rgba(255, 255, 255, .32); border-radius: 50%; background: rgba(255, 255, 255, .94); color: var(--mg6-ink); cursor: pointer; box-shadow: 0 12px 30px rgba(0, 0, 0, .24); }
#morgen-v6-root .mg6-video-modal__close:hover { background: var(--mg6-amber); color: var(--mg6-on-accent); }
#morgen-v6-root .mg6-video-modal__close:focus-visible { outline: 3px solid var(--mg6-focus-ring); outline-offset: 3px; }
#morgen-v6-root .mg6-video-modal__close svg { width: 20px; height: 20px; }
@keyframes mg6-video-loading { to { background-position: -220% 0; } }
#morgen-v6-root .mg6-process-panel { position: relative; overflow: hidden; padding: var(--mg6-space-2xl); background: var(--mg6-dark); color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-process-panel::after { content: ''; position: absolute; right: -100px; top: -140px; width: 360px; height: 360px; border: 60px solid rgba(var(--mg6-amber-rgb),.12); border-radius: 50%; }
#morgen-v6-root .mg6-process-panel__head { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--mg6-space-xl); align-items: end; }
#morgen-v6-root .mg6-process-panel__head h2 { max-width: 760px; color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-process-panel__head p { max-width: 760px; color: rgba(var(--mg6-on-dark-rgb), .72); }
#morgen-v6-root .mg6-process-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--mg6-space-lg); margin: var(--mg6-space-2xl) 0 0; padding: 0; list-style: none; }
#morgen-v6-root .mg6-process-grid li { padding: var(--mg6-space-lg); border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.06); }
#morgen-v6-root .mg6-process-grid li > span { display: block; margin-bottom: var(--mg6-space-lg); color: var(--mg6-on-dark); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-bold); }
#morgen-v6-root .mg6-process-grid h3 { color: var(--mg6-on-dark); font-size: var(--mg6-text-lg); }
#morgen-v6-root .mg6-process-grid p { margin: 0; color: rgba(var(--mg6-on-dark-rgb), .68); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-brand-marquee { overflow: hidden; margin-top: var(--mg6-space-lg); border-block: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-brand-marquee__track { display: flex; width: max-content; animation: mg6-marquee 28s linear infinite; }
#morgen-v6-root .mg6-brand-marquee__track > div { display: flex; }
#morgen-v6-root .mg6-brand-marquee span { display: inline-flex; align-items: center; gap: 8px; padding: 16px 24px; color: var(--mg6-ink-mid); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); white-space: nowrap; }
#morgen-v6-root .mg6-brand-marquee i { width: 6px; height: 6px; border-radius: 50%; background: var(--mg6-amber); }
@keyframes mg6-marquee { to { transform: translateX(-50%); } }
#morgen-v6-root .mg6-testimonial-section { overflow: hidden; background: linear-gradient(180deg, var(--mg6-surface-warm), var(--mg6-surface)); }
#morgen-v6-root .mg6-testimonial-controls { display: flex; align-items: center; gap: var(--mg6-space-md); flex: 0 0 auto; }
#morgen-v6-root .mg6-testimonial-count { min-width: 68px; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); letter-spacing: 0.08em; text-align: right; }
#morgen-v6-root .mg6-testimonial-viewport { overflow: hidden; border-radius: var(--mg6-radius-lg); }
#morgen-v6-root .mg6-testimonial-track { display: grid; grid-auto-flow: column; grid-auto-columns: 100%; gap: var(--mg6-space-lg); overflow-x: auto; padding: 4px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-inline: contain; }
#morgen-v6-root .mg6-testimonial-track::-webkit-scrollbar { display: none; }
#morgen-v6-root .mg6-testimonial-track:focus-visible { outline: 3px solid var(--mg6-focus-ring); outline-offset: 3px; }
#morgen-v6-root .mg6-testimonial-card { display: grid; grid-template-columns: minmax(260px, 0.78fr) minmax(0, 1.22fr); min-height: 430px; margin: 0; overflow: hidden; border: 1px solid var(--mg6-surface-line); border-radius: var(--mg6-radius-lg); background: var(--mg6-surface); box-shadow: var(--mg6-shadow-card); scroll-snap-align: start; scroll-snap-stop: always; }
#morgen-v6-root .mg6-testimonial-card__image { position: relative; display: grid; place-items: center; min-height: 430px; overflow: hidden; background: linear-gradient(145deg, var(--mg6-amber-soft), var(--mg6-surface-warm)); }
#morgen-v6-root .mg6-testimonial-card__image::after { content: ''; position: absolute; inset: auto 0 0; height: 36%; background: linear-gradient(to top, rgba(17,19,24,0.18), transparent); pointer-events: none; }
#morgen-v6-root .mg6-testimonial-card__image img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
#morgen-v6-root .mg6-testimonial-card__initial { display: grid; place-items: center; width: 120px; height: 120px; border-radius: 50%; background: var(--mg6-amber); color: var(--mg6-on-accent); font-family: var(--mg6-font-heading); font-size: 52px; font-weight: var(--mg6-weight-bold); }
#morgen-v6-root .mg6-testimonial-card__content { position: relative; display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(32px, 5vw, 72px); }
#morgen-v6-root .mg6-testimonial-card__label { position: relative; z-index: 1; margin-bottom: var(--mg6-space-xl); color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-bold); letter-spacing: 0.12em; line-height: var(--mg6-leading-snug); text-transform: uppercase; }
#morgen-v6-root .mg6-testimonial-card__quote-mark { position: absolute; top: 20px; right: clamp(24px, 4vw, 52px); color: var(--mg6-amber-soft); font-family: Georgia, serif; font-size: clamp(110px, 12vw, 180px); font-weight: 700; line-height: 1; pointer-events: none; }
#morgen-v6-root .mg6-testimonial-card blockquote { position: relative; z-index: 1; margin: 0; }
#morgen-v6-root .mg6-testimonial-card blockquote p { max-width: 760px; margin: 0; color: var(--mg6-ink); font-family: var(--mg6-font-heading); font-size: clamp(25px, 3vw, 42px); font-weight: var(--mg6-weight-semibold); line-height: 1.24; overflow-wrap: anywhere; }
#morgen-v6-root .mg6-testimonial-card__author { position: relative; z-index: 1; display: grid; gap: 3px; margin-top: clamp(28px, 4vw, 52px); padding-top: var(--mg6-space-lg); border-top: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-testimonial-card__author strong { color: var(--mg6-ink); font-size: var(--mg6-text-md); font-weight: var(--mg6-weight-bold); }
#morgen-v6-root .mg6-testimonial-card__author span { color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-consultation { padding-top: 0; }
#morgen-v6-root .mg6-consultation__panel { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--mg6-space-xl); align-items: center; padding: var(--mg6-space-2xl); border: 1px solid var(--mg6-surface-line); background: linear-gradient(135deg,var(--mg6-amber-soft),#fff); }
#morgen-v6-root .mg6-consultation__panel h2 { max-width: 860px; }
#morgen-v6-root .mg6-consultation__panel p { max-width: 760px; margin-bottom: 0; color: var(--mg6-ink-mid); }
#morgen-v6-root .mg6-consultation__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--mg6-space-md); }


/* 14.8 V6 INHERITED EDITORIAL SECTION / BRAND / HERO SYSTEM */
#morgen-v6-root.mg6 {
  --mg6-header-height: 96px;
  --mg6-header-control-size: var(--mg6-text-base);
  --mg6-section-copy-width: 520px;
}
#morgen-v6-root .mg6-sitebar__inner {
  grid-template-columns: minmax(244px, 272px) minmax(0, 1fr) auto;
  min-height: var(--mg6-header-height);
  gap: clamp(18px, 2vw, 34px);
}
#morgen-v6-root .mg6-logo {
  grid-template-rows: auto auto;
  align-content: center;
  gap: 6px;
  width: min(252px, 100%);
  padding-block: 10px;
}
#morgen-v6-root .mg6-logo__mark { min-height: 38px; }
#morgen-v6-root .mg6-logo__mark > svg,
#morgen-v6-root .mg6-logo__mark > img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 44px;
}
#morgen-v6-root .mg6-logo__mark > .mg-logo-raster {
  width: 100%;
  max-width: 100%;
  height: 44px;
  max-height: 44px;
  aspect-ratio: auto;
}
#morgen-v6-root .mg6-logo-tagline {
  width: 100%;
  margin: 0;
  padding-left: 2px;
  font-size: 10.5px;
  letter-spacing: 0.025em;
  line-height: 1.25;
}
#morgen-v6-root .mg6-nav__link {
  min-height: var(--mg6-header-height);
  padding-inline: clamp(7px, .68vw, 11px);
  font-size: var(--mg6-header-control-size);
  line-height: 1.2;
  white-space: nowrap;
}
#morgen-v6-root .mg6-nav__link::after { left: 9px; right: 9px; }
#morgen-v6-root .mg6-quick { font-size: var(--mg6-header-control-size); }

#morgen-v6-root .mg6-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
  grid-template-rows: auto auto;
  column-gap: clamp(36px, 6vw, 96px);
  row-gap: 0;
  align-items: start;
  max-width: none;
  margin-bottom: var(--mg6-space-2xl);
}
#morgen-v6-root .mg6-section-head > .mg6-eyebrow {
  grid-column: 1;
  grid-row: 1;
}
#morgen-v6-root .mg6-section-head > .mg6-section-head__title {
  grid-column: 1;
  grid-row: 2;
  max-width: 760px;
  margin-bottom: 0;
}
#morgen-v6-root .mg6-section-head > .mg6-section-head__sub {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
  justify-self: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
}
#morgen-v6-root .mg6-section-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr); gap: clamp(36px, 6vw, 96px); align-items: start; }
#morgen-v6-root .mg6-section-body > :only-child { grid-column: 1 / -1; }
#morgen-v6-root .mg6-section-head__copy { grid-column: 1; min-width: 0; }
#morgen-v6-root .mg6-section-head__copy .mg6-section-head__title { margin-bottom: 0; }
#morgen-v6-root .mg6-section-head__aside {
  grid-column: 2;
  display: grid;
  align-content: start;
  justify-items: start;
  gap: var(--mg6-space-lg);
  width: 100%;
  min-width: 0;
}
#morgen-v6-root .mg6-section-head__aside .mg6-section-head__sub { width: 100%; max-width: none; margin: 0; }
#morgen-v6-root .mg6-section-head--with-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
  align-items: start;
}
#morgen-v6-root .mg6-section-head--light .mg6-section-head__title { color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-section-head--light .mg6-section-head__sub { color: rgba(var(--mg6-on-dark-rgb), .78); }

#morgen-v6-root .mg6-banner__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: start;
}
#morgen-v6-root .mg6-banner__heading { min-width: 0; }
#morgen-v6-root .mg6-banner__heading h1 { margin-bottom: 0; }
#morgen-v6-root .mg6-banner__lede {
  align-self: start;
  justify-self: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
}

#morgen-v6-root .mg6-welcome__title { margin-bottom: 0; }
#morgen-v6-root .mg6-welcome__body { max-width: var(--mg6-section-copy-width); }
#morgen-v6-root .mg6-feature-band__title { max-width: 760px; }
#morgen-v6-root .mg6-why-panel__head { align-items: start; }
#morgen-v6-root .mg6-why-list { background: transparent; }
#morgen-v6-root .mg6-why-list article { min-width: 0; }
#morgen-v6-root .mg6-proof-row { margin-top: 0; }
#morgen-v6-root .mg6-process-panel__head {
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
  align-items: start;
}
#morgen-v6-root .mg6-process-panel__head h2 { margin-bottom: 0; }
#morgen-v6-root .mg6-process-panel__intro {
  display: grid;
  justify-items: start;
  gap: var(--mg6-space-lg);
}
#morgen-v6-root .mg6-process-panel__intro { width: 100%; }
#morgen-v6-root .mg6-process-panel__intro p { width: 100%; max-width: none; margin: 0; }

#morgen-v6-root .mg6-hero__media--accent { overflow: hidden; background: var(--mg6-amber); }
#morgen-v6-root .mg6-hero__accent-art {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: linear-gradient(135deg, var(--mg6-amber) 0%, var(--mg6-amber-highlight) 54%, var(--mg6-amber) 100%);
}
#morgen-v6-root .mg6-hero__accent-art::before {
  content: "";
  position: absolute;
  width: 78vw;
  height: 78vw;
  max-width: 1120px;
  max-height: 1120px;
  right: -18vw;
  top: -42vw;
  border: clamp(68px, 8vw, 132px) solid rgba(var(--mg6-dark-rgb), .94);
  border-radius: 50%;
  transform: rotate(-12deg);
}
#morgen-v6-root .mg6-hero__accent-art::after {
  content: "";
  position: absolute;
  right: -8%;
  bottom: -34%;
  width: 72%;
  height: 78%;
  border: clamp(26px, 3vw, 52px) solid rgba(255,255,255,.82);
  border-radius: 50%;
  transform: rotate(12deg);
}
#morgen-v6-root .mg6-hero__accent-art span,
#morgen-v6-root .mg6-hero__accent-art i,
#morgen-v6-root .mg6-hero__accent-art b {
  position: absolute;
  display: block;
  border-radius: var(--mg6-radius-pill);
  transform: rotate(-11deg);
}
#morgen-v6-root .mg6-hero__accent-art span { right: 8%; top: 18%; width: 34%; height: 12px; background: rgba(var(--mg6-dark-rgb), .78); }
#morgen-v6-root .mg6-hero__accent-art i { right: 4%; top: 25%; width: 46%; height: 5px; background: rgba(255,255,255,.84); }
#morgen-v6-root .mg6-hero__accent-art b { right: 13%; top: 31%; width: 28%; height: 22px; background: rgba(var(--mg6-dark-rgb), .28); }
#morgen-v6-root .mg6-hero__accent-art--2 { filter: saturate(.9) hue-rotate(-8deg); }
#morgen-v6-root .mg6-hero__accent-art--2::before { right: -28vw; top: -30vw; transform: rotate(14deg); }
#morgen-v6-root .mg6-hero__accent-art--3::after { right: 4%; bottom: -48%; width: 82%; }
#morgen-v6-root .mg6-hero__slide--accent .mg6-hero__overlay {
  background: linear-gradient(90deg, rgba(20,27,31,.94) 0%, rgba(20,27,31,.76) 42%, rgba(20,27,31,.18) 72%, rgba(20,27,31,.04) 100%);
}


/* 14.9 V6 CONTEXT / DECISION PANEL HARDENING */
#morgen-v6-root .mg6-section--context { background: linear-gradient(180deg, var(--mg6-surface) 0%, var(--mg6-surface-warm) 100%); }
#morgen-v6-root .mg6-decision-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--mg6-surface-line);
  border-radius: var(--mg6-radius-lg);
  background: #fff;
  box-shadow: 0 18px 54px rgba(20, 30, 30, .08);
}
#morgen-v6-root .mg6-decision-panel::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--mg6-amber) 0%, var(--mg6-amber-deep) 100%);
}
#morgen-v6-root .mg6-decision-panel::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -180px;
  right: -150px;
  width: 390px;
  height: 390px;
  border: 54px solid rgba(var(--mg6-amber-rgb), .07);
  border-radius: 50%;
  pointer-events: none;
}
#morgen-v6-root .mg6-decision-panel__head,
#morgen-v6-root .mg6-decision-panel__body { position: relative; z-index: 1; }
#morgen-v6-root .mg6-decision-panel__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr);
  gap: clamp(38px, 6vw, 92px);
  align-items: start;
  padding: clamp(36px, 5vw, 68px);
  border-bottom: 1px solid var(--mg6-surface-line);
  background: linear-gradient(135deg, rgba(var(--mg6-amber-rgb), .055) 0%, rgba(255,255,255,.96) 54%, #fff 100%);
}
#morgen-v6-root .mg6-decision-panel__heading { min-width: 0; }
#morgen-v6-root .mg6-decision-panel__heading .mg6-eyebrow { margin-bottom: var(--mg6-space-md); color: var(--mg6-amber-deep); }
#morgen-v6-root .mg6-decision-panel__heading h2 { max-width: 760px; margin-bottom: 0; }
#morgen-v6-root .mg6-decision-panel__lede {
  width: 100%;
  max-width: 620px;
  margin: 0;
  justify-self: end;
  color: var(--mg6-ink-mid);
}
#morgen-v6-root .mg6-decision-panel__body {
  display: grid;
  grid-template-columns: minmax(0, 1.34fr) minmax(330px, .66fr);
  min-width: 0;
}
#morgen-v6-root .mg6-decision-panel__main {
  min-width: 0;
  padding: clamp(36px, 5vw, 68px);
}
#morgen-v6-root .mg6-decision-panel__label,
#morgen-v6-root .mg6-review-card__kicker {
  margin-bottom: 12px;
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-ui);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .11em;
  line-height: 1.35;
  text-transform: uppercase;
}
#morgen-v6-root .mg6-decision-panel__main > h3 { max-width: 760px; margin-bottom: var(--mg6-space-md); font-size: var(--mg6-text-xl); }
#morgen-v6-root .mg6-decision-panel__main > p:not(.mg6-decision-panel__label) { max-width: 800px; margin-bottom: 0; font-size: var(--mg6-text-md); }
#morgen-v6-root .mg6-decision-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: clamp(28px, 4vw, 48px);
}
#morgen-v6-root .mg6-decision-points > div {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--mg6-surface-line);
  border-radius: var(--mg6-radius-md);
  background: var(--mg6-surface-warm);
}
#morgen-v6-root .mg6-decision-points span {
  display: inline-flex;
  margin-bottom: 14px;
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-heading);
  font-size: var(--mg6-text-sm);
  font-weight: var(--mg6-weight-bold);
}
#morgen-v6-root .mg6-decision-points strong { display: block; margin-bottom: 7px; color: var(--mg6-ink); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-decision-points p { margin: 0; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-review-card--integrated,
#morgen-v6-root .mg6-quote-card--integrated {
  align-self: stretch;
  min-width: 0;
  margin: 0;
  padding: clamp(34px, 4vw, 56px);
  border: 0;
  border-left: 1px solid var(--mg6-surface-line);
  border-radius: 0;
  background: linear-gradient(180deg, var(--mg6-surface-warm) 0%, rgba(var(--mg6-amber-rgb), .035) 100%);
  box-shadow: none;
}
#morgen-v6-root .mg6-review-card--integrated { border-top: 0; }
#morgen-v6-root .mg6-review-card--integrated h3 { margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-review-card--integrated ul { margin-bottom: var(--mg6-space-xl); }
#morgen-v6-root .mg6-review-card--integrated li { padding-left: 4px; color: var(--mg6-ink-mid); }
#morgen-v6-root .mg6-review-card--integrated li + li { margin-top: 12px; }
#morgen-v6-root .mg6-review-card--integrated > p:not(.mg6-review-card__kicker) { margin-bottom: var(--mg6-space-lg); }
#morgen-v6-root .mg6-quote-card--integrated { display: grid; align-content: center; }
#morgen-v6-root .mg6-quote-card--integrated blockquote { margin-bottom: var(--mg6-space-lg); color: var(--mg6-ink); font-family: var(--mg6-font-heading); font-size: clamp(22px, 2.2vw, 31px); font-weight: var(--mg6-weight-semibold); line-height: var(--mg6-leading-snug); }
#morgen-v6-root .mg6-quote-card--integrated > p:last-child { margin-bottom: 0; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); }
#morgen-v6-root .mg6-decision-panel--product::after { border-color: rgba(var(--mg6-dark-rgb), .055); }
#morgen-v6-root .mg6-decision-panel--hammer .mg6-decision-panel__head { background: linear-gradient(135deg, rgba(var(--mg6-dark-rgb), .055) 0%, rgba(var(--mg6-amber-rgb), .045) 58%, var(--mg6-surface) 100%); }
#morgen-v6-root .mg6-decision-panel--quality .mg6-decision-panel__head { background: linear-gradient(135deg, rgba(var(--mg6-amber-rgb), .045) 0%, #fff 66%); }

/* V6 header ghost-space hardening
 * The outer sticky header deliberately has no intrinsic height. The inner row
 * is the single height source at every breakpoint, preventing the critical
 * 96px desktop minimum from leaving a blank strip below the 76px mobile row.
 */
/* 15. RESPONSIVE */
@media (max-width: 1320px) and (min-width: 1201px) {
  #morgen-v6-root .mg6-sitebar__inner { grid-template-columns: minmax(210px, 230px) minmax(0, 1fr) auto; gap: 12px; }
  #morgen-v6-root .mg6-logo { width: min(224px, 100%); }
  #morgen-v6-root .mg6-nav__link { padding-inline: 6px; }
}

@media (max-width: 1200px) {
  #morgen-v6-root .mg6-shell { width: calc(100% - 40px); }
  #morgen-v6-root .mg6-sitebar__inner { grid-template-columns: minmax(205px, 232px) minmax(0, 1fr) auto; min-height: 84px; }
  #morgen-v6-root .mg6-nav { display: none; }
  #morgen-v6-root .mg6-menu-toggle { display: inline-flex; justify-self: end; }
  #morgen-v6-root .mg6-sitebar__tools { justify-self: end; }
}

@media (max-width: 1000px) {
  #morgen-v6-root .mg6-home-family-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-media-grid,
  #morgen-v6-root .mg6-showcase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-testimonial-card { grid-template-columns: minmax(220px, 0.68fr) minmax(0, 1.32fr); }
  #morgen-v6-root .mg6-card-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-family-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-brand-tiers { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-product-hero__grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-product-hero__media { max-width: 720px; }
  #morgen-v6-root .mg6-selection-panel__head,
  #morgen-v6-root .mg6-selection-panel__body { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-selection-panel__intro > p { max-width: 760px; }
}

@media (max-width: 900px) {
  #morgen-v6-root .mg6-shell { width: calc(100% - 40px); }
  #morgen-v6-root .mg6-section,
  #morgen-v6-root .mg6-card-section { padding: var(--mg6-space-2xl) 0; }
  #morgen-v6-root .mg6-feature-band { padding: var(--mg6-space-2xl) 0; }
  #morgen-v6-root .mg6-card-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-highlight__panel,
  #morgen-v6-root .mg6-content-grid,
  #morgen-v6-root .mg6-contact-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-highlight__panel { min-height: 0; }
  #morgen-v6-root .mg6-highlight__visual,
  #morgen-v6-root .mg6-highlight__image { min-height: 420px; }
  #morgen-v6-root .mg6-highlight__content { padding: clamp(32px, 6vw, 56px); }
  #morgen-v6-root .mg6-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-application-review { grid-template-columns: 1fr; min-height: 0; }
  #morgen-v6-root .mg6-application-review__visual,
  #morgen-v6-root .mg6-application-review__image { min-height: 500px; }
  #morgen-v6-root .mg6-application-review__content { padding: clamp(32px, 6vw, 56px); }
  #morgen-v6-root .mg6-application-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-watch-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-doc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #morgen-v6-root .mg6-contact-aside { position: static; }
  #morgen-v6-root .mg6-footer__cta { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-cta-strip__inner { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-section-head,
  #morgen-v6-root .mg6-section-head--with-nav,
  #morgen-v6-root .mg6-section-head--split,
  #morgen-v6-root .mg6-banner__head,
  #morgen-v6-root .mg6-process-panel__head,
  #morgen-v6-root .mg6-why-panel__head,
  #morgen-v6-root .mg6-consultation__panel { grid-template-columns: 1fr; row-gap: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-section-body,
  #morgen-v6-root .mg6-section-head > .mg6-eyebrow,
  #morgen-v6-root .mg6-section-head > .mg6-section-head__title,
  #morgen-v6-root .mg6-section-head > .mg6-section-head__sub,
  #morgen-v6-root .mg6-section-head__copy,
  #morgen-v6-root .mg6-section-head__aside { grid-column: 1; grid-row: auto; }
  #morgen-v6-root .mg6-section-body > :only-child { grid-column: 1; }
  #morgen-v6-root .mg6-integrity-panel { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-integrity-panel__rail { padding-top: var(--mg6-space-lg); padding-left: 0; border-top: 1px solid var(--mg6-surface-line); border-left: 0; }
  #morgen-v6-root .mg6-why-list { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-process-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-testimonial-card { min-height: 390px; }
  #morgen-v6-root .mg6-testimonial-card__image { min-height: 390px; }
  #morgen-v6-root .mg6-testimonial-card__content { padding: clamp(28px, 4vw, 46px); }
  #morgen-v6-root .mg6-decision-panel__head,
  #morgen-v6-root .mg6-decision-panel__body { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-decision-panel__lede { max-width: none; justify-self: stretch; }
  #morgen-v6-root .mg6-review-card--integrated,
  #morgen-v6-root .mg6-quote-card--integrated { border-top: 1px solid var(--mg6-surface-line); border-left: 0; }
}


@media (max-width: 720px) {
  #morgen-v6-root .mg6-sitebar__inner { grid-template-columns: minmax(160px, 190px) minmax(0, 1fr) auto; min-height: 76px; gap: 10px; }
  #morgen-v6-root .mg6-logo { gap: 4px; padding-block: 7px; }
  #morgen-v6-root .mg6-logo__mark > svg,
  #morgen-v6-root .mg6-logo__mark > img { max-height: 35px; }
  #morgen-v6-root .mg6-logo__mark > .mg-logo-raster { height: 35px; max-height: 35px; }
  #morgen-v6-root .mg6-logo-tagline { font-size: 9px; }
  #morgen-v6-root .mg6-quick { width: 42px; padding: 0; justify-content: center; }
  #morgen-v6-root .mg6-quick span { display: none; }
  #morgen-v6-root .mg6-language { display: none; }
  #morgen-v6-root .mg6-menu-toggle__label { display: none; }
  #morgen-v6-root .mg6-hero { min-height: 400px; aspect-ratio: 16 / 10; margin-top: var(--mg6-space-sm); border-radius: var(--mg6-radius-md, 12px); }
  #morgen-v6-root .mg6-hero__overlay-inner { width: calc(100% - 36px); }
  #morgen-v6-root .mg6-hero__copy { padding-bottom: 52px; }
  #morgen-v6-root .mg6-hero__control { top: auto; bottom: 14px; width: 38px; height: 38px; transform: none; }
  #morgen-v6-root .mg6-hero__prev { left: 12px; }
  #morgen-v6-root .mg6-hero__next { right: 12px; }
  #morgen-v6-root .mg6-hero__dots { bottom: 26px; }
  #morgen-v6-root .mg6-family-card { grid-template-columns: 120px 1fr; }
  #morgen-v6-root .mg6-process-list > div { grid-template-columns: 48px 1fr; }
  #morgen-v6-root .mg6-process-list > div p { grid-column: 2; }
  #morgen-v6-root .mg6-doc-toolbar { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-form__grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-field--full { grid-column: auto; }
}

@media (max-width: 600px) {
  #morgen-v6-root .mg6-home-family-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-home-family-card { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-shell { width: calc(100% - 24px); }
  #morgen-v6-root .mg6-card-grid--3,
  #morgen-v6-root .mg6-card-grid--4,
  #morgen-v6-root .mg6-family-grid,
  #morgen-v6-root .mg6-stat-grid,
  #morgen-v6-root .mg6-watch-grid,
  #morgen-v6-root .mg6-doc-grid,
  #morgen-v6-root .mg6-brand-grid,
  #morgen-v6-root .mg6-footer__grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-hero { width: calc(100% - 24px); min-height: 480px; aspect-ratio: auto; margin-top: var(--mg6-space-xs); border-radius: var(--mg6-radius-md, 12px); }
  #morgen-v6-root .mg6-hero__overlay-inner { width: calc(100% - 24px); }
  #morgen-v6-root .mg6-hero__copy { max-width: 100%; padding-bottom: 48px; }
  #morgen-v6-root .mg6-hero__title { font-size: clamp(30px, 9vw, 44px); }
  #morgen-v6-root .mg6-hero__sub { font-size: var(--mg6-text-base); }
  #morgen-v6-root .mg6-hero__actions { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-hero__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-section-head--with-nav { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-media-grid,
  #morgen-v6-root .mg6-showcase-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-why-panel { padding: var(--mg6-space-xl); }
  #morgen-v6-root .mg6-why-list article { grid-template-columns: 42px minmax(0, 1fr); gap: var(--mg6-space-md); min-height: 0; padding: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-why-list article > span { width: 40px; height: 40px; }
  #morgen-v6-root .mg6-testimonial-controls { width: 100%; justify-content: space-between; }
  #morgen-v6-root .mg6-testimonial-count { text-align: left; }
  #morgen-v6-root .mg6-testimonial-card { grid-template-columns: 1fr; min-height: 0; }
  #morgen-v6-root .mg6-testimonial-card__image { min-height: 0; aspect-ratio: 16/10; }
  #morgen-v6-root .mg6-testimonial-card__content { padding: var(--mg6-space-xl); }
  #morgen-v6-root .mg6-testimonial-card blockquote p { font-size: clamp(23px, 7vw, 34px); }
  #morgen-v6-root .mg6-testimonial-card__quote-mark { top: 10px; right: 20px; font-size: 104px; }
  #morgen-v6-root .mg6-highlight__visual,
  #morgen-v6-root .mg6-highlight__image { min-height: 340px; }
  #morgen-v6-root .mg6-highlight__badge { right: var(--mg6-space-md); bottom: var(--mg6-space-md); left: var(--mg6-space-md); padding: 16px 18px; }
  #morgen-v6-root .mg6-highlight__content { padding: var(--mg6-space-xl) var(--mg6-space-lg); }
  #morgen-v6-root .mg6-highlight__metrics { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-highlight__metrics > div { grid-template-columns: 64px minmax(0, 1fr); align-items: center; padding: 14px 0; }
  #morgen-v6-root .mg6-highlight__metrics > div + div { padding-left: 0; border-top: 1px solid var(--mg6-surface-line); border-left: 0; }
  #morgen-v6-root .mg6-highlight__metrics strong { font-size: 32px; }
  #morgen-v6-root .mg6-highlight__actions { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-highlight__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-application-review__visual,
  #morgen-v6-root .mg6-application-review__image { min-height: 390px; }
  #morgen-v6-root .mg6-application-review__caption { right: var(--mg6-space-lg); bottom: var(--mg6-space-lg); left: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-application-review__caption > strong { font-size: clamp(24px, 8vw, 34px); }
  #morgen-v6-root .mg6-application-review__caption ul { gap: 6px; }
  #morgen-v6-root .mg6-application-review__caption li { padding: 6px 9px; font-size: 10px; }
  #morgen-v6-root .mg6-application-review__content { padding: var(--mg6-space-xl) var(--mg6-space-lg); }
  #morgen-v6-root .mg6-application-review__steps { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-application-review__steps li { grid-template-columns: 44px minmax(0, 1fr); padding: 18px; }
  #morgen-v6-root .mg6-application-review__footer { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-application-review__footer .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-integrity-panel { padding: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-family-card { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-family-card__media { aspect-ratio: 16 / 8; }
  #morgen-v6-root .mg6-feature-band { padding: var(--mg6-space-xl) 0; }
  #morgen-v6-root .mg6-selection-panel__head,
  #morgen-v6-root .mg6-selection-panel__main,
  #morgen-v6-root .mg6-selection-panel__rail { padding: var(--mg6-space-xl) var(--mg6-space-lg); }
  #morgen-v6-root .mg6-selection-panel__title { font-size: clamp(30px, 10vw, 42px); }
  #morgen-v6-root .mg6-selection-inputs { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-selection-inputs > div:nth-child(odd),
  #morgen-v6-root .mg6-selection-inputs > div:nth-child(even) { min-height: 0; background: var(--mg6-surface); }
  #morgen-v6-root .mg6-selection-inputs > div:nth-child(even) { background: var(--mg6-surface-warm); }
  #morgen-v6-root .mg6-selection-panel__actions { align-items: stretch; flex-direction: column; }
  #morgen-v6-root .mg6-selection-panel__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-application-card { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-spec-grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-footer__social { align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-footer__bottom { flex-direction: column; }
  #morgen-v6-root .mg6-decision-panel { border-radius: var(--mg6-radius-md); }
  #morgen-v6-root .mg6-decision-panel__head,
  #morgen-v6-root .mg6-decision-panel__main,
  #morgen-v6-root .mg6-review-card--integrated,
  #morgen-v6-root .mg6-quote-card--integrated { padding: var(--mg6-space-xl) var(--mg6-space-lg); }
  #morgen-v6-root .mg6-decision-points { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-decision-points > div { padding: 18px; }
  #morgen-v6-root .mg6-btn--pill { padding-inline: var(--mg6-space-lg); }
}

/* 16. REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root *,
  #morgen-v6-root *::before,
  #morgen-v6-root *::after { scroll-behavior: auto; animation-duration: 0.01ms; animation-iteration-count: 1; transition-duration: 0.01ms; }
  #morgen-v6-root .mg6-hero__slide,
  #morgen-v6-root .mg6-btn,
  #morgen-v6-root .mg6-card,
  #morgen-v6-root .mg6-application-review__steps li { transition: none; }
  #morgen-v6-root .mg6-brand-marquee__track { animation: none; }
}

/* 17. PRINT */
@media print {
  #morgen-v6-root .mg6-sitebar,
  #morgen-v6-root .mg6-footer__cta,
  #morgen-v6-root .mg6-hero__control,
  #morgen-v6-root .mg6-hero__dots,
  #morgen-v6-root .mg6-btn,
  #morgen-v6-root .mg6-drawer,
  #morgen-v6-root .mg6-drawer-backdrop { display: none; }
  #morgen-v6-root .mg6-hero { min-height: 0; aspect-ratio: auto; color: #000; }
  #morgen-v6-root .mg6-hero__slide { position: static; display: none; opacity: 1; visibility: visible; transform: none; }
  #morgen-v6-root .mg6-hero__slide.is-active { display: block; }
  #morgen-v6-root .mg6-hero__media { position: static; }
  #morgen-v6-root .mg6-hero__overlay { position: static; background: #fff; color: #000; }
  #morgen-v6-root .mg6-hero__title,
  #morgen-v6-root .mg6-hero__sub { color: #000; }
  #morgen-v6-root .mg6-section,
  #morgen-v6-root .mg6-card-section { padding: 28px 0; }
}

/* V6 typography contract: Heebo for headings, copy, and controls. */
#morgen-v6-root :where(a, button, input, select, textarea, label, li, dt, dd, small, span) { font-family: var(--mg6-font-body); }
#morgen-v6-root :where(h1, h2, h3, h4, h5, h6) { font-family: var(--mg6-font-heading); }

/* V6 parent-menu SVG disclosures, smart pages, and editorial 404 */
#morgen-v6-root .mg6-nav__parent { display: flex; align-items: stretch; min-height: var(--mg6-header-height,84px); }
#morgen-v6-root .mg6-nav__parent > .mg6-nav__link { padding-right: 5px; }
#morgen-v6-root .mg6-nav__toggle { display: inline-grid; place-items: center; width: 25px; min-height: var(--mg6-header-height,84px); margin: 0 3px 0 -3px; padding: 0; border: 0; background: transparent; color: var(--mg6-ink-mid); cursor: pointer; }
#morgen-v6-root .mg6-nav__link--button { gap: 5px; }
#morgen-v6-root .mg6-nav__chevron { width: 14px; height: 14px; overflow: visible; transition: transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-nav__chevron path { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
#morgen-v6-root .mg6-nav__item--has-children:hover .mg6-nav__chevron,
#morgen-v6-root .mg6-nav__item--has-children:focus-within .mg6-nav__chevron,
#morgen-v6-root .mg6-nav__item--has-children.is-open .mg6-nav__chevron,
#morgen-v6-root [data-mg6-nav-group][aria-expanded="true"] .mg6-nav__chevron { transform: rotate(180deg); }
#morgen-v6-root .mg6-nav__toggle:hover,#morgen-v6-root .mg6-nav__toggle:focus-visible { color: var(--mg6-ink); }
#morgen-v6-root .mg6-nav__toggle:focus-visible { outline: 2px solid var(--mg6-amber); outline-offset: -5px; border-radius: 999px; }
#morgen-v6-root .mg6-drawer__group-toggle svg { width: 16px; height: 16px; transition: transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-drawer__group-toggle svg path { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#morgen-v6-root .mg6-drawer__group-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
#morgen-v6-root .mg6-native-page { padding: clamp(64px,8vw,118px) 0; background: #fff; }
#morgen-v6-root .mg6-native-page__head { display: grid; grid-template-columns: minmax(0,1.18fr) minmax(320px,.82fr); gap: clamp(42px,8vw,120px); align-items: end; }
#morgen-v6-root .mg6-native-page__title-block h1 { max-width: 880px; font-size: clamp(48px,6.2vw,88px); line-height: .98; }
#morgen-v6-root .mg6-native-page__intro > p { margin: 0 0 28px; color: var(--mg6-ink-mid); font-size: var(--mg6-text-md); line-height: var(--mg6-leading-loose); }
#morgen-v6-root .mg6-native-page__intro dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border-top: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-native-page__intro dl div { padding: 14px 0; border-bottom: 1px solid var(--mg6-surface-line); }
#morgen-v6-root .mg6-native-page__intro dt { color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
#morgen-v6-root .mg6-native-page__intro dd { margin: 4px 0 0; color: var(--mg6-ink); font-weight: 650; }
#morgen-v6-root .mg6-native-page__rule { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px; margin: 52px 0 44px; }
#morgen-v6-root .mg6-native-page__rule span { height: 1px; background: var(--mg6-surface-line); }
#morgen-v6-root .mg6-native-page__rule b { color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); letter-spacing: .12em; }
#morgen-v6-root .mg6-native-page__layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,330px); gap: clamp(42px,7vw,100px); align-items: start; }
#morgen-v6-root .mg6-native-page__content { min-width: 0; max-width: 860px; }
#morgen-v6-root .mg6-native-page__rail { position: sticky; top: 112px; padding-top: 4px; }
#morgen-v6-root .mg6-native-page__rail nav { display: grid; margin-top: 18px; border-top: 2px solid var(--mg6-amber); }
#morgen-v6-root .mg6-native-page__rail nav a { display: grid; grid-template-columns: 1fr 22px; gap: 12px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--mg6-surface-line); color: var(--mg6-ink); font-weight: 650; }
#morgen-v6-root .mg6-native-page__rail svg,#morgen-v6-root .mg6-not-found__indexes svg { width: 20px; height: 20px; }
#morgen-v6-root .mg6-native-page__rail svg path,#morgen-v6-root .mg6-not-found__indexes svg path { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
#morgen-v6-root .mg6-wp-content { color: var(--mg6-ink-mid); font-size: clamp(17px,1.3vw,20px); line-height: 1.82; }
#morgen-v6-root .mg6-wp-content > :first-child { margin-top: 0; }
#morgen-v6-root .mg6-wp-content > :last-child { margin-bottom: 0; }
#morgen-v6-root .mg6-wp-content :where(h2,h3,h4) { margin: 1.8em 0 .65em; color: var(--mg6-ink); }
#morgen-v6-root .mg6-wp-content :where(p,ul,ol,blockquote,figure,table,.wp-block-group,.wp-block-columns) { margin-block: 0 1.45rem; }
#morgen-v6-root .mg6-wp-content :where(ul,ol) { padding-left: 1.4rem; }
#morgen-v6-root .mg6-wp-content a { color: var(--mg6-ink); text-decoration-color: var(--mg6-amber); text-decoration-thickness: 2px; text-underline-offset: 4px; }
#morgen-v6-root .mg6-wp-content blockquote { margin-left: 0; padding: 22px 26px; border-left: 4px solid var(--mg6-amber); background: var(--mg6-amber-soft); color: var(--mg6-ink); font-family: var(--mg6-font-heading); font-size: 1.2em; }
#morgen-v6-root .mg6-wp-content img { height: auto; }
#morgen-v6-root .mg6-wp-content table { width: 100%; border-collapse: collapse; font-size: .9em; }
#morgen-v6-root .mg6-wp-content th,#morgen-v6-root .mg6-wp-content td { padding: 13px; border: 1px solid var(--mg6-surface-line); text-align: left; }
/* V6 404 composition hardening */
#morgen-v6-root .mg6-not-found {
  padding: clamp(54px, 7vw, 104px) 0 clamp(68px, 8vw, 118px);
  background:
    radial-gradient(circle at 88% 8%, rgba(var(--mg6-amber-rgb), .14), transparent 28%),
    linear-gradient(180deg, var(--mg6-surface) 0%, var(--mg6-surface-warm) 100%);
}
#morgen-v6-root .mg6-not-found a { text-decoration: none; text-decoration-line: none; }
#morgen-v6-root .mg6-not-found__panel {
  display: grid;
  grid-template-columns: minmax(170px, .44fr) minmax(0, 1.2fr) minmax(280px, .68fr);
  gap: clamp(30px, 5vw, 76px);
  align-items: center;
  padding: clamp(34px, 5vw, 72px);
  border: 1px solid rgba(var(--mg6-surface-rgb), .12);
  background: var(--mg6-dark);
  color: var(--mg6-on-dark);
  box-shadow: 0 30px 70px rgba(var(--mg6-ink-rgb), .13);
  overflow: hidden;
  position: relative;
}
#morgen-v6-root .mg6-not-found__panel::after {
  position: absolute;
  right: -90px;
  bottom: -130px;
  width: 360px;
  height: 360px;
  border: 52px solid rgba(var(--mg6-amber-rgb), .09);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}
#morgen-v6-root .mg6-not-found__code,
#morgen-v6-root .mg6-not-found__copy,
#morgen-v6-root .mg6-not-found__note { position: relative; z-index: 1; min-width: 0; }
#morgen-v6-root .mg6-not-found__code { display: grid; align-content: center; justify-items: start; gap: 14px; }
#morgen-v6-root .mg6-not-found__code > span {
  color: var(--mg6-on-dark);
  font-family: var(--mg6-font-display);
  font-size: clamp(82px, 10.5vw, 154px);
  font-weight: var(--mg6-weight-black);
  line-height: .78;
  letter-spacing: -.065em;
}
#morgen-v6-root .mg6-not-found__code > small {
  color: rgba(var(--mg6-surface-rgb), .60);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .12em;
  line-height: 1.35;
  text-transform: uppercase;
}
#morgen-v6-root .mg6-not-found__copy h1 {
  max-width: 720px;
  margin-bottom: var(--mg6-space-lg);
  color: var(--mg6-on-dark);
  font-size: clamp(40px, 4.8vw, 68px);
}
#morgen-v6-root .mg6-not-found__copy > p:not(.mg6-eyebrow) {
  max-width: 700px;
  margin-bottom: 0;
  color: rgba(var(--mg6-surface-rgb), .72);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}
#morgen-v6-root .mg6-not-found .mg6-error__actions { justify-content: flex-start; margin-top: var(--mg6-space-xl); }
#morgen-v6-root .mg6-not-found__note {
  padding: clamp(24px, 3vw, 34px);
  border-top: 3px solid var(--mg6-amber);
  background: rgba(var(--mg6-surface-rgb), .07);
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-surface-rgb), .10);
}
#morgen-v6-root .mg6-not-found__note-kicker {
  margin: 0 0 10px;
  color: rgba(var(--mg6-surface-rgb), .62);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .11em;
  text-transform: uppercase;
}
#morgen-v6-root .mg6-not-found__note h2 { margin-bottom: 14px; color: var(--mg6-on-dark); font-size: var(--mg6-text-lg); }
#morgen-v6-root .mg6-not-found__note > p:not(.mg6-not-found__note-kicker) { margin: 0; color: rgba(var(--mg6-surface-rgb), .68); font-size: var(--mg6-text-sm); line-height: 1.68; }
#morgen-v6-root .mg6-not-found__note dl { display: grid; gap: 0; margin: 24px 0 0; border-top: 1px solid rgba(var(--mg6-surface-rgb), .14); }
#morgen-v6-root .mg6-not-found__note dl > div { display: grid; grid-template-columns: minmax(90px, .72fr) 1fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid rgba(var(--mg6-surface-rgb), .14); }
#morgen-v6-root .mg6-not-found__note dt { color: rgba(var(--mg6-surface-rgb), .52); font-size: var(--mg6-text-xs); text-transform: uppercase; letter-spacing: .07em; }
#morgen-v6-root .mg6-not-found__note dd { margin: 0; color: var(--mg6-on-dark); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); text-align: right; }
#morgen-v6-root .mg6-not-found__indexes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: clamp(18px, 2vw, 28px);
}
#morgen-v6-root .mg6-not-found__indexes a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 22px;
  gap: 14px;
  align-items: start;
  min-height: 156px;
  padding: clamp(22px, 2.4vw, 30px);
  border: 1px solid var(--mg6-surface-line);
  border-top: 3px solid var(--mg6-amber);
  background: var(--mg6-surface);
  color: var(--mg6-ink);
  box-shadow: 0 14px 34px rgba(var(--mg6-ink-rgb), .055);
  transition: transform var(--mg6-duration-base) var(--mg6-ease), border-color var(--mg6-duration-base) var(--mg6-ease), box-shadow var(--mg6-duration-base) var(--mg6-ease);
}
#morgen-v6-root .mg6-not-found__indexes a:hover {
  border-color: rgba(var(--mg6-amber-rgb), .52);
  box-shadow: 0 20px 44px rgba(var(--mg6-ink-rgb), .10);
  transform: translateY(-3px);
}
#morgen-v6-root .mg6-not-found__indexes a:focus-visible { outline: 3px solid var(--mg6-focus-ring); outline-offset: 3px; }
#morgen-v6-root .mg6-not-found__index { color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-black); }
#morgen-v6-root .mg6-not-found__index-copy { display: block; min-width: 0; }
#morgen-v6-root .mg6-not-found__index-copy strong,
#morgen-v6-root .mg6-not-found__index-copy small { display: block; text-decoration: none; }
#morgen-v6-root .mg6-not-found__index-copy strong { color: var(--mg6-ink); font-size: var(--mg6-text-base); line-height: 1.35; }
#morgen-v6-root .mg6-not-found__index-copy small { margin-top: 8px; color: var(--mg6-ink-muted); font-size: var(--mg6-text-sm); line-height: 1.55; }
#morgen-v6-root .mg6-not-found__indexes svg { align-self: center; transition: transform var(--mg6-duration-base) var(--mg6-ease); }
#morgen-v6-root .mg6-not-found__indexes a:hover svg { transform: translateX(3px); }

@media (max-width: 1100px) {
  #morgen-v6-root .mg6-not-found__panel { grid-template-columns: minmax(150px, .34fr) minmax(0, 1fr); }
  #morgen-v6-root .mg6-not-found__note { grid-column: 1 / -1; }
}
@media (max-width: 1000px) {
  #morgen-v6-root .mg6-native-page__head,
  #morgen-v6-root .mg6-native-page__layout { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-native-page__rail { position: static; }
  #morgen-v6-root .mg6-not-found__indexes { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-not-found__indexes a { min-height: 0; }
}
@media (max-width: 720px) {
  #morgen-v6-root .mg6-not-found__panel { grid-template-columns: 1fr; padding: 30px 24px; }
  #morgen-v6-root .mg6-not-found__note { grid-column: auto; }
  #morgen-v6-root .mg6-not-found__code { gap: 10px; }
  #morgen-v6-root .mg6-not-found__code > span { font-size: clamp(76px, 26vw, 112px); }
  #morgen-v6-root .mg6-not-found .mg6-error__actions { align-items: stretch; flex-direction: column; }
  #morgen-v6-root .mg6-not-found .mg6-error__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-not-found__note dl > div { grid-template-columns: 1fr; gap: 4px; }
  #morgen-v6-root .mg6-not-found__note dd { text-align: left; }
}
@media (max-width: 640px) {
  #morgen-v6-root .mg6-native-page__intro dl { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-native-page__rule { margin-block: 34px 28px; }
  #morgen-v6-root .mg6-not-found__indexes a { grid-template-columns: 30px minmax(0, 1fr) 20px; padding: 21px 18px; }
}

/* V6 unified page-header and product-media refinement */
#morgen-v6-root .mg6-banner,
#morgen-v6-root .mg6-banner--image,
#morgen-v6-root .mg6-banner--quality {
  position: relative;
  display: block;
  min-height: 0;
  padding: clamp(64px, 7vw, 108px) 0;
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid var(--mg6-surface-line);
  background:
    radial-gradient(circle at 82% 16%, rgba(var(--mg6-amber-rgb), .14), transparent 28%),
    linear-gradient(112deg, var(--mg6-surface) 0%, var(--mg6-surface) 44%, var(--mg6-amber-soft) 100%);
  color: var(--mg6-ink);
}
#morgen-v6-root .mg6-banner::after {
  content: "";
  position: absolute;
  top: 0;
  right: clamp(28px, 4vw, 64px);
  z-index: 3;
  width: clamp(54px, 7vw, 108px);
  height: 3px;
  background: var(--mg6-amber);
}
#morgen-v6-root .mg6-banner__media,
#morgen-v6-root .mg6-banner__shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
#morgen-v6-root .mg6-banner__media {
  z-index: 0;
  overflow: hidden;
  background: var(--mg6-surface-warm);
  opacity: .16;
  mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 34%, #000 68%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, transparent 34%, #000 68%, #000 100%);
}
#morgen-v6-root .mg6-banner__media img,
#morgen-v6-root .mg6-banner__image {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  filter: saturate(.86) contrast(1.04);
  transform: none;
}
#morgen-v6-root .mg6-banner__shade {
  z-index: 1;
  background: linear-gradient(90deg, var(--mg6-surface) 0%, rgba(var(--mg6-surface-rgb), .98) 42%, rgba(var(--mg6-surface-rgb), .56) 76%, rgba(var(--mg6-surface-rgb), .32) 100%);
}
#morgen-v6-root .mg6-banner__inner,
#morgen-v6-root .mg6-banner--quality .mg6-banner__inner {
  position: relative;
  z-index: 2;
  width: var(--mg6-shell-width);
  padding-block: 0;
}
#morgen-v6-root .mg6-banner__head,
#morgen-v6-root .mg6-banner--quality .mg6-banner__head {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .72fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: start;
}
#morgen-v6-root .mg6-banner__heading h1,
#morgen-v6-root .mg6-banner--quality .mg6-banner__heading h1 {
  max-width: 900px;
  margin-bottom: 0;
  color: var(--mg6-ink);
  text-shadow: none;
}
#morgen-v6-root .mg6-banner h1 em,
#morgen-v6-root .mg6-banner--quality h1 em {
  color: var(--mg6-amber);
  font-style: normal;
}
#morgen-v6-root .mg6-banner__lede,
#morgen-v6-root .mg6-banner--image .mg6-banner__lede,
#morgen-v6-root .mg6-banner--quality .mg6-banner__lede {
  align-self: start;
  justify-self: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--mg6-ink-muted);
  box-shadow: none;
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
  backdrop-filter: none;
}
#morgen-v6-root .mg6-banner .mg6-breadcrumbs,
#morgen-v6-root .mg6-banner--image .mg6-breadcrumbs,
#morgen-v6-root .mg6-banner--quality .mg6-breadcrumbs,
#morgen-v6-root .mg6-banner .mg6-eyebrow,
#morgen-v6-root .mg6-banner--image .mg6-eyebrow,
#morgen-v6-root .mg6-banner--quality .mg6-eyebrow {
  color: var(--mg6-ink-muted);
}

/* Requested Quality & Testing media formula: token-backed warm surface + color-burn. */
#morgen-v6-root .mg6-banner--quality .mg6-banner__media {
  background: var(--mg6-surface-warm);
  mix-blend-mode: color-burn;
  opacity: .48;
}
#morgen-v6-root .mg6-banner--quality .mg6-banner__image {
  object-position: 68% center;
  filter: saturate(.92) contrast(1.02) brightness(1.08);
}
#morgen-v6-root .mg6-banner--quality .mg6-banner__shade {
  background:
    linear-gradient(90deg, var(--mg6-surface) 0%, rgba(var(--mg6-surface-rgb), .99) 43%, rgba(var(--mg6-surface-rgb), .72) 70%, rgba(var(--mg6-surface-rgb), .36) 100%),
    linear-gradient(180deg, transparent 0%, rgba(var(--mg6-amber-rgb), .05) 100%);
}

/* Product pages now use the shared page header; the product visual sits in a dedicated stage below it. */
#morgen-v6-root .mg6-product-stage {
  padding: clamp(34px, 4vw, 62px) 0 clamp(72px, 8vw, 112px);
  background: var(--mg6-surface);
}
#morgen-v6-root .mg6-product-stage__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(330px, .8fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: stretch;
}
#morgen-v6-root .mg6-product-stage__media {
  position: relative;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  align-self: stretch;
  width: 100%;
  height: 100%;
  min-width: 0;
  margin: 0;
  border: 1px solid var(--mg6-surface-line);
  background:
    linear-gradient(135deg, rgba(var(--mg6-amber-rgb), .07), transparent 38%),
    var(--mg6-surface-warm);
  box-shadow: 0 28px 70px -52px rgba(var(--mg6-ink-rgb), .46);
  isolation: isolate;
  overflow: hidden;
}
#morgen-v6-root .mg6-product-stage__media::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: clamp(72px, 9vw, 132px);
  height: 4px;
  background: var(--mg6-amber);
}
#morgen-v6-root .mg6-product-stage__image-wrap {
  display: grid;
  width: 100%;
  height: 100%;
  min-height: clamp(390px, 42vw, 650px);
  place-items: center;
  padding: clamp(28px, 5vw, 72px);
  background:
    radial-gradient(circle at 50% 52%, rgba(var(--mg6-surface-rgb), .96) 0%, rgba(var(--mg6-surface-rgb), .78) 34%, transparent 70%),
    linear-gradient(145deg, var(--mg6-surface-warm), var(--mg6-surface));
  overflow: hidden;
}
#morgen-v6-root .mg6-product-stage__image-wrap img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
#morgen-v6-root .mg6-product-stage__media figcaption {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  gap: 18px;
  padding: 17px clamp(20px, 3vw, 34px);
  border-top: 1px solid var(--mg6-surface-line);
  background: var(--mg6-surface);
}
#morgen-v6-root .mg6-product-stage__media figcaption span {
  color: var(--mg6-ink-muted);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .1em;
  text-transform: uppercase;
}
#morgen-v6-root .mg6-product-stage__media figcaption strong {
  color: var(--mg6-ink);
  font-size: var(--mg6-text-sm);
  text-align: right;
}
#morgen-v6-root .mg6-product-stage__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px, 4vw, 58px);
  border: 1px solid var(--mg6-surface-line);
  border-top: 4px solid var(--mg6-amber);
  background: var(--mg6-surface);
  box-shadow: 0 28px 70px -56px rgba(var(--mg6-ink-rgb), .52);
}
#morgen-v6-root .mg6-product-stage__panel h2 { margin-bottom: var(--mg6-space-md); }
#morgen-v6-root .mg6-product-stage__panel > p:not(.mg6-eyebrow) { margin-bottom: var(--mg6-space-xl); font-size: var(--mg6-text-md); line-height: var(--mg6-leading-loose); }
#morgen-v6-root .mg6-product-stage__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: var(--mg6-space-xl); }
#morgen-v6-root .mg6-product-stage__trust { display: grid; gap: 0; margin: 0; padding: 0; border-top: 1px solid var(--mg6-surface-line); list-style: none; }
#morgen-v6-root .mg6-product-stage__trust li {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 15px 0;
  border-bottom: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-product-stage__trust span { color: var(--mg6-amber-deep); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-black); }
#morgen-v6-root .mg6-product-stage__trust strong { color: var(--mg6-ink); font-size: var(--mg6-text-sm); }

/* Native WordPress pages inherit the same V6 header automatically. */
#morgen-v6-root .mg6-native-page--content { padding: 0 0 clamp(72px, 8vw, 116px); background: var(--mg6-surface); }
#morgen-v6-root .mg6-native-page--content .mg6-native-page__rule { margin-block: 0 28px; padding-top: clamp(34px, 5vw, 62px); }
#morgen-v6-root .mg6-native-page__meta { display: flex; justify-content: flex-end; margin-bottom: clamp(28px, 4vw, 52px); }
#morgen-v6-root .mg6-native-page__meta dl { display: grid; grid-template-columns: repeat(2, minmax(130px, auto)); gap: 10px; margin: 0; }
#morgen-v6-root .mg6-native-page__meta dl > div { padding: 12px 16px; border: 1px solid var(--mg6-surface-line); background: var(--mg6-surface-warm); }
#morgen-v6-root .mg6-native-page__meta dt { color: var(--mg6-ink-muted); font-size: var(--mg6-text-xs); font-weight: var(--mg6-weight-bold); letter-spacing: .08em; text-transform: uppercase; }
#morgen-v6-root .mg6-native-page__meta dd { margin: 4px 0 0; color: var(--mg6-ink); font-size: var(--mg6-text-sm); font-weight: var(--mg6-weight-semibold); }

@media (max-width: 1000px) {
  #morgen-v6-root .mg6-product-stage__grid { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-product-stage__grid { align-items: start; }
  #morgen-v6-root .mg6-product-stage__media { height: auto; }
  #morgen-v6-root .mg6-product-stage__image-wrap { min-height: clamp(360px, 66vw, 580px); }
  #morgen-v6-root .mg6-product-stage__panel { padding: clamp(28px, 6vw, 52px); }
}
@media (max-width: 900px) {
  #morgen-v6-root .mg6-banner,
  #morgen-v6-root .mg6-banner--image,
  #morgen-v6-root .mg6-banner--quality { padding: clamp(54px, 9vw, 82px) 0; }
  #morgen-v6-root .mg6-banner__head,
  #morgen-v6-root .mg6-banner--quality .mg6-banner__head { grid-template-columns: 1fr; row-gap: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-banner__lede,
  #morgen-v6-root .mg6-banner--image .mg6-banner__lede,
  #morgen-v6-root .mg6-banner--quality .mg6-banner__lede { max-width: 760px; }
  #morgen-v6-root .mg6-banner__media { opacity: .12; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 58%, #000 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 58%, #000 100%); }
  #morgen-v6-root .mg6-banner--quality .mg6-banner__media { opacity: .28; }
  #morgen-v6-root .mg6-banner__shade,
  #morgen-v6-root .mg6-banner--quality .mg6-banner__shade { background: linear-gradient(180deg, rgba(var(--mg6-surface-rgb), .98) 0%, rgba(var(--mg6-surface-rgb), .91) 62%, rgba(var(--mg6-surface-rgb), .72) 100%); }
}
@media (max-width: 640px) {
  #morgen-v6-root .mg6-banner,
  #morgen-v6-root .mg6-banner--image,
  #morgen-v6-root .mg6-banner--quality { padding: 48px 0 56px; }
  #morgen-v6-root .mg6-banner::after { right: 20px; width: 64px; }
  #morgen-v6-root .mg6-product-stage { padding: 24px 0 64px; }
  #morgen-v6-root .mg6-product-stage__image-wrap { min-height: clamp(280px, 76vw, 420px); padding: 24px; }
  #morgen-v6-root .mg6-product-stage__media figcaption { align-items: flex-start; flex-direction: column; gap: 6px; }
  #morgen-v6-root .mg6-product-stage__media figcaption strong { text-align: left; }
  #morgen-v6-root .mg6-product-stage__actions { align-items: stretch; flex-direction: column; }
  #morgen-v6-root .mg6-product-stage__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-native-page__meta { justify-content: stretch; }
  #morgen-v6-root .mg6-native-page__meta dl { width: 100%; grid-template-columns: 1fr; }
}

/* Product single/archive hardening: remove stretched media ghost space and keep visual cards stable. */
#morgen-v6-root .mg6-card--product {
  height: 100%;
  overflow: hidden;
  box-shadow: 0 22px 58px -50px rgba(var(--mg6-ink-rgb), .58);
}
#morgen-v6-root .mg6-card--product .mg6-card__media {
  position: relative;
  display: grid;
  aspect-ratio: 4 / 3;
  place-items: center;
  padding: clamp(18px, 2.4vw, 34px);
  border-bottom: 1px solid var(--mg6-surface-line);
  background:
    radial-gradient(circle at 50% 46%, rgba(var(--mg6-surface-rgb), .98) 0%, rgba(var(--mg6-surface-rgb), .88) 38%, transparent 72%),
    linear-gradient(145deg, var(--mg6-surface-warm), var(--mg6-surface));
}
#morgen-v6-root .mg6-card--product .mg6-card__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 3px;
  background: linear-gradient(90deg, var(--mg6-amber), rgba(var(--mg6-amber-rgb), .18));
}
#morgen-v6-root .mg6-card--product .mg6-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: scale(.96);
}
#morgen-v6-root .mg6-card--product:hover .mg6-card__media img {
  transform: scale(1.01);
}
#morgen-v6-root .mg6-card--product .mg6-card__text {
  margin-bottom: var(--mg6-space-lg);
}
#morgen-v6-root .mg6-card--product .mg6-text-link {
  margin-top: auto;
}

#morgen-v6-root .mg6-family-card--catalog {
  grid-template-columns: minmax(138px, .82fr) minmax(0, 1.18fr);
  height: 100%;
  min-height: 230px;
  box-shadow: 0 22px 58px -52px rgba(var(--mg6-ink-rgb), .54);
}
#morgen-v6-root .mg6-family-card--catalog .mg6-family-card__media {
  display: grid;
  min-width: 0;
  place-items: center;
  padding: clamp(16px, 2vw, 28px);
  border-right: 1px solid var(--mg6-surface-line);
  background:
    radial-gradient(circle at 50% 45%, rgba(var(--mg6-surface-rgb), .98), rgba(var(--mg6-surface-rgb), .76) 54%, transparent 76%),
    var(--mg6-surface-warm);
}
#morgen-v6-root .mg6-family-card--catalog .mg6-family-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: transform 500ms var(--mg6-ease);
}
#morgen-v6-root .mg6-family-card--catalog:hover .mg6-family-card__media img {
  transform: scale(1.025);
}
#morgen-v6-root .mg6-family-card--catalog .mg6-family-card__body {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
#morgen-v6-root .mg6-family-card--catalog .mg6-family-card__body > p:not(.mg6-family-card__count) {
  flex: 1;
}
#morgen-v6-root .mg6-family-card--catalog .mg6-text-link {
  margin-top: var(--mg6-space-md);
}

@media (max-width: 720px) {
  #morgen-v6-root .mg6-family-card--catalog {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  #morgen-v6-root .mg6-family-card--catalog .mg6-family-card__media {
    aspect-ratio: 16 / 9;
    border-right: 0;
    border-bottom: 1px solid var(--mg6-surface-line);
  }
}

/* Product evidence suite: construction, operating data, and standards share one compact production pattern. */
#morgen-v6-root .mg6-product-evidence {
  position: relative;
  padding: clamp(64px, 7vw, 104px) 0;
}
#morgen-v6-root .mg6-product-evidence--technical {
  background:
    linear-gradient(180deg, rgba(var(--mg6-surface-rgb), 1), rgba(249, 249, 249, .72)),
    var(--mg6-surface);
}
#morgen-v6-root .mg6-evidence-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--mg6-surface-line);
  border-radius: var(--mg6-radius-lg);
  background: var(--mg6-surface);
  box-shadow: 0 30px 80px -64px rgba(var(--mg6-ink-rgb), .58);
}
#morgen-v6-root .mg6-evidence-panel::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  z-index: 2;
  width: clamp(120px, 20vw, 300px);
  height: 4px;
  background: linear-gradient(90deg, var(--mg6-amber), rgba(var(--mg6-amber-rgb), .12));
}
#morgen-v6-root .mg6-evidence-panel__head {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr);
  gap: clamp(30px, 5vw, 82px);
  align-items: end;
  padding: clamp(30px, 4.5vw, 62px);
  border-bottom: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-evidence-panel__heading,
#morgen-v6-root .mg6-evidence-panel__summary { min-width: 0; }
#morgen-v6-root .mg6-evidence-panel__heading .mg6-eyebrow { margin-bottom: 14px; }
#morgen-v6-root .mg6-evidence-panel__heading h2 {
  max-width: 760px;
  margin: 0;
}
#morgen-v6-root .mg6-evidence-panel__summary {
  display: grid;
  justify-items: start;
  gap: 18px;
  padding-left: clamp(20px, 3vw, 42px);
  border-left: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-evidence-panel__summary p {
  max-width: 620px;
  margin: 0;
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}
#morgen-v6-root .mg6-evidence-panel__count {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 12px;
  border: 1px solid rgba(var(--mg6-amber-rgb), .34);
  border-radius: var(--mg6-radius-pill);
  background: rgba(var(--mg6-amber-rgb), .09);
  color: var(--mg6-amber-deep);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .075em;
  line-height: 1;
  text-transform: uppercase;
}

#morgen-v6-root .mg6-spec-grid--evidence {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  padding: 1px;
  background: var(--mg6-surface-line);
}
#morgen-v6-root .mg6-spec-card--evidence {
  min-height: 150px;
  padding: clamp(24px, 3vw, 40px);
  border: 0;
  background: var(--mg6-surface);
}
#morgen-v6-root .mg6-spec-card--evidence:last-child:nth-child(odd) { grid-column: 1 / -1; min-height: 0; }
#morgen-v6-root .mg6-spec-card--evidence dt { margin-bottom: 14px; }
#morgen-v6-root .mg6-spec-card--evidence dd {
  margin: 0;
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}

#morgen-v6-root .mg6-technical-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .65fr);
  align-items: stretch;
}
#morgen-v6-root .mg6-technical-list {
  display: grid;
  align-content: start;
  min-width: 0;
  margin: 0;
  border-right: 1px solid var(--mg6-surface-line);
  background: var(--mg6-surface);
}
#morgen-v6-root .mg6-technical-row {
  display: grid;
  grid-template-columns: 48px minmax(150px, .55fr) minmax(0, 1.45fr);
  gap: clamp(16px, 2.5vw, 32px);
  align-items: center;
  min-width: 0;
  padding: clamp(20px, 2.5vw, 30px) clamp(24px, 3vw, 42px);
  border-bottom: 1px solid var(--mg6-surface-line);
  transition: background var(--mg6-duration-base) var(--mg6-ease);
}
#morgen-v6-root .mg6-technical-row:last-child { border-bottom: 0; }
#morgen-v6-root .mg6-technical-row:nth-child(even) { background: rgba(249, 249, 249, .72); }
#morgen-v6-root .mg6-technical-row:hover { background: var(--mg6-amber-soft); }
#morgen-v6-root .mg6-technical-row__index {
  color: var(--mg6-amber-deep);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
  letter-spacing: .08em;
}
#morgen-v6-root .mg6-technical-row dt {
  color: var(--mg6-ink);
  font-size: var(--mg6-text-sm);
  font-weight: var(--mg6-weight-bold);
  line-height: 1.45;
}
#morgen-v6-root .mg6-technical-row dd {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 18px;
  margin: 0;
}
#morgen-v6-root .mg6-technical-row__value {
  min-width: 0;
  flex: 1 1 280px;
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-base);
  overflow-wrap: anywhere;
}
#morgen-v6-root .mg6-technical-row__status {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border: 1px solid var(--mg6-surface-line);
  border-radius: var(--mg6-radius-pill);
  background: var(--mg6-surface);
  color: var(--mg6-ink-muted);
  font-size: 10px;
  font-weight: var(--mg6-weight-bold);
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
}
#morgen-v6-root .mg6-technical-panel__rail {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 4vw, 52px);
  background:
    radial-gradient(circle at 100% 0, rgba(var(--mg6-amber-rgb), .16), transparent 42%),
    var(--mg6-surface-warm);
}
#morgen-v6-root .mg6-technical-panel__rail h3 {
  max-width: 360px;
  margin-bottom: var(--mg6-space-md);
  font-size: clamp(24px, 2.2vw, 34px);
}
#morgen-v6-root .mg6-technical-panel__rail > p:not(.mg6-eyebrow) {
  max-width: 450px;
  margin-bottom: var(--mg6-space-xl);
}
#morgen-v6-root .mg6-verification-steps {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--mg6-surface-line);
  list-style: none;
}
#morgen-v6-root .mg6-verification-steps li {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid var(--mg6-surface-line);
}
#morgen-v6-root .mg6-verification-steps li > span {
  color: var(--mg6-amber-deep);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
}
#morgen-v6-root .mg6-verification-steps strong {
  display: block;
  margin-bottom: 4px;
  color: var(--mg6-ink);
  font-size: var(--mg6-text-sm);
}
#morgen-v6-root .mg6-verification-steps small {
  display: block;
  color: var(--mg6-ink-muted);
  font-size: var(--mg6-text-xs);
  line-height: 1.5;
}
#morgen-v6-root .mg6-technical-panel__actions {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 16px;
  margin-top: var(--mg6-space-xl);
}

#morgen-v6-root .mg6-evidence-panel--dark {
  border-color: var(--mg6-dark-line);
  background: var(--mg6-dark-mid);
  box-shadow: 0 34px 90px -66px rgba(0, 0, 0, .8);
}
#morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__head {
  border-bottom-color: var(--mg6-dark-line);
}
#morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__heading h2 { color: var(--mg6-on-dark); }
#morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__summary {
  border-left-color: var(--mg6-dark-line);
}
#morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__summary p { color: rgba(var(--mg6-on-dark-rgb), .74); }
#morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__count {
  border-color: rgba(var(--mg6-on-dark-rgb), .26);
  background: rgba(var(--mg6-on-dark-rgb), .08);
  color: var(--mg6-on-dark);
}
#morgen-v6-root .mg6-standards-panel {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1fr) auto;
  gap: clamp(28px, 4vw, 58px);
  align-items: center;
  padding: clamp(30px, 4.5vw, 62px);
}
#morgen-v6-root .mg6-standards-panel h3 {
  max-width: 520px;
  margin: 0;
  color: var(--mg6-on-dark);
  font-size: clamp(24px, 2.4vw, 36px);
}
#morgen-v6-root .mg6-standards-panel > p {
  max-width: 620px;
  margin: 0;
  color: rgba(var(--mg6-on-dark-rgb), .76);
  font-size: var(--mg6-text-md);
  line-height: var(--mg6-leading-loose);
}
#morgen-v6-root .mg6-standards-panel .mg6-text-link { border-color: rgba(var(--mg6-on-dark-rgb), .7); color: var(--mg6-on-dark); white-space: nowrap; }
#morgen-v6-root .mg6-standards-panel .mg6-text-link:hover { border-color: var(--mg6-on-dark); color: var(--mg6-on-dark); }

@media (max-width: 1100px) {
  #morgen-v6-root .mg6-technical-panel { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-technical-list { border-right: 0; border-bottom: 1px solid var(--mg6-surface-line); }
  #morgen-v6-root .mg6-technical-panel__rail { justify-content: start; }
  #morgen-v6-root .mg6-standards-panel { grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr); }
  #morgen-v6-root .mg6-standards-panel .mg6-text-link { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 900px) {
  #morgen-v6-root .mg6-evidence-panel__head {
    grid-template-columns: 1fr;
    gap: var(--mg6-space-lg);
  }
  #morgen-v6-root .mg6-evidence-panel__summary {
    gap: 14px;
    padding-top: var(--mg6-space-lg);
    padding-left: 0;
    border-top: 1px solid var(--mg6-surface-line);
    border-left: 0;
  }
  #morgen-v6-root .mg6-evidence-panel--dark .mg6-evidence-panel__summary {
    border-top-color: var(--mg6-dark-line);
  }
  #morgen-v6-root .mg6-technical-row {
    grid-template-columns: 38px minmax(130px, .45fr) minmax(0, 1.55fr);
  }
}

@media (max-width: 720px) {
  #morgen-v6-root .mg6-product-evidence { padding: 56px 0; }
  #morgen-v6-root .mg6-evidence-panel { border-radius: var(--mg6-radius-md); }
  #morgen-v6-root .mg6-evidence-panel__head,
  #morgen-v6-root .mg6-technical-panel__rail,
  #morgen-v6-root .mg6-standards-panel { padding: var(--mg6-space-xl) var(--mg6-space-lg); }
  #morgen-v6-root .mg6-spec-grid--evidence { grid-template-columns: 1fr; }
  #morgen-v6-root .mg6-spec-card--evidence { min-height: 0; padding: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-technical-row {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px 14px;
    padding: 20px var(--mg6-space-lg);
  }
  #morgen-v6-root .mg6-technical-row dt { align-self: center; }
  #morgen-v6-root .mg6-technical-row dd { grid-column: 2; align-items: flex-start; flex-direction: column; }
  #morgen-v6-root .mg6-technical-row__value { flex-basis: auto; font-size: var(--mg6-text-base); }
  #morgen-v6-root .mg6-technical-panel__actions { align-items: stretch; }
  #morgen-v6-root .mg6-technical-panel__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-standards-panel { grid-template-columns: 1fr; gap: var(--mg6-space-lg); }
  #morgen-v6-root .mg6-standards-panel .mg6-text-link { grid-column: auto; }
}

/* 2.23.5 — technical-library load-more control stability. */
#morgen-v6-root #mg6-document-library .mg6-doc-grid,
#morgen-v6-root #mg6-document-library .mg6-doc-grid > *{
  min-width:0;
}
#morgen-v6-root #mg6-document-library .mg6-doc-load{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  width:auto;
  max-width:100%;
  min-width:232px;
  min-height:48px;
  height:auto;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:var(--mg6-space-xl) auto 0;
  padding:11px 22px;
  box-sizing:border-box;
  border-width:1px;
  background:linear-gradient(180deg,#fff 0%,var(--mg6-amber-soft) 100%);
  box-shadow:0 18px 38px -28px rgba(var(--mg6-amber-rgb),.58),inset 0 1px 0 rgba(255,255,255,.94);
  line-height:1.2;
  text-align:center;
  white-space:normal;
}
#morgen-v6-root #mg6-document-library .mg6-doc-load::after{
  content:"";
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  transition:transform var(--mg6-duration-fast) var(--mg6-ease);
}
#morgen-v6-root #mg6-document-library .mg6-doc-load:hover,
#morgen-v6-root #mg6-document-library .mg6-doc-load:focus-visible{
  border-color:var(--mg6-amber-deep);
  background:var(--mg6-amber);
  color:var(--mg6-on-accent);
  box-shadow:0 20px 42px -24px rgba(var(--mg6-amber-rgb),.68);
}
#morgen-v6-root #mg6-document-library .mg6-doc-load:hover::after,
#morgen-v6-root #mg6-document-library .mg6-doc-load:focus-visible::after{
  transform:rotate(45deg) translate(1px,1px);
}
#morgen-v6-root #mg6-document-library .mg6-doc-load:focus-visible{
  outline:3px solid var(--mg6-focus-ring);
  outline-offset:3px;
}
#morgen-v6-root #mg6-document-library .mg6-doc-load:disabled,
#morgen-v6-root #mg6-document-library .mg6-doc-load[aria-disabled="true"]{
  cursor:default;
  transform:none;
}
@media (max-width:640px){
  #morgen-v6-root #mg6-document-library .mg6-doc-load{
    width:100%;
    max-width:360px;
    min-width:0;
  }
}
@media (prefers-reduced-motion:reduce){
  #morgen-v6-root #mg6-document-library .mg6-doc-load,
  #morgen-v6-root #mg6-document-library .mg6-doc-load::after{
    transition:none;
  }
}


/* Morgen Core 2.23.9: premium product-stage cleanup (single-frame, hover micro-motion) */
#morgen-v6-root .mg6-product-stage__media{
  border:none;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  perspective:1200px;
}
#morgen-v6-root .mg6-product-stage__media::before{
  display:none;
}
#morgen-v6-root .mg6-product-stage__image-wrap{
  position:relative;
  isolation:isolate;
  min-height:clamp(390px,42vw,650px);
  padding:clamp(24px,4vw,52px);
  background:transparent;
  overflow:visible;
}
#morgen-v6-root .mg6-product-stage__image-wrap::before{
  content:"";
  position:absolute;
  inset:10% 6% 12%;
  border-radius:clamp(28px,3vw,36px);
  background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.98) 0%,rgba(248,250,252,.95) 42%,rgba(229,237,242,.58) 70%,rgba(229,237,242,0) 100%);
  box-shadow:0 28px 56px rgba(1,26,46,.16),0 10px 20px rgba(1,26,46,.09);
  z-index:0;
  opacity:.96;
  transition:transform .55s cubic-bezier(.2,.75,.25,1),box-shadow .55s ease,opacity .55s ease;
}
#morgen-v6-root .mg6-product-stage__image-wrap img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:transparent;
  filter:drop-shadow(0 24px 30px rgba(6,26,42,.18)) drop-shadow(0 10px 18px rgba(6,26,42,.11));
  transform:translate3d(0,0,0) rotate(0deg) scale(1);
  transform-origin:50% 50%;
  will-change:transform,filter;
  transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .55s ease;
}
#morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap::before{
  transform:translate3d(8px,-6px,0) scale(1.015);
  box-shadow:0 36px 72px rgba(1,26,46,.2),0 14px 24px rgba(1,26,46,.11);
  opacity:1;
}
#morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap img{
  transform:translate3d(0,-6px,0) rotate(-2.35deg) scale(1.035);
  filter:drop-shadow(0 34px 38px rgba(6,26,42,.22)) drop-shadow(0 12px 20px rgba(6,26,42,.14));
}
@media (max-width:980px){
  #morgen-v6-root .mg6-product-stage__image-wrap::before{
    inset:8% 4% 10%;
  }
}
@media (max-width:640px){
  #morgen-v6-root .mg6-product-stage__image-wrap{
    min-height:clamp(280px,76vw,420px);
    padding:20px;
  }
  #morgen-v6-root .mg6-product-stage__image-wrap::before{
    inset:6% 2% 8%;
    border-radius:22px;
  }
}
@media (prefers-reduced-motion:reduce){
  #morgen-v6-root .mg6-product-stage__image-wrap::before,
  #morgen-v6-root .mg6-product-stage__image-wrap img{
    transition:none;
  }
  #morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap::before,
  #morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap img{
    transform:none;
  }
}


/* Morgen Core 2.23.9 deep-audit: final single-surface product stage */
#morgen-v6-root .mg6-product-stage__media,
#morgen-v6-root .mg6-product-stage__image-wrap{
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
#morgen-v6-root .mg6-product-stage__media::before,
#morgen-v6-root .mg6-product-stage__image-wrap::before{
  content:none;
  display:none;
  background:none;
  border:0;
  box-shadow:none;
}
#morgen-v6-root .mg6-product-stage__image-wrap img{
  border-radius:clamp(20px,2.4vw,30px);
}
@media (hover:hover) and (pointer:fine){
  #morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap img{
    transform:translate3d(0,-6px,0) rotate(-2.35deg) scale(1.035);
  }
}
@media (prefers-reduced-motion:reduce){
  #morgen-v6-root .mg6-product-stage__media:hover .mg6-product-stage__image-wrap img{
    transform:none;
  }
}

/* Morgen Core 2.24.1 — premium minimalist hardening for V6. */
#morgen-v6-root.mg6 {
  --mg6-neutral-canvas: #f5f5f7;
  --mg6-neutral-panel: rgba(255, 255, 255, .82);
  --mg6-neutral-border: rgba(13, 27, 37, .11);
  --mg6-neutral-border-strong: rgba(13, 27, 37, .17);
  --mg6-radius-xl: 24px;
  --mg6-radius-2xl: 32px;
  --mg6-shadow-soft: 0 18px 54px -38px rgba(7, 32, 48, .34);
  --mg6-shadow-premium: 0 30px 90px -58px rgba(7, 32, 48, .42);
  --mg6-font-heading: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mg6-font-display: var(--mg6-font-heading);
  --mg6-font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mg6-font-ui: var(--mg6-font-body);
  --mg6-shell-width: min(calc(100% - clamp(28px, 5vw, 80px)), 1360px);
  font-weight: var(--mg6-weight-regular);
  letter-spacing: -.004em;
}

#morgen-v6-root {
  background: var(--mg6-surface);
}

#morgen-v6-root p {
  font-weight: var(--mg6-weight-regular);
  text-wrap: pretty;
}

#morgen-v6-root h1,
#morgen-v6-root h2,
#morgen-v6-root h3 {
  letter-spacing: -.035em;
}

#morgen-v6-root .mg6-section,
#morgen-v6-root .mg6-card-section,
#morgen-v6-root .mg6-feature-band,
#morgen-v6-root .mg6-stat-section {
  padding-block: clamp(64px, 8vw, 112px);
}

#morgen-v6-root .mg6-section-head {
  max-width: 880px;
  margin-bottom: clamp(36px, 5vw, 64px);
}

#morgen-v6-root .mg6-section-head__sub,
#morgen-v6-root .mg6-prose-lede {
  max-width: 760px;
  font-size: clamp(16px, 1.35vw, 19px);
  line-height: 1.68;
}

#morgen-v6-root .mg6-eyebrow {
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
}

/* Header: quiet glass surface, compact proportions, and stable touch targets. */
#morgen-v6-root .mg6-sitebar {
  border-bottom: 1px solid var(--mg6-neutral-border);
  background: rgba(var(--mg6-surface-rgb), .84);
  box-shadow: none;
  -webkit-backdrop-filter: saturate(160%) blur(22px);
  backdrop-filter: saturate(160%) blur(22px);
}

#morgen-v6-root .mg6-sitebar.is-scrolled {
  background: rgba(var(--mg6-surface-rgb), .92);
  box-shadow: 0 12px 34px -28px rgba(7, 32, 48, .48);
}

#morgen-v6-root .mg6-sitebar__inner {
  grid-template-columns: minmax(190px, 226px) minmax(0, 1fr) auto;
  min-height: 76px;
}

#morgen-v6-root .mg6-nav__link {
  min-height: 76px;
  padding-inline: clamp(9px, .9vw, 14px);
  font-size: 14px;
  font-weight: 500;
}

#morgen-v6-root .mg6-nav__link::after {
  right: 14px;
  bottom: 9px;
  left: 14px;
  height: 2px;
  border-radius: var(--mg6-radius-pill);
}

#morgen-v6-root .mg6-nav__panel {
  padding: 10px;
  border-color: var(--mg6-neutral-border);
  border-radius: 18px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 24px 64px -34px rgba(7, 32, 48, .42);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

#morgen-v6-root .mg6-nav__sublink {
  border-radius: 12px;
}

#morgen-v6-root .mg6-quick,
#morgen-v6-root .mg6-menu-toggle,
#morgen-v6-root .mg6-icon-button {
  min-height: 44px;
  border-width: 1px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
}

#morgen-v6-root .mg6-quick {
  padding-inline: 18px;
  font-size: 14px;
  font-weight: 600;
}

/* Hero: a full-bleed cinematic viewport driven by one horizontal track. */
#morgen-v6-root .mg6-hero {
  width: 100%;
  max-width: none;
  min-height: clamp(540px, 43vw, 720px);
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#morgen-v6-root .mg6-hero__overlay {
  background:
    linear-gradient(90deg, rgba(5, 16, 24, .76) 0%, rgba(5, 16, 24, .44) 42%, rgba(5, 16, 24, .08) 76%),
    linear-gradient(0deg, rgba(5, 16, 24, .54) 0%, rgba(5, 16, 24, .04) 62%);
}

#morgen-v6-root .mg6-hero__copy {
  max-width: min(720px, calc(100vw - 112px));
  padding-block: clamp(72px, 8vw, 118px) clamp(60px, 7vw, 96px);
}

#morgen-v6-root .mg6-hero__title {
  max-width: 700px;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 650;
  line-height: 1.02;
  letter-spacing: -.055em;
}

#morgen-v6-root .mg6-hero__subheading {
  max-width: 640px;
  color: rgba(var(--mg6-on-dark-rgb), .9);
  font-size: clamp(17px, 1.55vw, 21px);
  font-weight: 500;
}

#morgen-v6-root .mg6-hero__sub {
  max-width: 630px;
  font-size: clamp(15px, 1.25vw, 18px);
  line-height: 1.65;
}

#morgen-v6-root .mg6-hero__control {
  width: 44px;
  height: 44px;
  border-color: rgba(var(--mg6-on-dark-rgb), .34);
  background: rgba(10, 18, 24, .24);
  font-size: 27px;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: background var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-fast) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease);
}

#morgen-v6-root .mg6-hero__control:hover {
  border-color: rgba(var(--mg6-on-dark-rgb), .72);
  background: rgba(10, 18, 24, .56);
}

#morgen-v6-root .mg6-hero__prev { left: clamp(14px, 2vw, 30px); }
#morgen-v6-root .mg6-hero__next { right: clamp(14px, 2vw, 30px); }

#morgen-v6-root .mg6-hero__dots {
  bottom: clamp(16px, 2vw, 28px);
  gap: 7px;
  padding: 7px 9px;
}

#morgen-v6-root .mg6-hero__dot {
  width: 28px;
  height: 4px;
  border-radius: var(--mg6-radius-pill);
}

/* Buttons and interactive controls. */
#morgen-v6-root .mg6-btn {
  min-height: 46px;
  padding-inline: 22px;
  border-width: 1px;
  border-radius: 14px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.005em;
}

#morgen-v6-root .mg6-btn--pill {
  border-radius: var(--mg6-radius-pill);
}

#morgen-v6-root .mg6-btn--amber {
  box-shadow: 0 10px 28px -18px rgba(var(--mg6-amber-rgb), .74), inset 0 1px 0 rgba(255, 255, 255, .2);
}

#morgen-v6-root .mg6-btn--amber:hover {
  box-shadow: 0 16px 34px -18px rgba(var(--mg6-amber-rgb), .76), inset 0 1px 0 rgba(255, 255, 255, .18);
}

/* Cards: fewer hard edges, consistent hierarchy, and motion only on capable devices. */
#morgen-v6-root :where(
  .mg6-card,
  .mg6-principle-card,
  .mg6-application-card,
  .mg6-doc-card,
  .mg6-form,
  .mg6-selection-panel,
  .mg6-evidence-panel,
  .mg6-data-panel,
  .mg6-process-card,
  .mg6-contact-list a
) {
  border-color: var(--mg6-neutral-border);
  border-radius: var(--mg6-radius-xl);
  box-shadow: var(--mg6-shadow-soft);
}

#morgen-v6-root .mg6-card,
#morgen-v6-root .mg6-doc-card,
#morgen-v6-root .mg6-principle-card,
#morgen-v6-root .mg6-application-card {
  overflow: hidden;
}

#morgen-v6-root .mg6-principle-card {
  border-top-width: 1px;
}

#morgen-v6-root .mg6-principle-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 24px;
  left: 24px;
  height: 3px;
  border-radius: 0 0 var(--mg6-radius-pill) var(--mg6-radius-pill);
  background: var(--mg6-amber);
}

#morgen-v6-root .mg6-highlight__panel {
  border-color: var(--mg6-neutral-border);
  border-radius: var(--mg6-radius-2xl);
  box-shadow: var(--mg6-shadow-premium);
}

#morgen-v6-root .mg6-highlight__visual,
#morgen-v6-root .mg6-highlight__image {
  border-radius: var(--mg6-radius-2xl) 0 0 var(--mg6-radius-2xl);
}

#morgen-v6-root .mg6-highlight__badge {
  border: 1px solid rgba(var(--mg6-on-dark-rgb), .16);
  border-left: 1px solid rgba(var(--mg6-on-dark-rgb), .16);
  border-radius: 18px;
  background: rgba(var(--mg6-ink-rgb), .64);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

#morgen-v6-root .mg6-card__media,
#morgen-v6-root .mg6-card__thumb {
  border-bottom-color: var(--mg6-neutral-border);
}

#morgen-v6-root .mg6-field input,
#morgen-v6-root .mg6-field select,
#morgen-v6-root .mg6-field textarea,
#morgen-v6-root .mg6-doc-toolbar,
#morgen-v6-root .mg6-chip {
  border-color: var(--mg6-neutral-border-strong);
  border-radius: 12px;
}

#morgen-v6-root .mg6-field input,
#morgen-v6-root .mg6-field select,
#morgen-v6-root .mg6-field textarea {
  min-height: 48px;
  background: rgba(255, 255, 255, .94);
}

/* Footer: premium light canvas, quieter grid, and a contained CTA. */
#morgen-v6-root .mg6-footer {
  margin-top: clamp(24px, 4vw, 64px);
  padding: clamp(24px, 4vw, 48px) 0 max(24px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--mg6-neutral-border);
  background: var(--mg6-neutral-canvas);
}

#morgen-v6-root .mg6-footer__cta {
  gap: clamp(28px, 5vw, 72px);
  padding: clamp(30px, 4.5vw, 58px);
  border: 1px solid rgba(var(--mg6-on-dark-rgb), .1);
  border-radius: var(--mg6-radius-2xl);
  background:
    radial-gradient(circle at 90% 0, rgba(var(--mg6-amber-rgb), .3), transparent 36%),
    linear-gradient(135deg, var(--mg6-dark-deep), var(--mg6-dark));
  box-shadow: 0 28px 72px -46px rgba(var(--mg6-dark-rgb), .72);
}

#morgen-v6-root .mg6-footer__cta h2 {
  max-width: 760px;
  margin-bottom: 14px;
  font-size: clamp(28px, 3vw, 44px);
  font-weight: 600;
}

#morgen-v6-root .mg6-footer__social {
  gap: 12px 24px;
  padding-block: 28px;
  border-bottom-color: var(--mg6-neutral-border);
}

#morgen-v6-root .mg6-social-link {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  padding-inline: 12px;
  border: 1px solid transparent;
  border-radius: var(--mg6-radius-pill);
}

#morgen-v6-root .mg6-social-link:hover {
  border-color: var(--mg6-neutral-border);
  background: rgba(255, 255, 255, .72);
}

#morgen-v6-root .mg6-footer__grid {
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(150px, .65fr));
  gap: clamp(28px, 5vw, 72px);
  padding-block: clamp(42px, 6vw, 76px);
}

#morgen-v6-root .mg6-footer__brand p {
  max-width: 390px;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.75;
}

#morgen-v6-root .mg6-footer__col-title {
  margin-bottom: 18px;
  font-size: 12px;
  letter-spacing: .09em;
}

#morgen-v6-root .mg6-footer__list {
  gap: 11px;
}

#morgen-v6-root .mg6-footer__list a {
  font-size: 14px;
  line-height: 1.45;
}

#morgen-v6-root .mg6-footer__notice {
  align-items: flex-start;
  gap: 9px;
  padding: 20px 22px;
  border-color: var(--mg6-neutral-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, .74);
  line-height: 1.55;
}

#morgen-v6-root .mg6-footer__bottom {
  padding-top: 22px;
}

@media (hover: hover) and (pointer: fine) {
  #morgen-v6-root :where(.mg6-card, .mg6-doc-card, .mg6-application-card, .mg6-principle-card):hover {
    border-color: var(--mg6-neutral-border-strong);
    box-shadow: 0 30px 70px -44px rgba(7, 32, 48, .44);
    transform: translateY(-3px);
  }
}

@media (max-width: 1180px) {
  #morgen-v6-root .mg6-sitebar__inner {
    grid-template-columns: minmax(176px, 210px) minmax(0, 1fr) auto;
    gap: 12px;
  }
  #morgen-v6-root .mg6-nav__link {
    padding-inline: 8px;
    font-size: 13px;
  }
  #morgen-v6-root .mg6-quick span {
    display: none;
  }
  #morgen-v6-root .mg6-quick {
    width: 44px;
    padding: 0;
    justify-content: center;
  }
  #morgen-v6-root .mg6-footer__grid {
    grid-template-columns: minmax(240px, 1.15fr) repeat(3, minmax(130px, .7fr));
    gap: 32px;
  }
}

@media (max-width: 980px) {
  #morgen-v6-root .mg6-sitebar__inner {
    grid-template-columns: minmax(170px, 220px) 1fr auto;
    min-height: 70px;
  }
  #morgen-v6-root .mg6-nav,
  #morgen-v6-root .mg6-sitebar__tools {
    display: none;
  }
  #morgen-v6-root .mg6-menu-toggle {
    display: inline-flex;
    justify-self: end;
  }
  #morgen-v6-root .mg6-hero {
    min-height: clamp(540px, 68vw, 680px);
    aspect-ratio: auto;
  }
  #morgen-v6-root .mg6-highlight__panel {
    grid-template-columns: 1fr;
  }
  #morgen-v6-root .mg6-highlight__visual,
  #morgen-v6-root .mg6-highlight__image {
    min-height: 420px;
    border-radius: var(--mg6-radius-2xl) var(--mg6-radius-2xl) 0 0;
  }
  #morgen-v6-root .mg6-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #morgen-v6-root .mg6-footer__brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  #morgen-v6-root.mg6 {
    --mg6-shell-width: min(calc(100% - 32px), 1360px);
    --mg6-radius-xl: 20px;
    --mg6-radius-2xl: 24px;
  }
  #morgen-v6-root .mg6-section,
  #morgen-v6-root .mg6-card-section,
  #morgen-v6-root .mg6-feature-band,
  #morgen-v6-root .mg6-stat-section {
    padding-block: 56px;
  }
  #morgen-v6-root .mg6-hero {
    width: 100%;
    min-height: min(690px, calc(100svh - 84px));
    margin: 0;
    border-radius: 0;
  }
  #morgen-v6-root .mg6-hero__overlay {
    align-items: end;
    background: linear-gradient(0deg, rgba(5, 16, 24, .82) 0%, rgba(5, 16, 24, .42) 58%, rgba(5, 16, 24, .1) 100%);
  }
  #morgen-v6-root .mg6-hero__copy {
    max-width: none;
    padding: 70px 0 72px;
  }
  #morgen-v6-root .mg6-hero__title {
    font-size: clamp(36px, 11vw, 54px);
  }
  #morgen-v6-root .mg6-hero__control {
    top: 28px;
    width: 40px;
    height: 40px;
    transform: none;
  }
  #morgen-v6-root .mg6-hero__prev { left: 16px; }
  #morgen-v6-root .mg6-hero__next { right: 16px; }
  #morgen-v6-root .mg6-hero__dots {
    bottom: 16px;
  }
  #morgen-v6-root .mg6-highlight__visual,
  #morgen-v6-root .mg6-highlight__image {
    min-height: 330px;
  }
  #morgen-v6-root .mg6-highlight__content {
    padding: 30px 24px 34px;
  }
  #morgen-v6-root .mg6-highlight__metrics {
    grid-template-columns: 1fr;
  }
  #morgen-v6-root .mg6-highlight__metrics > div + div {
    padding-left: 0;
    border-top: 1px solid var(--mg6-surface-line);
    border-left: 0;
  }
  #morgen-v6-root .mg6-footer__cta {
    grid-template-columns: 1fr;
    padding: 30px 24px;
  }
  #morgen-v6-root .mg6-footer__cta-actions,
  #morgen-v6-root .mg6-footer__cta-actions .mg6-btn {
    width: 100%;
  }
  #morgen-v6-root .mg6-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 34px 24px;
  }
  #morgen-v6-root .mg6-footer__notice {
    display: grid;
  }
}

@media (max-width: 480px) {
  #morgen-v6-root.mg6 {
    --mg6-shell-width: min(calc(100% - 24px), 1360px);
  }
  #morgen-v6-root .mg6-sitebar__inner {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  #morgen-v6-root .mg6-logo {
    width: min(190px, 100%);
  }
  #morgen-v6-root .mg6-menu-toggle__label {
    display: none;
  }
  #morgen-v6-root .mg6-menu-toggle {
    width: 44px;
    padding: 0;
    justify-content: center;
  }
  #morgen-v6-root .mg6-hero__actions,
  #morgen-v6-root .mg6-hero__actions .mg6-btn,
  #morgen-v6-root .mg6-highlight__actions,
  #morgen-v6-root .mg6-highlight__actions .mg6-btn {
    width: 100%;
  }
  #morgen-v6-root .mg6-footer__grid {
    grid-template-columns: 1fr;
  }
  #morgen-v6-root .mg6-footer__brand {
    grid-column: auto;
  }
  #morgen-v6-root .mg6-footer__social {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-hero__slide,
  #morgen-v6-root .mg6-card,
  #morgen-v6-root .mg6-doc-card,
  #morgen-v6-root .mg6-application-card,
  #morgen-v6-root .mg6-principle-card,
  #morgen-v6-root .mg6-btn,
  #morgen-v6-root .mg6-quick,
  #morgen-v6-root .mg6-hero__control {
    transition: none;
  }
}

/* Morgen Core 2.24.2 — systematic V6 radius, ornament, navigation, slider, and drawer hardening. */
#morgen-v6-root.mg6 {
  --mg6-radius-xs: 4px;
  --mg6-radius-sm: 6px;
  --mg6-radius-md: 8px;
  --mg6-radius-lg: 10px;
  --mg6-radius-xl: 12px;
  --mg6-radius-2xl: 14px;
  --mg6-radius-control: 8px;
  --mg6-radius-surface: 10px;
  --mg6-radius-feature: 14px;
  --mg6-radius-media: 8px;
}

/* Consistent subtle radii for repeated V6 surfaces. */
#morgen-v6-root :is(
  .mg6-empty-state,
  .mg6-highlight__panel,
  .mg6-selection-panel,
  .mg6-decision-panel,
  .mg6-evidence-panel,
  .mg6-data-panel,
  .mg6-process-card,
  .mg6-process-panel,
  .mg6-process-list,
  .mg6-review-card,
  .mg6-quote-card,
  .mg6-brand-card,
  .mg6-principle-card,
  .mg6-dark-panel,
  .mg6-card,
  .mg6-family-card,
  .mg6-watch-card,
  .mg6-stat-card,
  .mg6-form,
  .mg6-alert,
  .mg6-doc-toolbar,
  .mg6-doc-card,
  .mg6-home-family-card,
  .mg6-brand-tiers__summary,
  .mg6-why-panel,
  .mg6-media-card,
  .mg6-video-card,
  .mg6-testimonial-card,
  .mg6-consultation__panel,
  .mg6-not-found__panel,
  .mg6-not-found__note,
  .mg6-integrity-panel,
  .mg6-application-review,
  .mg6-application-card,
  .mg6-spec-card,
  .mg6-spec-grid--evidence,
  .mg6-table-wrap,
  .mg6-technical-list,
  .mg6-technical-panel,
  .mg6-standards-panel,
  .mg6-product-stage__panel,
  .mg6-product-stage__image-wrap,
  .mg6-product-hero__media,
  .mg6-native-page__rail
) {
  border-radius: var(--mg6-radius-surface);
}

#morgen-v6-root .mg6-contact-list a,
#morgen-v6-root .mg6-brand-tiers a,
#morgen-v6-root .mg6-why-list article,
#morgen-v6-root .mg6-not-found__indexes a,
#morgen-v6-root .mg6-application-review__steps li,
#morgen-v6-root .mg6-native-page__meta dl > div {
  border-radius: var(--mg6-radius-surface);
}

#morgen-v6-root :is(
  .mg6-card,
  .mg6-family-card,
  .mg6-doc-card,
  .mg6-home-family-card,
  .mg6-media-card,
  .mg6-video-card,
  .mg6-testimonial-card,
  .mg6-application-card,
  .mg6-spec-card,
  .mg6-integrity-panel,
  .mg6-application-review,
  .mg6-process-panel,
  .mg6-process-list,
  .mg6-spec-grid--evidence,
  .mg6-table-wrap,
  .mg6-technical-list,
  .mg6-technical-panel,
  .mg6-standards-panel,
  .mg6-product-stage__panel,
  .mg6-product-hero__media,
  .mg6-not-found__panel
) {
  overflow: hidden;
}

#morgen-v6-root :is(
  .mg6-card__media,
  .mg6-card__thumb,
  .mg6-family-card__media,
  .mg6-application-review__visual,
  .mg6-video-card__media,
  .mg6-video-card__thumb,
  .mg6-testimonial-card__image
) {
  border-radius: var(--mg6-radius-media);
}
#morgen-v6-root .mg6-product-stage__image-wrap img {
  border-radius: var(--mg6-radius-media);
}

#morgen-v6-root :is(
  .mg6-btn,
  .mg6-quick,
  .mg6-menu-toggle,
  .mg6-icon-button,
  .mg6-chip,
  .mg6-doc-load,
  .mg6-video-card__play,
  .mg6-video-modal__close
) {
  border-radius: var(--mg6-radius-control);
}
#morgen-v6-root .mg6-field input,
#morgen-v6-root .mg6-field select,
#morgen-v6-root .mg6-field textarea,
#morgen-v6-root .mg6-scroll-nav button {
  border-radius: var(--mg6-radius-control);
}

#morgen-v6-root .mg6-application-review__steps li {
  border-radius: var(--mg6-radius-control);
}

#morgen-v6-root .mg6-btn--pill,
#morgen-v6-root .mg6-social-link,
#morgen-v6-root .mg6-hero__dots,
#morgen-v6-root .mg6-hero__dot {
  border-radius: var(--mg6-radius-pill);
}

#morgen-v6-root .mg6-highlight__panel,
#morgen-v6-root .mg6-footer__cta,
#morgen-v6-root .mg6-banner {
  border-radius: var(--mg6-radius-feature);
}

#morgen-v6-root .mg6-highlight__visual,
#morgen-v6-root .mg6-highlight__image {
  border-radius: var(--mg6-radius-feature) 0 0 var(--mg6-radius-feature);
}

#morgen-v6-root .mg6-highlight__badge,
#morgen-v6-root .mg6-footer__notice,
#morgen-v6-root .mg6-nav__panel,
#morgen-v6-root .mg6-nav__sublink,
#morgen-v6-root .mg6-drawer,
#morgen-v6-root .mg6-drawer__group-toggle,
#morgen-v6-root .mg6-drawer__sublist,
#morgen-v6-root .mg6-not-found__index {
  border-radius: var(--mg6-radius-surface);
}

/* Contain page banners instead of leaving a full-width naked rectangle. */
#morgen-v6-root .mg6-banner {
  width: min(calc(100% - clamp(20px, 3vw, 48px)), 1480px);
  margin: clamp(10px, 1.5vw, 20px) auto 0;
  border: 1px solid var(--mg6-neutral-border);
  overflow: hidden;
}

/* V6 parent-menu chevrons: clearly visible, balanced, and touch-safe. */
#morgen-v6-root .mg6-nav__parent {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 1px;
}
#morgen-v6-root .mg6-nav__parent > .mg6-nav__link {
  padding-right: 7px;
}
#morgen-v6-root .mg6-nav__link--button {
  gap: 8px;
}
#morgen-v6-root .mg6-nav__toggle {
  display: inline-flex;
  width: 30px;
  min-width: 30px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  margin: 0 3px 0 -5px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: var(--mg6-radius-control);
  background: transparent;
  color: var(--mg6-ink-mid);
  opacity: .82;
  transition: color var(--mg6-duration-fast) var(--mg6-ease), background var(--mg6-duration-fast) var(--mg6-ease), border-color var(--mg6-duration-fast) var(--mg6-ease), opacity var(--mg6-duration-fast) var(--mg6-ease);
}
#morgen-v6-root .mg6-nav__toggle:hover,
#morgen-v6-root .mg6-nav__toggle:focus-visible,
#morgen-v6-root .mg6-nav__item.is-open .mg6-nav__toggle {
  border-color: var(--mg6-neutral-border);
  background: var(--mg6-neutral-canvas);
  color: var(--mg6-ink);
  opacity: 1;
}
#morgen-v6-root .mg6-nav__toggle:focus-visible {
  outline: 2px solid var(--mg6-focus-ring);
  outline-offset: 2px;
}
#morgen-v6-root .mg6-nav__chevron {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
  overflow: visible;
}
#morgen-v6-root .mg6-nav__chevron path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

/* Geometry-stable V6 slider controls; SVG paths avoid baseline drift. */
#morgen-v6-root .mg6-hero__control {
  top: 50%;
  display: inline-flex;
  width: 46px;
  height: 46px;
  align-items: center;
  justify-content: center;
  border-radius: var(--mg6-radius-surface);
  font-size: 0;
  line-height: 0;
  transform: translateY(-50%);
}
#morgen-v6-root .mg6-hero__control svg {
  width: 21px;
  height: 21px;
  overflow: visible;
}
#morgen-v6-root .mg6-hero__control path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
#morgen-v6-root .mg6-hero__prev { left: clamp(12px, 2vw, 26px); }
#morgen-v6-root .mg6-hero__next { right: clamp(12px, 2vw, 26px); }

/* V3-inspired random ring field and restrained shimmer for V6 hero backgrounds. */
#morgen-v6-root .mg6-hero__media { z-index: 0; }
#morgen-v6-root .mg6-hero__shimmer {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 420ms var(--mg6-ease);
}
#morgen-v6-root .mg6-hero__slide.is-active .mg6-hero__shimmer { opacity: 1; }
#morgen-v6-root .mg6-hero__overlay { z-index: 2; }
#morgen-v6-root .mg6-hero__shimmer-beam {
  position: absolute;
  top: var(--mg6-shimmer-y, 8%);
  bottom: -22%;
  left: -58%;
  width: var(--mg6-shimmer-width, 38%);
  background: linear-gradient(108deg, transparent 9%, rgba(255,255,255,.025) 31%, rgba(255,255,255,var(--mg6-shimmer-strength,.18)) 49%, rgba(var(--mg6-amber-rgb),.12) 58%, transparent 80%);
  filter: blur(var(--mg6-shimmer-blur, 10px));
  opacity: 0;
  transform: rotate(var(--mg6-shimmer-angle, 7deg));
}
#morgen-v6-root .mg6-hero__slide.is-active .mg6-hero__shimmer-beam {
  animation: mg6-hero-shimmer-pass var(--mg6-shimmer-duration, 8s) cubic-bezier(.22,.61,.36,1) var(--mg6-shimmer-delay, .6s) both;
}
#morgen-v6-root .mg6-ring-field {
  position: absolute;
  inset: 0;
  opacity: .88;
  mix-blend-mode: screen;
}
#morgen-v6-root .mg6-ring-field__ring {
  position: absolute;
  left: var(--mg6-ring-x, 72%);
  top: var(--mg6-ring-y, 12%);
  width: var(--mg6-ring-size, 190px);
  aspect-ratio: 1;
  border: 1px solid rgba(226, 237, 244, var(--mg6-ring-opacity, .16));
  border-radius: 50%;
  background: radial-gradient(circle, transparent 62%, rgba(255,255,255,.025) 63%, transparent 67%);
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-amber-rgb), .04), 0 0 38px rgba(var(--mg6-amber-rgb), .035);
  transform: translate(-50%, -50%) rotate(var(--mg6-ring-tilt, 0deg)) scale(var(--mg6-ring-scale, 1));
  transform-origin: center;
}
#morgen-v6-root .mg6-ring-field__ring::after {
  content: "";
  position: absolute;
  inset: 14%;
  border: 1px solid rgba(255,255,255,.055);
  border-radius: 50%;
}
@keyframes mg6-hero-shimmer-pass {
  0% { left: -58%; opacity: 0; }
  14% { opacity: .62; }
  72% { opacity: .34; }
  100% { left: 124%; opacity: 0; }
}

/* Responsive V6 drawer: tablet side sheet, phone bottom sheet, safe-area aware. */
#morgen-v6-root .mg6-menu-toggle__icon {
  width: 22px;
  height: 22px;
  overflow: visible;
}
#morgen-v6-root .mg6-menu-toggle__line {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  transform-box: fill-box;
  transform-origin: center;
  transition: transform var(--mg6-duration-base) var(--mg6-ease);
}
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__line--top { transform: translateY(4px) rotate(45deg); }
#morgen-v6-root .mg6-menu-toggle[aria-expanded="true"] .mg6-menu-toggle__line--bottom { transform: translateY(-4px) rotate(-45deg); }

@media (max-width: 980px) {
  #morgen-v6-root .mg6-drawer {
    top: calc(var(--wp-admin--admin-bar--height, 0px) + 8px);
    right: 8px;
    bottom: 8px;
    left: auto;
    width: min(420px, calc(100% - 16px));
    max-height: none;
    padding: 22px 20px calc(22px + env(safe-area-inset-bottom, 0px));
    border: 1px solid var(--mg6-neutral-border);
    border-radius: var(--mg6-radius-feature);
    box-shadow: 0 28px 80px -28px rgba(7, 32, 48, .58);
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }
  #morgen-v6-root .mg6-drawer__head {
    position: sticky;
    top: -22px;
    z-index: 2;
    margin: -22px -20px 0;
    padding: 20px 20px 16px;
    border-radius: var(--mg6-radius-feature) var(--mg6-radius-feature) 0 0;
    background: rgba(255,255,255,.94);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
  }
  #morgen-v6-root .mg6-drawer__nav { margin-top: 14px; }
  #morgen-v6-root .mg6-drawer__item { padding-block: 2px; }
  #morgen-v6-root .mg6-drawer__row { min-height: 54px; }
  #morgen-v6-root .mg6-drawer__link { padding: 13px 4px; }
  #morgen-v6-root .mg6-drawer__group-toggle {
    width: 40px;
    height: 40px;
    border: 1px solid var(--mg6-neutral-border);
  }
  #morgen-v6-root .mg6-drawer__sublist {
    margin: 2px 0 10px;
    padding: 8px 12px;
    background: var(--mg6-neutral-canvas);
  }
  #morgen-v6-root .mg6-drawer__sublist a {
    min-height: 42px;
    padding: 10px 8px;
    border-radius: var(--mg6-radius-control);
  }
  #morgen-v6-root .mg6-drawer__sublist a:hover,
  #morgen-v6-root .mg6-drawer__sublist a:focus-visible {
    background: rgba(255,255,255,.9);
  }
  #morgen-v6-root .mg6-drawer__actions {
    align-items: stretch;
    gap: 14px;
    padding-top: 24px;
  }
  #morgen-v6-root .mg6-drawer__actions .mg6-btn { width: 100%; }
  #morgen-v6-root .mg6-drawer-backdrop {
    background: rgba(7, 20, 29, .44);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
  }
  #morgen-v6-root .mg6-hero__control {
    top: 50%;
    bottom: auto;
    width: 40px;
    height: 40px;
    border-radius: 9px;
    transform: translateY(-50%);
  }
  #morgen-v6-root .mg6-hero__prev { left: 10px; }
  #morgen-v6-root .mg6-hero__next { right: 10px; }
  #morgen-v6-root .mg6-highlight__visual,
  #morgen-v6-root .mg6-highlight__image {
    border-radius: var(--mg6-radius-feature) var(--mg6-radius-feature) 0 0;
  }
}

@media (max-width: 560px) {
  #morgen-v6-root .mg6-drawer { top: 10px; right: 8px; left: 8px; width: auto; max-height: 100vh; }
  #morgen-v6-root .mg6-menu-toggle {
    width: 44px;
    padding: 0;
    justify-content: center;
  }
  #morgen-v6-root .mg6-ring-field__ring:nth-child(n+7) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-hero__shimmer-beam { display: none; }
  #morgen-v6-root .mg6-ring-field { opacity: .46; }
  #morgen-v6-root .mg6-menu-toggle__line,
  #morgen-v6-root .mg6-nav__chevron { transition: none; }
}

/* Deterministic no-JavaScript ring placement; JavaScript varies these values per activation. */
#morgen-v6-root .mg6-ring-field__ring { display: block; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(1) { --mg6-ring-x: 82%; --mg6-ring-y: 8%; --mg6-ring-size: 260px; --mg6-ring-opacity: .13; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(2) { --mg6-ring-x: 101%; --mg6-ring-y: 40%; --mg6-ring-size: 330px; --mg6-ring-opacity: .1; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(3) { --mg6-ring-x: 73%; --mg6-ring-y: 72%; --mg6-ring-size: 190px; --mg6-ring-opacity: .15; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(4) { --mg6-ring-x: 92%; --mg6-ring-y: 96%; --mg6-ring-size: 250px; --mg6-ring-opacity: .08; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(5) { --mg6-ring-x: 58%; --mg6-ring-y: 18%; --mg6-ring-size: 130px; --mg6-ring-opacity: .09; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(6) { --mg6-ring-x: 16%; --mg6-ring-y: 88%; --mg6-ring-size: 180px; --mg6-ring-opacity: .06; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(7) { --mg6-ring-x: 38%; --mg6-ring-y: -4%; --mg6-ring-size: 140px; --mg6-ring-opacity: .07; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(8) { --mg6-ring-x: -4%; --mg6-ring-y: 48%; --mg6-ring-size: 230px; --mg6-ring-opacity: .055; }
#morgen-v6-root .mg6-ring-field__ring:nth-child(9) { --mg6-ring-x: 48%; --mg6-ring-y: 106%; --mg6-ring-size: 210px; --mg6-ring-opacity: .06; }

@media (max-width: 980px) and (prefers-reduced-motion: no-preference) {
  #morgen-v6-root.mg6-js-ready .mg6-drawer:not([hidden]) {
    animation-name: mg6-drawer-side-in;
    animation-duration: 260ms;
    animation-timing-function: var(--mg6-ease);
    animation-fill-mode: both;
  }
  @keyframes mg6-drawer-side-in {
    from { opacity: 0; transform: translateX(18px) scale(.992); }
    to { opacity: 1; transform: translateX(0) scale(1); }
  }
}
@media (max-width: 560px) and (prefers-reduced-motion: no-preference) {
  #morgen-v6-root.mg6-js-ready .mg6-drawer:not([hidden]) {
    animation-name: mg6-drawer-sheet-in;
    animation-duration: 260ms;
    animation-timing-function: var(--mg6-ease);
    animation-fill-mode: both;
  }
  @keyframes mg6-drawer-sheet-in {
    from { opacity: 0; transform: translateY(18px) scale(.992); }
    to { opacity: 1; transform: translateY(0) scale(1); }
  }
}

/* Morgen Core 2.24.3 — V6 parent disclosure rendering repair. */
#morgen-v6-root .mg6-nav__item--has-children .mg6-nav__toggle {
  color: var(--mg6-ink-mid);
  opacity: 1;
}
#morgen-v6-root .mg6-nav__item--has-children .mg6-nav__chevron {
  display: block;
  min-width: 13px;
  min-height: 13px;
}
#morgen-v6-root .mg6-drawer__group-toggle svg {
  display: block;
  flex: 0 0 auto;
}

/* Morgen Core 2.24.3 — V6 premium principle card icon system. */
#morgen-v6-root .mg6-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  color: var(--mg6-ink);
  border-radius: 14px;
  background: linear-gradient(150deg, rgba(var(--mg6-amber-rgb, 209, 147, 42), 0.12) 0%, rgba(var(--mg6-amber-rgb, 209, 147, 42), 0.03) 100%);
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-amber-rgb, 209, 147, 42), 0.28);
  transition: transform var(--mg6-duration-base, 260ms) var(--mg6-ease, cubic-bezier(0.4, 0, 0.2, 1)), box-shadow var(--mg6-duration-base, 260ms) var(--mg6-ease, cubic-bezier(0.4, 0, 0.2, 1));
}
#morgen-v6-root .mg6-icon svg {
  display: block;
  width: 32px;
  height: 32px;
}
#morgen-v6-root .mg6-principle-card--iconic {
  display: flex;
  flex-direction: column;
  gap: var(--mg6-space-md, 16px);
}
#morgen-v6-root .mg6-principle-card--iconic .mg6-principle-card__number {
  order: 0;
  margin-bottom: 0;
}
#morgen-v6-root .mg6-principle-card--iconic .mg6-icon {
  order: 1;
  margin: 4px 0 0;
}
#morgen-v6-root .mg6-principle-card--iconic h3 {
  order: 2;
}
#morgen-v6-root .mg6-principle-card--iconic > p {
  order: 3;
}
#morgen-v6-root .mg6-principle-card--iconic .morgen-benefit-body {
  order: 2;
  display: flex;
  flex-direction: column;
  gap: var(--mg6-space-xs, 8px);
}
#morgen-v6-root .mg6-principle-card--iconic:hover .mg6-icon,
#morgen-v6-root .mg6-principle-card--iconic:focus-within .mg6-icon {
  transform: translateY(-2px) scale(1.03);
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-amber-rgb, 209, 147, 42), 0.55), 0 8px 20px -12px rgba(var(--mg6-amber-rgb, 209, 147, 42), 0.65);
}
@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-icon { transition: none; }
  #morgen-v6-root .mg6-principle-card--iconic:hover .mg6-icon,
  #morgen-v6-root .mg6-principle-card--iconic:focus-within .mg6-icon { transform: none; }
}

/* Morgen Core 2.24.5 — full-bleed six-panel V6 track, zero-edge layout, and consistent numbering badges. */
#morgen-v6-root,
#morgen-v6-root #mg6-main {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
}

#morgen-v6-root .mg6-hero__slide.is-visual-active .mg6-hero__shimmer { opacity: 1; }
#morgen-v6-root .mg6-hero__slide.is-visual-active .mg6-hero__shimmer-beam {
  animation: mg6-hero-shimmer-pass var(--mg6-shimmer-duration, 8s) cubic-bezier(.22,.61,.36,1) var(--mg6-shimmer-delay, .6s) both;
}
#morgen-v6-root [data-mg6-carousel] { touch-action: pan-y pinch-zoom; }

/* Number markers share one rounded-square badge model throughout V6 pages. */
#morgen-v6-root :is(
  .mg6-principle-card__number,
  .mg6-application-card__index,
  .mg6-home-family-card__number,
  .mg6-technical-row__index,
  .mg6-not-found__index,
  .morgen-benefit-grid .morgen-benefit-marker,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-inputs > div > span,
  .mg6-selection-sequence li > span,
  .mg6-integrity-steps li > span,
  .mg6-application-review__steps li > span,
  .mg6-verification-steps li > span,
  .mg6-product-stage__trust li > span,
  .mg6-process-grid li > span
) {
  display: inline-flex;
  width: max-content;
  min-width: 34px;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  padding: 6px 9px;
  border: 1px solid rgba(var(--mg6-amber-rgb), .32);
  border-radius: var(--mg6-number-radius);
  background: rgba(var(--mg6-amber-rgb), .09);
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-ui);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
  letter-spacing: .06em;
  line-height: 1;
}

#morgen-v6-root :is(
  .mg6-selection-sequence li > span,
  .mg6-process-list--dark > div > span,
  .mg6-process-grid li > span
) {
  border-color: rgba(var(--mg6-on-dark-rgb), .24);
  background: rgba(var(--mg6-on-dark-rgb), .09);
  color: var(--mg6-on-dark);
}

@media (max-width: 560px) {
  #morgen-v6-root :is(
    .mg6-principle-card__number,
    .mg6-application-card__index,
    .mg6-home-family-card__number,
    .mg6-technical-row__index,
    .mg6-not-found__index,
    .morgen-benefit-grid .morgen-benefit-marker,
    .mg6-process-list > div > span,
    .mg6-decision-points > div > span,
    .mg6-selection-inputs > div > span,
    .mg6-selection-sequence li > span,
    .mg6-integrity-steps li > span,
    .mg6-application-review__steps li > span,
    .mg6-verification-steps li > span,
    .mg6-product-stage__trust li > span,
    .mg6-process-grid li > span
  ) {
    min-width: 32px;
    min-height: 28px;
    padding: 5px 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-hero__track,
  #morgen-v6-root .mg6-hero__track.is-jumping {
    transition: none;
  }
}

@media print {
  body.morgen-core-v6-body { overflow: visible; }
  #morgen-v6-root .mg6-hero {
    width: 100%;
    min-height: 0;
    margin: 0;
    overflow: visible;
    contain: none;
  }
  #morgen-v6-root .mg6-hero__track,
  #morgen-v6-root .mg6-hero__track.is-jumping {
    position: static;
    display: block;
    width: auto;
    height: auto;
    transform: none;
    transition: none;
  }
  #morgen-v6-root .mg6-hero__slide,
  #morgen-v6-root .mg6-hero__slide.is-prev {
    position: static;
    display: none;
    width: auto;
    min-width: 0;
    height: auto;
    overflow: visible;
  }
  #morgen-v6-root .mg6-hero__slide.is-active { display: block; }
  #morgen-v6-root .mg6-hero__media,
  #morgen-v6-root .mg6-hero__overlay { position: static; }
}

/* Morgen Core 2.24.6 — V6 card structure, number badge, about page content, and Figma hero carousel.
 * ─────────────────────────────────────────────────────────────────────────────────────────────────
 * Fixes four issues reported against V6:
 *   1. Card render structure: ensure principle cards render with the correct
 *      token-driven border-radius and the amber top-stripe ::before pseudo.
 *   2. Number badge: the unified badge rule must not be overridden by the older
 *      display:block / font-size:xl declaration; restore the rounded-square badge
 *      styling for .mg6-principle-card__number with explicit scoped overrides.
 *   3. About page card content: add the missing morgen-benefit-grid layout
 *      CSS for the #morgen-v6-root context (card grid, card header, icon row,
 *      heading, and body areas).
 *   4. Hero carousel Figma UX: at rest the hero shows one full-bleed slide;
 *      when the carousel is moving (is-moving class added by JS) the track
 *      introduces a gap between slides so the next/prev slide peeks in
 *      with rounded corners, matching the Figma Frame 376 specification.
 * No !important declarations are added.
 */

/* ─── 1. CARD RENDER STRUCTURE ─────────────────────────────────────────────
 * Harden the border-radius and box-shadow on principle cards so that the
 * 2.24.1 tokens are always applied regardless of specificity order. The
 * border-top override (border-top: 4px solid amber from the base rule at
 * line 622) is replaced by the ::before stripe; reset it explicitly. */

#morgen-v6-root .mg6-principle-card {
  border-top: 1px solid var(--mg6-neutral-border, rgba(13, 27, 37, .11));
  border-radius: var(--mg6-radius-xl, 24px);
  box-shadow: var(--mg6-shadow-soft, 0 18px 54px -38px rgba(7, 32, 48, .34));
  overflow: hidden;
}

/* Stripe pseudo: inset from top-left and top-right with pill ends. */
#morgen-v6-root .mg6-principle-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 24px;
  left: 24px;
  height: 3px;
  border-radius: 0 0 var(--mg6-radius-pill) var(--mg6-radius-pill);
  background: var(--mg6-amber);
  pointer-events: none;
}


/* ─── 2. NUMBER BADGE ──────────────────────────────────────────────────────
 * The base .mg6-principle-card__number rule sets display:block and a large
 * font-size. Those conflict with the unified badge system. Re-declare the
 * conflicting properties here so they appear last in the cascade. */

#morgen-v6-root .mg6-principle-card__number {
  display: inline-flex;
  width: max-content;
  min-width: 34px;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  padding: 6px 9px;
  border: 1px solid rgba(var(--mg6-amber-rgb), .32);
  border-radius: var(--mg6-number-radius, 8px);
  background: rgba(var(--mg6-amber-rgb), .09);
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-ui);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
  letter-spacing: .06em;
  line-height: 1;
  margin-bottom: var(--mg6-space-md);
}

#morgen-v6-root .mg6-section--dark .mg6-principle-card__number {
  border-color: rgba(var(--mg6-on-dark-rgb), .24);
  background: rgba(var(--mg6-on-dark-rgb), .09);
  color: var(--mg6-on-dark);
}

/* ─── 2b. BADGE COLOR — dark-surface variant ────────────────────────────────
 * When morgen-benefit-grid appears inside the dark why-panel or any
 * mg6-section--dark, the default amber-deep badge colour is too dark to read.
 * Switch to light-on-dark values; heading and body also need the on-dark ramp. */

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-marker,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-marker {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background: rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-card,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-card {
  border-color: rgba(var(--mg6-on-dark-rgb), .14);
  background: rgba(var(--mg6-on-dark-rgb), .055);
  box-shadow: none;
}

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-card::before,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-card::before {
  background: rgba(var(--mg6-amber-rgb), .72);
}

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-heading,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-heading {
  color: var(--mg6-on-dark);
}

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-body,
#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-body p,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-body,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-body p {
  color: rgba(var(--mg6-on-dark-rgb), .72);
}

#morgen-v6-root .mg6-why-panel .morgen-benefit-grid .morgen-benefit-icon,
#morgen-v6-root .mg6-section--dark .morgen-benefit-grid .morgen-benefit-icon {
  background: rgba(var(--mg6-on-dark-rgb), .08);
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-on-dark-rgb), .22);
  color: var(--mg6-on-dark);
}

/* ─── 3. ABOUT PAGE — morgen-benefit-grid ──────────────────────────────────
 * The shared foundation CSS sets custom-property variables for v6 but does
 * not define the visual layout. Add the full grid + card layout here. */

#morgen-v6-root .morgen-benefit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--mg6-space-lg);
}

#morgen-v6-root .morgen-benefit-grid--3col {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#morgen-v6-root .morgen-benefit-grid--2col {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--mg6-space-md);
  padding: var(--mg6-space-xl) var(--mg6-space-lg);
  border: 1px solid var(--mg6-neutral-border, rgba(13, 27, 37, .11));
  border-radius: var(--mg6-radius-xl, 24px);
  background: var(--mg6-surface);
  box-shadow: var(--mg6-shadow-soft, 0 18px 54px -38px rgba(7, 32, 48, .34));
  overflow: hidden;
  transition:
    box-shadow var(--mg6-duration-base) var(--mg6-ease),
    transform var(--mg6-duration-base) var(--mg6-ease);
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 24px;
  left: 24px;
  height: 3px;
  border-radius: 0 0 var(--mg6-radius-pill) var(--mg6-radius-pill);
  background: var(--mg6-amber);
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  #morgen-v6-root .morgen-benefit-grid .morgen-benefit-card:hover {
    box-shadow: 0 30px 70px -44px rgba(7, 32, 48, .44);
    transform: translateY(-3px);
  }
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-header {
  display: flex;
  flex-direction: column;
  gap: var(--mg6-space-md);
  align-items: flex-start;
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-marker {
  display: inline-flex;
  width: max-content;
  min-width: 34px;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  padding: 6px 9px;
  border: 1px solid rgba(var(--mg6-amber-rgb), .32);
  border-radius: var(--mg6-number-radius, 8px);
  background: rgba(var(--mg6-amber-rgb), .09);
  color: var(--mg6-amber-deep);
  font-family: var(--mg6-font-ui);
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
  letter-spacing: .06em;
  line-height: 1;
  flex-shrink: 0;
  align-self: flex-start;
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: linear-gradient(
    150deg,
    rgba(var(--mg6-amber-rgb), .12) 0%,
    rgba(var(--mg6-amber-rgb), .03) 100%
  );
  box-shadow: inset 0 0 0 1px rgba(var(--mg6-amber-rgb), .28);
  color: var(--mg6-ink);
  flex-shrink: 0;
  transition:
    transform var(--mg6-duration-base) var(--mg6-ease),
    box-shadow var(--mg6-duration-base) var(--mg6-ease);
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-icon svg {
  display: block;
  width: 28px;
  height: 28px;
}

@media (hover: hover) and (pointer: fine) {
  #morgen-v6-root .morgen-benefit-grid .morgen-benefit-card:hover .morgen-benefit-icon {
    transform: translateY(-2px) scale(1.04);
    box-shadow:
      inset 0 0 0 1px rgba(var(--mg6-amber-rgb), .52),
      0 8px 20px -12px rgba(var(--mg6-amber-rgb), .62);
  }
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-heading {
  margin: 0;
  color: var(--mg6-ink);
  font-size: var(--mg6-text-base);
  font-weight: var(--mg6-weight-semibold);
  line-height: var(--mg6-leading-snug);
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-body {
  flex: 1;
  min-width: 0;
  color: var(--mg6-ink-mid);
  font-size: var(--mg6-text-sm);
  line-height: var(--mg6-leading-base);
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-body p {
  margin-bottom: 0;
  color: var(--mg6-ink-mid);
}

@media (min-width: 601px) {
  #morgen-v6-root .morgen-benefit-grid--about .morgen-benefit-heading {
    display: block;
    min-block-size: var(--morgen-benefit-heading-min, 3.55em);
  }
}

/* Welcome section (home page, 4-up principle grid) */
#morgen-v6-root .morgen-benefit-grid--welcome {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Why section (home page, dark panel, 2-up grid) */
#morgen-v6-root .morgen-benefit-grid--home {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1024px) {
  #morgen-v6-root .morgen-benefit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  #morgen-v6-root .morgen-benefit-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .morgen-benefit-grid .morgen-benefit-icon,
  #morgen-v6-root .morgen-benefit-grid .morgen-benefit-card {
    transition: none;
  }
  #morgen-v6-root .morgen-benefit-grid .morgen-benefit-card:hover .morgen-benefit-icon {
    transform: none;
  }
}


/* ─── 4. HERO CAROUSEL — Figma UX (Frame 375 / Frame 376) ─────────────────
 *
 * Frame 375 — INIT / NO NAVIGATE
 *   One full-width slide fills the entire hero stage. No gap, no border-radius,
 *   no visible spacing. The hero is flush and full-bleed.
 *
 * Frame 376 — SLIDING (is-moving class on .mg6-hero)
 *   The JS adds `is-moving` to the carousel when a navigation begins and
 *   removes it when the slide transition completes. While active:
 *     • A gap (--mg6-hero-gap: 20px) opens between the flex slide panels
 *       via the track's `gap` property, making the incoming slide visually
 *       separate from the outgoing one.
 *     • Each slide gets a border-radius so the panels read as rounded cards
 *       travelling across the stage.
 *     • The JS reads --mg6-hero-gap from computed styles and compensates the
 *       translate3d offset so the target slide lands flush at the left edge.
 *
 * No !important declarations are used.
 * ─────────────────────────────────────────────────────────────────────────── */

/* Gap token — constant 20 px at all times. A fixed, non-animated gap means
 * arrangeTransition() (called before is-moving) and animateTrack() (called
 * after is-moving) always read the same value. The flex layout never shifts
 * during a translate3d animation so the two do not compete. */
#morgen-v6-root .mg6-hero {
  --mg6-hero-gap: 20px;
}

/* Track: only transition the transform. The gap is now constant so a gap
 * transition is no longer needed and would introduce a competing layout
 * change that makes slides feel unnatural. */
#morgen-v6-root .mg6-hero__track {
  gap: var(--mg6-hero-gap);
  transition: transform var(--mg6-hero-slide-duration) var(--mg6-hero-slide-ease);
}

/* Suppress ALL transitions during an instant reposition (JS sets is-jumping). */
#morgen-v6-root .mg6-hero__track.is-jumping {
  transition: none;
}

/* Slides: consistent border-radius at all times. In the peek-carousel layout
 * slides read as contained card panels regardless of motion state.
 * overflow:hidden is re-stated here to ensure inner imagery clips to the
 * radius even when later rules change the radius value. */
#morgen-v6-root .mg6-hero__slide {
  border-radius: clamp(8px, 0.85vw, var(--mg6-radius-lg, 12px));
  overflow: hidden;
}

/* Accessibility: reduced-motion — JS skips to finishTransition immediately.
 * The gap is constant so there is no layout jitter for any motion preference. */
@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-hero__track {
    transition: none;
  }
}

/* Print: no border-radius needed on static output. */
@media print {
  #morgen-v6-root .mg6-hero__slide {
    border-radius: 0;
  }
}

/* Morgen Core 2.24.8 — V6 hero full-bleed, badge vertical-align fix, and process-grid contrast.
 * ─────────────────────────────────────────────────────────────────────────────────────────────────
 * Resolves four V6 rendering regressions reported against the v2.24.7 build:
 *
 *   1. Hero full-bleed layout: the hero was constrained to --mg6-shell-width (capped at 1440px)
 *      and rendered as a boxed card with rounded corners and a drop-shadow. It now spans the
 *      full viewport width at all breakpoints. Text content stays contained via the existing
 *      .mg6-hero__overlay-inner shell sizing. Border-radius and box-shadow removed.
 *
 *   2. (Template) Redundant number markers on icon-cards: the .mg6-principle-card--iconic
 *      cards on the home welcome section and about page carried both a .morgen-benefit-marker
 *      number badge AND a .morgen-benefit-icon. Number badge removed from those cards in the
 *      PHP templates (page-home.php, page-about.php). No CSS change needed for this item.
 *
 *   3. Badge pill vertical stretch: the unified badge :is() block sets display:inline-flex
 *      but omits align-self. Inside a grid container with the default align-items:stretch,
 *      the badge element stretches to fill the full row height (application-review steps).
 *      Fix: add align-self:start to the shared badge token rule. Also correct the
 *      application-review step span font-size, which the old rule left at clamp(28px,…,38px).
 *
 *   4. Process-grid badge contrast: on the dark panel background the unified rule assigned
 *      color:var(--mg6-amber-deep) which is too dark to read. The dark-context override
 *      in 2.24.5 corrected this, but is reinforced here with higher specificity so no
 *      later rule can silently reintroduce the regression.
 *
 * No !important declarations are used.
 */

/* ─── 1. HERO — full-bleed layout ──────────────────────────────────────────── */

/* Remove the shell-width constraint, border-radius, and box-shadow so the
 * hero carousel spans 100% of the viewport. The 100vw + calc(50% - 50vw)
 * technique breaks out of any centred container at all breakpoints.
 * margin-top is removed so the carousel sits flush beneath the sticky header. */
#morgen-v6-root .mg6-hero {
    width: 100vw;
    max-width: 100vw;
    min-width: 0;
    margin-top: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    border-radius: 0;
    border: 0;
    box-shadow: none;
    background: var(--mg6-surface);
}

/* Overlay inner: use the shell variable so the editorial copy stays within
 * the reading column even though the visual now bleeds to the viewport edge. */
#morgen-v6-root .mg6-hero__overlay-inner {
  width: var(--mg6-shell-width);
  max-width: var(--mg6-shell-max);
  padding-inline: 0;
}

/* Tablet breakpoint override — maintain the 100vw breakout and zero out
 * the border-radius and margin-top that the earlier (max-width:1024px)
 * breakpoint re-introduces. */
@media (max-width: 1024px) {
  #morgen-v6-root .mg6-hero {
    width: 100vw;
    max-width: 100vw;
    margin-top: 0;
    margin-left:  calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    border-radius: 0;
  }
}

/* Mobile breakpoint override — the (max-width:600px) block previously set
 * width:calc(100% - 24px) and border-radius:var(--mg6-radius-md). Both are
 * reset to full-bleed values using the 100vw breakout technique. The
 * overlay-inner retains its 24px side padding so copy never runs edge-to-edge. */
@media (max-width: 600px) {
  #morgen-v6-root .mg6-hero {
    width: 100vw;
    max-width: 100vw;
    margin-top: 0;
    margin-left:  calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    border-radius: 0;
  }
  #morgen-v6-root .mg6-hero__overlay-inner {
    width: calc(100% - 24px);
  }
}

/* Removed 2.24.9: the is-moving border-radius:0 override that was cancelling
 * the always-on slide radius. Slides now carry a consistent clamp() radius
 * at all states; see the carousel block above. */


/* ─── 3. BADGE PILL — vertical alignment fix ─────────────────────────────── */

/* align-self:start was missing from the unified badge rule. Without it, any
 * badge that is a direct child of a CSS Grid row inherits align-items:stretch
 * and bloats vertically to match the row height. This single declaration
 * targets the identical :is() argument list used in the canonical badge block
 * (added in 2.24.5 at line 3718) and fixes the alignment for all contexts. */
#morgen-v6-root :is(
  .mg6-principle-card__number,
  .mg6-application-card__index,
  .mg6-home-family-card__number,
  .mg6-technical-row__index,
  .mg6-not-found__index,
  .morgen-benefit-grid .morgen-benefit-marker,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-inputs > div > span,
  .mg6-selection-sequence li > span,
  .mg6-integrity-steps li > span,
  .mg6-application-review__steps li > span,
  .mg6-verification-steps li > span,
  .mg6-product-stage__trust li > span,
  .mg6-process-grid li > span
) {
  align-self: start;
  /* Also cap the height so no external rule can force the pill to grow. */
  height: auto;
}

/* The application-review step span had font-size:clamp(28px,2.6vw,38px) from
 * the original section rule (line 562). That large size was not reliably
 * overridden by the unified badge block in all browsers. Explicitly reset here
 * to the badge token values so the pill renders at the correct compact size. */
#morgen-v6-root .mg6-application-review__steps li > span {
  font-size: var(--mg6-text-xs);
  font-family: var(--mg6-font-ui);
  font-weight: var(--mg6-weight-black);
  line-height: 1;
}

/* Mobile: match the 560px compact-badge override from 2.24.5. */
@media (max-width: 560px) {
  #morgen-v6-root .mg6-application-review__steps li > span {
    min-width: 32px;
    min-height: 28px;
    padding: 5px 8px;
  }
}


/* ─── 4. PROCESS-GRID BADGE — dark-panel contrast reinforcement ───────────── */

/* The unified badge rule (line 3745) sets color:var(--mg6-amber-deep) on all
 * badges, including those on the dark process-panel. amber-deep (#1a5c7a) is
 * nearly invisible against the dark background (#073B5C). The 2.24.5 dark
 * override corrected this for the :is() block, but is vulnerable to cascade
 * reordering. Declare here with an explicit class selector so the specificity
 * is unambiguous and cannot be silently reverted. */
#morgen-v6-root .mg6-process-panel .mg6-process-grid li > span {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background: rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

/* ═══════════════════════════════════════════════════════════════════════════
 * Morgen Core 2.24.8-r1 — Mandatory UI Audit Patch
 * ───────────────────────────────────────────────────────────────────────────
 * Addresses four regression items from the V6 frontend audit:
 *
 *   FIX-1  Hero slider full-bleed — remove every remaining container
 *           constraint so the slider track spans 100vw at all breakpoints.
 *           Uses the margin-left: calc(50% - 50vw) technique when the hero
 *           is placed inside a shell; text content is re-contained via the
 *           overlay-inner shell wrapper.
 *
 *   FIX-2  Iconic principle cards — hide the redundant .mg6-principle-card__number
 *           badge when the card already carries a .morgen-benefit-icon or the
 *           card class is .mg6-principle-card--iconic. Icon is the sole visual
 *           anchor; the number badge is removed from view.
 *
 *   FIX-3  Badge box-model — harden the pill / rounded-square geometry by
 *           adding explicit box-sizing, capping width at max-content, and
 *           ensuring the display contract is always inline-flex so the CSS
 *           engine cannot collapse the element into a single stretched line.
 *
 *   FIX-4  Badge text contrast on dark surfaces — ensure the badge foreground
 *           color is always the on-dark token when the badge appears inside a
 *           dark section or the why-panel. The rule from 2.24.5 is restated
 *           with a higher-specificity selector so no subsequent generic rule
 *           can override it.
 *
 * No !important declarations are used. All fixes are additive overrides
 * that sit after every earlier rule in the cascade.
 * ═══════════════════════════════════════════════════════════════════════════ */


/* ─── FIX-1 : HERO — true 100vw full-bleed ─────────────────────────────── */

/*
 * Strip every constraint that would narrow the hero below the viewport width.
 * The hero element itself (a direct child of the body-level #morgen-v6-root)
 * must reach from left:0 to right:0 regardless of any wrapping .mg6-shell or
 * similar container.
 */
#morgen-v6-root .mg6-hero {
  /* Dimensions */
  width: 100vw;
  max-width: 100vw;
  min-width: 0;

  /* Break out of any centered shell via negative auto margins */
  margin-top: 0;
  margin-right: calc(50% - 50vw);
  margin-left:  calc(50% - 50vw);

  /* Remove all decorative box-model that implies a contained card */
  border-radius: 0;
  border: 0;
  box-shadow: none;
}

/* The overlay inner re-introduces the reading column constraint so copy
 * does not run edge-to-edge on wide viewports. */
#morgen-v6-root .mg6-hero__overlay-inner {
  width:     var(--mg6-shell-width);
  max-width: var(--mg6-shell-max);
  margin-inline: auto;
  padding-inline: 0;
}

/* Tablet */
@media (max-width: 1024px) {
  #morgen-v6-root .mg6-hero {
    width: 100vw;
    max-width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left:  calc(50% - 50vw);
    border-radius: 0;
  }
}

/* Mobile — at ≤600px the shell already uses calc(100% - 24px), so applying
 * 100vw with negative calc margins guarantees the hero bleeds to the
 * physical screen edges while the overlay-inner applies the 24px gutter. */
@media (max-width: 600px) {
  #morgen-v6-root .mg6-hero {
    width: 100vw;
    max-width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left:  calc(50% - 50vw);
    border-radius: 0;
  }

  #morgen-v6-root .mg6-hero__overlay-inner {
    width: calc(100% - 24px);
  }
}

/* Removed 2.24.9: second conflicting is-moving border-radius:0 block.
 * The peek-carousel layout requires rounded slide panels at all times. */


/* ─── FIX-2 : ICONIC CARDS — remove redundant number badge ─────────────── */

/*
 * .mg6-principle-card--iconic and any .morgen-benefit-card that already
 * carries a .morgen-benefit-icon should not also render a number badge.
 * The icon is the primary visual anchor; the number is UI clutter.
 * Setting display:none is the only change required — no DOM edits needed.
 */
#morgen-v6-root .mg6-principle-card--iconic .mg6-principle-card__number {
  display: none;
}

#morgen-v6-root .morgen-benefit-grid .morgen-benefit-card:has(.morgen-benefit-icon) .morgen-benefit-marker {
  display: none;
}

/*
 * Fallback for browsers without :has() support (Firefox < 121, older Safari).
 * The PHP template should add the class  morgen-benefit-card--has-icon
 * to any card that carries both a marker and an icon. This CSS then hides the
 * marker on those specific cards without relying on :has().
 */
#morgen-v6-root .morgen-benefit-grid .morgen-benefit-card--has-icon .morgen-benefit-marker {
  display: none;
}


/* ─── FIX-3 : BADGE BOX-MODEL — proportionate pill geometry ─────────────── */

/*
 * The unified badge token rule (2.24.5) already sets display:inline-flex,
 * min-width, min-height, padding, and line-height:1. However in some grid
 * contexts where align-items:stretch is inherited, the badge still expands.
 * This block makes the geometry contract truly unbreakable by:
 *   • Explicitly setting box-sizing: content-box (prevents padding from
 *     being folded into the height when a parent uses border-box sizing).
 *   • Setting width: max-content so the badge never grows beyond its text.
 *   • Repeating align-self: start (first added in 2.24.8) at higher specificity.
 *   • Setting flex-shrink: 0 so the badge cannot be squashed in a flex row.
 */
#morgen-v6-root :is(
  .mg6-principle-card__number,
  .mg6-application-card__index,
  .mg6-home-family-card__number,
  .mg6-technical-row__index,
  .mg6-not-found__index,
  .morgen-benefit-grid .morgen-benefit-marker,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-inputs > div > span,
  .mg6-selection-sequence li > span,
  .mg6-integrity-steps li > span,
  .mg6-application-review__steps li > span,
  .mg6-verification-steps li > span,
  .mg6-product-stage__trust li > span,
  .mg6-process-grid li > span
) {
  /* Display contract — must remain inline-flex; never block or inline-block */
  display: inline-flex;
  align-items: center;
  justify-content: center;

  /* Size contract — width from content, height from padding + line-height */
  box-sizing: content-box;
  width: max-content;
  height: auto;
  min-width: 24px;
  min-height: 0;
  padding: 5px 9px;

  /* Typographic contract */
  font-size: var(--mg6-text-xs);
  font-weight: var(--mg6-weight-black);
  line-height: 1.1;

  /* Alignment */
  align-self: start;
  flex-shrink: 0;
}

/* Re-apply the border-radius so the token override cannot be defeated */
#morgen-v6-root :is(
  .mg6-principle-card__number,
  .mg6-application-card__index,
  .mg6-home-family-card__number,
  .mg6-technical-row__index,
  .mg6-not-found__index,
  .morgen-benefit-grid .morgen-benefit-marker,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-inputs > div > span,
  .mg6-selection-sequence li > span,
  .mg6-integrity-steps li > span,
  .mg6-application-review__steps li > span,
  .mg6-verification-steps li > span,
  .mg6-product-stage__trust li > span,
  .mg6-process-grid li > span
) {
  border-radius: var(--mg6-number-radius, 8px);
}

/* The application-review steps had font-size:clamp(28px,2.6vw,38px) from
 * the section rule. This explicit override guarantees badge size. */
#morgen-v6-root .mg6-application-review__steps li > span {
  font-size: var(--mg6-text-xs);
  font-family: var(--mg6-font-ui);
  font-weight: var(--mg6-weight-black);
  line-height: 1.1;
}


/* ─── FIX-4 : BADGE CONTRAST — explicit color on dark surfaces ──────────── */

/*
 * Ensure badge foreground is always legible on dark-section and why-panel
 * backgrounds. The amber-deep token (#1a5c7a) is unreadable on dark-navy.
 * These selectors carry higher specificity than the shared :is() block so
 * they win the cascade regardless of order.
 */

/* Dark section generic */
#morgen-v6-root .mg6-section--dark :is(
  .mg6-principle-card__number,
  .mg6-application-card__index,
  .mg6-home-family-card__number,
  .mg6-technical-row__index,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-sequence li > span,
  .mg6-integrity-steps li > span,
  .mg6-process-grid li > span,
  .morgen-benefit-grid .morgen-benefit-marker
) {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background:   rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

/* Why-panel (dark gradient, not mg6-section--dark) */
#morgen-v6-root .mg6-why-panel :is(
  .mg6-principle-card__number,
  .mg6-process-list > div > span,
  .mg6-decision-points > div > span,
  .mg6-selection-sequence li > span,
  .mg6-process-grid li > span,
  .morgen-benefit-grid .morgen-benefit-marker
) {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background:   rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

/* Process panel dark background */
#morgen-v6-root .mg6-process-panel .mg6-process-grid li > span,
#morgen-v6-root .mg6-process-panel .mg6-process-list > div > span {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background:   rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

/* Dark selection-sequence (inside the dark rail of the selection panel) */
#morgen-v6-root .mg6-selection-panel__rail .mg6-selection-sequence li > span {
  border-color: rgba(var(--mg6-on-dark-rgb), .28);
  background:   rgba(var(--mg6-on-dark-rgb), .10);
  color: var(--mg6-on-dark);
}

/* ─── END AUDIT PATCH ────────────────────────────────────────────────────── */


/* ═══════════════════════════════════════════════════════════════════════════
 * Morgen Core 2.24.9 — V6 hero peek-carousel track architecture
 * ───────────────────────────────────────────────────────────────────────────
 * Resolves the hero track rendering issue where every slide filled 100 % of
 * the viewport width, making the next slide invisible and the carousel
 * indistinguishable from a simple cross-fade.
 *
 * INTENDED LAYOUT (Figma / reference wireframe):
 *   • Hero wrapper spans 100 vw, overflow hidden — the viewport edge is the
 *     clip boundary for the peeking slide.
 *   • Track is anchored to the left edge only (right: auto; width: max-content)
 *     so it can extend beyond the viewport without triggering page scroll.
 *   • A left-side padding equal to half the unused viewport space aligns the
 *     first slide's left edge with the site's content-grid column.
 *   • Each slide is the same width as the content grid (≤ 1360 px) so the
 *     leading edge of the NEXT slide is always visible at the viewport's right
 *     side, confirming that the carousel continues.
 *   • The JS's getSlideWidthPct() helper (added in this release) reads the
 *     rendered slide width and converts it to a percentage of the hero's total
 *     width so that translate3d offsets land the target slide flush-left at the
 *     content-grid column on every viewport size.
 *
 * No !important declarations are used.
 * ═══════════════════════════════════════════════════════════════════════════ */

/* ─── PEEK SLIDE WIDTH TOKEN ────────────────────────────────────────────── */
/*
 * --mg6-peek-slide-w:  width of each visible slide panel.
 *   Upper bound  = 1360 px (the V6 content-grid max-width).
 *   Lower bound  = 100 vw minus 80 px gutter — keeps slides from running
 *                  right off screen on narrow viewports while still leaving
 *                  a visible peek sliver.
 *
 * --mg6-peek-left:  left padding injected into the track so the first slide's
 *   left edge aligns with the content-grid column start.  On viewports wider
 *   than 1360 px this centres the slide; on narrower viewports it collapses
 *   toward the minimum 20 px safe-area inset.
 */
#morgen-v6-root .mg6-hero {
  --mg6-peek-slide-w: min(1360px, calc(100vw - 80px));
  --mg6-peek-left:    max(20px,   calc((100vw - 1360px) / 2));
}

/* ─── TRACK — break out of the hero's right boundary ───────────────────── */
/*
 * The track is positioned absolutely against the hero's left and vertical
 * edges but is explicitly released from the right edge (right: auto).
 * width: max-content lets it grow as wide as all slides + gaps; the hero's
 * overflow: hidden (already set in the base rule) clips it at 100 vw.
 *
 * padding-left positions the first slide at the content-grid column.  The
 * gap token (--mg6-hero-gap: 0 → 20 px while sliding) is already applied
 * by the earlier `gap: var(--mg6-hero-gap)` rule and is also read by the
 * updated JS to compute the correct translate3d offset.
 */
#morgen-v6-root .mg6-hero__track {
  /* Release the right-edge anchor so the track can extend past the viewport */
  position: absolute;
  top: 0;
  left: 0;
  right: auto;     /* overrides the `right: 0` from inset: 0 */
  bottom: 0;
  width: max-content;
  height: 100%;

  /* Align the first slide with the content grid */
  padding-left: var(--mg6-peek-left);
  padding-right: 0;   /* no right padding — slide clips at viewport edge */
}

/* ─── SLIDES — content-grid width so the next slide peeks ──────────────── */
/*
 * Each slide is exactly as wide as the content-grid column.  On large
 * viewports the gap between the slide's right edge and the viewport edge is
 * several dozen pixels — just enough to reveal the leading edge of the next
 * slide.  On small viewports max-width fallback (via --mg6-peek-slide-w)
 * ensures the slide never exceeds the screen.
 */
#morgen-v6-root .mg6-hero__slide {
  flex:      0 0 var(--mg6-peek-slide-w);
  width:     var(--mg6-peek-slide-w);
  min-width: 0;
  height:    100%;
}

/* Overlay inner: the editorial copy column is already contained by the
 * shell-width rule (added in 2.24.8) but re-stated here for explicitness
 * so the text stays within the slide, not the full viewport. */
#morgen-v6-root .mg6-hero__slide .mg6-hero__overlay-inner {
  width:     calc(100% - 48px);
  max-width: 100%;
  padding-inline: 0;
}

/* Responsive — tablet (≤ 1024 px) ---------------------------------------- */
@media (max-width: 1024px) {
  #morgen-v6-root .mg6-hero {
    --mg6-peek-slide-w: min(1360px, calc(100vw - 60px));
    --mg6-peek-left:    max(16px,   calc((100vw - 1360px) / 2));
  }
}

/* Responsive — mobile (≤ 600 px) ------------------------------------------ */
@media (max-width: 600px) {
  #morgen-v6-root .mg6-hero {
    --mg6-peek-slide-w: calc(100vw - 48px);
    --mg6-peek-left:    16px;
  }

  #morgen-v6-root .mg6-hero__slide .mg6-hero__overlay-inner {
    width: calc(100% - 24px);
  }
}

/* Removed 2.24.9: reduced-motion gap override is no longer needed.
 * --mg6-hero-gap is now a constant 20 px on .mg6-hero and is not toggled
 * by is-moving, so there is no gap animation to suppress here. */

/* ─── END PEEK CAROUSEL ──────────────────────────────────────────────────── */


/* ═══════════════════════════════════════════════════════════════════════════
 * Morgen Core 2.24.9 — Splide Hero Integration
 *
 * Hero width/margin are now set as inline styles by initSplideHero() in JS,
 * which always wins over any stylesheet. These CSS rules handle only what JS
 * cannot reach: track reset, list height, slide flex, and pagination chrome.
 *
 * Selectors use .splide.mg6-hero (2 classes) to beat all prior single-class
 * overrides without needing !important.
 * ═══════════════════════════════════════════════════════════════════════════ */

/* ── Track: let Splide own geometry ──────────────────────────────────────── */
#morgen-v6-root .splide.mg6-hero .splide__track {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  padding: 20px !important;
  transform: none;
  will-change: auto;
  overflow: hidden;
}

/* ── List: fill full hero height ─────────────────────────────────────────── */
#morgen-v6-root .splide.mg6-hero .splide__list {
  height: 100%;
}

@media (max-width: 1024px) {
    #morgen-v6-root .splide.mg6-hero .splide__list {
        height: 85vh;
    }
}

/* ── Slides: flex-basis auto so Splide's fixedWidth inline style works ────── *
 *  The base rule flex:0 0 100% locks flex-basis and ignores the `width`      *
 *  property. Setting flex-basis:auto here makes the item use its `width`     *
 *  so Splide's style="width:Xpx" (set by fixedWidth option) takes effect.   *
 * ─────────────────────────────────────────────────────────────────────────── */
#morgen-v6-root .splide.mg6-hero .splide__slide {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

#morgen-v6-root .splide.mg6-hero .splide__slide.is-active,
#morgen-v6-root .splide.mg6-hero .splide__slide.is-visible {
  pointer-events: auto;
}

/* ── Overlay-inner: constrain to slide width, not shell-width ─────────────── */
#morgen-v6-root .splide.mg6-hero .mg6-hero__overlay-inner {
  width: calc(100% - 64px);
  max-width: 100%;
  padding-inline: 0;
}

/* ── Pagination ──────────────────────────────────────────────────────────── */
#morgen-v6-root .splide.mg6-hero .splide__pagination {
  position: absolute;
  bottom: 35px;
  left: 50%;
  z-index: 7;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 8px;
  transform: translateX(-50%);
}

#morgen-v6-root .splide.mg6-hero .splide__pagination li {
  display: contents;
}

#morgen-v6-root .splide.mg6-hero .splide__pagination__page.is-active {
  background: var(--mg6-on-dark);
  transform: scaleY(1.4);
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
  #morgen-v6-root .splide.mg6-hero .mg6-hero__overlay-inner {
    width: calc(100% - 24px);
  }
  #morgen-v6-root .splide.mg6-hero .splide__pagination {
    bottom: 10px;
  }
}

/* ─── END SPLIDE HERO INTEGRATION ───────────────────────────────────────── */

/* ═══════════════════════════════════════════════════════════════════════════
   V6 PAGE GALLERY — dedicated section below the hero
   ═══════════════════════════════════════════════════════════════════════════ */

#morgen-v6-root .mg6-page-gallery-section {
  position: relative;
  padding: clamp(64px, 8vw, 120px) 0 clamp(72px, 9vw, 132px);
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 4%, rgba(var(--mg6-amber-rgb), .16), transparent 30%),
    radial-gradient(circle at 10% 88%, rgba(var(--mg6-primary-rgb), .08), transparent 34%),
    linear-gradient(180deg, var(--mg6-surface) 0%, var(--mg6-surface-warm) 100%);
}

#morgen-v6-root .mg6-page-gallery-section::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  background-image: linear-gradient(rgba(var(--mg6-ink-rgb), .025) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--mg6-ink-rgb), .025) 1px, transparent 1px);
  background-size: 64px 64px;
  -webkit-mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
  mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
}

#morgen-v6-root .mg6-page-gallery-section__head {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
  gap: clamp(28px, 5vw, 88px);
  align-items: end;
  margin-bottom: clamp(32px, 5vw, 58px);
}

#morgen-v6-root .mg6-page-gallery-section__head .mg6-eyebrow {
  margin-bottom: var(--mg6-space-md);
}

#morgen-v6-root .mg6-page-gallery-section__title {
  max-width: 820px;
  margin: 0;
  font-size: clamp(34px, 4.5vw, 64px);
  line-height: 1.02;
  letter-spacing: -.035em;
}

#morgen-v6-root .mg6-page-gallery-section__lede {
  max-width: 620px;
  margin: 0 0 4px;
  color: var(--mg6-ink-muted);
  font-size: clamp(16px, 1.35vw, 20px);
  line-height: 1.65;
}

#morgen-v6-root .mg6-page-gallery-panel {
  position: relative;
  z-index: 2;
  width: min(1760px, calc(100vw - 48px));
  margin-left: 50%;
  padding: clamp(10px, 1vw, 16px);
  overflow: hidden;
  border: 1px solid rgba(var(--mg6-ink-rgb), .09);
  border-radius: clamp(26px, 2.5vw, 38px);
  background: rgba(var(--mg6-surface-rgb), .74);
  box-shadow: 0 34px 100px rgba(var(--mg6-dark-rgb), .14), inset 0 1px 0 rgba(255, 255, 255, .7);
  transform: translateX(-50%);
  backdrop-filter: blur(22px) saturate(135%);
}

#morgen-v6-root .mg6-app-gallery {
  position: relative;
  width: 100%;
  min-width: 0;
  overflow: visible;
  border-radius: clamp(20px, 2vw, 30px);
  isolation: isolate;
}

#morgen-v6-root .mg6-app-gallery__track,
#morgen-v6-root .mg6-app-gallery .splide__track {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: clamp(20px, 2vw, 30px);
}

#morgen-v6-root .mg6-app-gallery .splide__list {
  display: flex;
  align-items: stretch;
  margin: 0;
  padding: 0;
}

#morgen-v6-root .mg6-app-gallery__slide,
#morgen-v6-root .mg6-app-gallery .splide__slide {
  position: relative;
  min-width: 0;
  height: auto;
  list-style: none;
  opacity: .72;
  transform: scale(.985);
  transition: opacity 420ms var(--mg6-ease), transform 520ms var(--mg6-ease);
}

#morgen-v6-root .mg6-app-gallery .splide__slide.is-visible {
  opacity: 1;
  transform: scale(1);
}

#morgen-v6-root .mg6-app-gallery__media {
  position: relative;
  width: 100%;
  aspect-ratio: 25 / 16;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(var(--mg6-ink-rgb), .08);
  border-radius: clamp(20px, 2vw, 28px);
  background: var(--mg6-dark-deep);
  box-shadow: 0 22px 50px rgba(var(--mg6-dark-rgb), .18);
  transform: translateZ(0);
  transition: box-shadow 420ms var(--mg6-ease), transform 420ms var(--mg6-ease);
}

#morgen-v6-root .mg6-app-gallery__slide:hover .mg6-app-gallery__media {
  box-shadow: 0 30px 70px rgba(var(--mg6-dark-rgb), .24);
  transform: translateY(-4px);
}

#morgen-v6-root .mg6-app-gallery__img,
#morgen-v6-root .mg6-app-gallery__media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  transform: scale(1.002);
  transition: transform 900ms cubic-bezier(.2, .72, .2, 1), filter 420ms var(--mg6-ease);
}

#morgen-v6-root .mg6-app-gallery__slide:hover .mg6-app-gallery__media img {
  transform: scale(1.035);
  filter: saturate(1.04) contrast(1.02);
}

#morgen-v6-root .mg6-app-gallery__caption {
  position: absolute;
  right: 16px;
  bottom: 16px;
  left: 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  width: max-content;
  max-width: calc(100% - 32px);
  padding: 8px 12px 8px 8px;
  border: 1px solid rgba(var(--mg6-on-dark-rgb), .18);
  border-radius: var(--mg6-radius-pill);
  background: rgba(var(--mg6-dark-rgb), .56);
  color: var(--mg6-on-dark);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .02em;
  box-shadow: 0 10px 30px rgba(var(--mg6-dark-rgb), .18);
  backdrop-filter: blur(16px) saturate(140%);
}

#morgen-v6-root .mg6-app-gallery__index {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  background: rgba(var(--mg6-on-dark-rgb), .16);
  font-variant-numeric: tabular-nums;
}

#morgen-v6-root .mg6-app-gallery .splide__pagination {
  position: relative;
  inset: auto;
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: clamp(20px, 2.5vw, 30px) 0 2px;
  padding: 0;
  list-style: none;
}

#morgen-v6-root .mg6-app-gallery .splide__pagination__page {
  display: block;
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(var(--mg6-ink-rgb), .24);
  cursor: pointer;
  transition: width var(--mg6-duration-base) var(--mg6-ease), background var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-fast) var(--mg6-ease);
}

#morgen-v6-root .mg6-app-gallery .splide__pagination__page:hover,
#morgen-v6-root .mg6-app-gallery .splide__pagination__page:focus-visible {
  background: rgba(var(--mg6-ink-rgb), .5);
  transform: scale(1.15);
}

#morgen-v6-root .mg6-app-gallery .splide__pagination__page.is-active {
  width: 28px;
  border-radius: var(--mg6-radius-pill);
  background: var(--mg6-ink);
  transform: none;
}

#morgen-v6-root .mg6-app-gallery .splide__arrow {
  position: absolute;
  z-index: 5;
  top: calc(50% - 16px);
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid rgba(var(--mg6-on-dark-rgb), .24);
  border-radius: 50%;
  background: rgba(var(--mg6-dark-rgb), .58);
  color: var(--mg6-on-dark);
  cursor: pointer;
  box-shadow: 0 12px 34px rgba(var(--mg6-dark-rgb), .22);
  transform: translateY(-50%);
  backdrop-filter: blur(16px) saturate(140%);
  transition: background var(--mg6-duration-fast) var(--mg6-ease), transform var(--mg6-duration-fast) var(--mg6-ease), opacity var(--mg6-duration-fast) var(--mg6-ease);
}

#morgen-v6-root .mg6-app-gallery .splide__arrow:hover,
#morgen-v6-root .mg6-app-gallery .splide__arrow:focus-visible {
  background: rgba(var(--mg6-dark-rgb), .86);
  transform: translateY(-50%) scale(1.06);
}

#morgen-v6-root .mg6-app-gallery .splide__arrow--prev { left: clamp(12px, 1.5vw, 24px); }
#morgen-v6-root .mg6-app-gallery .splide__arrow--next { right: clamp(12px, 1.5vw, 24px); }
#morgen-v6-root .mg6-app-gallery .splide__arrow svg { width: 18px; height: 18px; fill: currentColor; }

#morgen-v6-root .mg6-banner--application {
  color: var(--mg6-ink);
}

@media (max-width: 1100px) {
  #morgen-v6-root .mg6-page-gallery-section__head {
    grid-template-columns: minmax(0, 1fr) minmax(260px, .78fr);
  }

  #morgen-v6-root .mg6-page-gallery-panel {
    width: calc(100vw - 32px);
  }
}

@media (max-width: 820px) {
  #morgen-v6-root .mg6-page-gallery-section__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  #morgen-v6-root .mg6-page-gallery-section__lede {
    max-width: 680px;
  }
}

@media (max-width: 680px) {
  #morgen-v6-root .mg6-page-gallery-section {
    padding: 52px 0 68px;
  }

  #morgen-v6-root .mg6-page-gallery-section__title {
    font-size: clamp(32px, 10vw, 46px);
  }

  #morgen-v6-root .mg6-page-gallery-panel {
    width: calc(100vw - 16px);
    padding: 8px;
    border-radius: 26px;
  }

  #morgen-v6-root .mg6-app-gallery__media {
    aspect-ratio: 16 / 10;
    border-radius: 20px;
  }

  #morgen-v6-root .mg6-app-gallery__caption {
    right: 12px;
    bottom: 12px;
    left: 12px;
  }

  #morgen-v6-root .mg6-app-gallery .splide__arrow {
    top: calc(50% - 14px);
    width: 42px;
    height: 42px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #morgen-v6-root .mg6-app-gallery__slide,
  #morgen-v6-root .mg6-app-gallery__media,
  #morgen-v6-root .mg6-app-gallery__media img {
    transition-duration: 0ms;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   PDF DOCUMENT CARD — thumbnail cover tiers
   Ticket #989047 — fix stretching / overflow / text overlap
   ═══════════════════════════════════════════════════════════════════════════ */

/* Card layout with cover on top */
#morgen-v6-root .mg6-doc-card {
  display: flex;
  flex-direction: column;
  padding: 0;                  /* cover bleeds to card edge; body gets its own padding */
  overflow: hidden;
}

/* ── Preview area (cover image / SVG fallback) ── */
#morgen-v6-root .mg6-doc-card__preview {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;         /* consistent card ratio */
  overflow: hidden;             /* CRITICAL — nothing bleeds outside */
  flex-shrink: 0;
  background: var(--mg6-surface-warm, #f5f0eb);
}

/* The PDF tag badge */
#morgen-v6-root .mg6-doc-card__filetag {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
  padding: 3px 7px;
  border-radius: var(--mg6-radius-pill, 99px);
  background: var(--mg6-amber, #2E7AA3);
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  pointer-events: none;
}

/* ── Tier 1 & 2: custom or generated cover image ── */
#morgen-v6-root .mg6-doc-card__custom-cover,
#morgen-v6-root .mg6-doc-card__generated-cover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;           /* CRITICAL — no stretching */
  object-position: top center;
  display: block;
}

/* ── Tier 3: live canvas PDF render ── */
#morgen-v6-root .mg6-doc-card__live-cover-shell {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

#morgen-v6-root .mg6-doc-card__live-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
}

/* ── SVG fallback thumbnail ── */
#morgen-v6-root .mg6-doc-thumb {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: 12px;
  background: var(--mg6-surface-warm, #f5f0eb);
  overflow: hidden;
}

#morgen-v6-root .mg6-doc-thumb__masthead {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 6px;
  flex-shrink: 0;
}

#morgen-v6-root .mg6-doc-thumb__masthead small {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mg6-ink-muted, #637b87);
}

#morgen-v6-root .mg6-doc-thumb__masthead strong {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  color: var(--mg6-ink, #0f1c23);
}

#morgen-v6-root .mg6-doc-thumb__stage {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-height: 0;
}

#morgen-v6-root .mg6-doc-thumb__graphic {
  width: 100%;
  height: 100%;
  max-height: 120px;
}

#morgen-v6-root .mg6-doc-thumb__legend {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 6px;
  flex-shrink: 0;
}

#morgen-v6-root .mg6-doc-thumb__legend span {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--mg6-ink, #0f1c23);
}

#morgen-v6-root .mg6-doc-thumb__legend em {
  font-size: 10px;
  font-style: normal;
  color: var(--mg6-ink-muted, #637b87);
}

/* When preview IS an image, hide the fallback behind it */
#morgen-v6-root .mg6-doc-card__preview.has-custom-cover .mg6-doc-thumb,
#morgen-v6-root .mg6-doc-card__preview.has-generated-cover .mg6-doc-thumb,
#morgen-v6-root .mg6-doc-card__preview.has-live-pdf-cover .mg6-doc-thumb {
  opacity: 0;
  pointer-events: none;
}

/* Loading shimmer for cover */
#morgen-v6-root .mg6-doc-card__cover-shimmer {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 20%, rgba(255,255,255,0.22) 50%, transparent 80%);
  background-size: 200% 100%;
  animation: mg6DocShimmer 1.5s linear infinite;
  pointer-events: none;
  z-index: 3;
  transition: opacity 0.3s;
}

#morgen-v6-root .mg6-doc-card__preview[data-cover-state="ready"] .mg6-doc-card__cover-shimmer {
  opacity: 0;
}

@keyframes mg6DocShimmer {
  from { background-position: 200% 0; }
  to   { background-position: -200% 0; }
}

/* ── Card body (text content below cover) ── */
#morgen-v6-root .mg6-doc-card > h3,
#morgen-v6-root .mg6-doc-card > p,
#morgen-v6-root .mg6-doc-card > a,
#morgen-v6-root .mg6-doc-card > .mg6-btn {
  padding-left:  var(--mg6-space-lg, 20px);
  padding-right: var(--mg6-space-lg, 20px);
}

#morgen-v6-root .mg6-doc-card > h3 {
  padding-top: var(--mg6-space-md, 12px);
  font-size: var(--mg6-text-md, 1rem);
  margin-bottom: 4px;
}

#morgen-v6-root .mg6-doc-card > p.mg6-doc-card__meta {
  color: var(--mg6-ink-muted, #637b87);
  font-size: var(--mg6-text-xs, 0.75rem);
  margin-bottom: 4px;
}

/* Description grows to fill remaining space so the button is always
   pushed to the same vertical position regardless of text length.
   flex: 1 0 auto means: grow freely, never shrink, respect content size. */
#morgen-v6-root .mg6-doc-card > p:not(.mg6-doc-card__meta) {
  flex: 1 0 auto;
  font-size: var(--mg6-text-sm, 0.875rem);
  margin-bottom: 0;
}

/* Button sits below the description with a fixed gap — no margin-top: auto
   needed because the description paragraph already absorbs all free space. */
#morgen-v6-root .mg6-doc-card > .mg6-btn {
  margin-top: var(--mg6-space-lg, 20px);
  padding-top: 0;
  align-self: flex-start;
  margin-bottom: var(--mg6-space-lg, 20px);
}

/* ── Responsive — smaller card at narrow viewport ── */
@media (max-width: 600px) {
  #morgen-v6-root .mg6-doc-card__preview {
    aspect-ratio: 3 / 2;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   END V6 V2.24.11 ADDITIONS
   ═══════════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════════
   V6 2.24.14 — PDF CARD UI HARDENING (superseded in part by 2.24.15)
   Ticket: PDF badge contrast + download button spacing
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Legacy __tag badge: override the base rule (line ~802) that sets
   color: var(--mg6-ink) with a higher-specificity selector. ── */
#morgen-v6-root .mg6-doc-card .mg6-doc-card__tag {
  background: var(--mg6-amber, #2E7AA3);
  color: #FFFFFF;
}

/* NOTE: the former ".mg6-doc-card .mg6-btn { margin-top: 0 }" rule was removed
   in 2.24.15 — it had identical specificity to the "> .mg6-btn" rule and, being
   later in the cascade, silently cancelled the bottom alignment. Alignment is
   now owned exclusively by .mg6-doc-card__actions { margin-top: auto }. */

/* ═══════════════════════════════════════════════════════════════════════════
   END V6 2.24.14 ADDITIONS
   ═══════════════════════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════════════════════════════════════════
   V6 2.24.15 — PDF CARD LAYOUT HARDENING
   Bulletproof bottom-aligned "Download PDF" buttons across a row of cards.

   Structure (templates/v6/page-technical-library.php):
     .mg6-doc-card               → flex column, full grid-cell height
       .mg6-doc-card__preview    → fixed-ratio cover (does not flex)
       .mg6-doc-card__body       → flex column, flex: 1 1 auto
         h3 / .__meta / .__desc  → natural height
         .mg6-doc-card__actions  → margin-top: auto  ← the only alignment lever
   ═══════════════════════════════════════════════════════════════════════════ */

/* Cards must fill their grid cell, otherwise "bottom" is only the bottom of
   the text and rows never line up. */
#morgen-v6-root .mg6-doc-grid { align-items: stretch; }

#morgen-v6-root .mg6-doc-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

/* The cover keeps its aspect ratio and never absorbs free space. */
#morgen-v6-root .mg6-doc-card > .mg6-doc-card__preview { flex: 0 0 auto; }

/* Card body is its own flex column that consumes all remaining card height. */
#morgen-v6-root .mg6-doc-card > .mg6-doc-card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  padding: var(--mg6-space-md, 12px) var(--mg6-space-lg, 20px) var(--mg6-space-lg, 20px);
}

#morgen-v6-root .mg6-doc-card__body > .mg6-doc-card__title {
  padding: 0;
  margin: 0 0 4px;
  font-size: var(--mg6-text-md, 1rem);
}

#morgen-v6-root .mg6-doc-card__body > .mg6-doc-card__meta {
  padding: 0;
  margin: 0 0 6px;
  color: var(--mg6-ink-muted, #637b87);
  font-size: var(--mg6-text-xs, 0.75rem);
}

/* Description no longer pushes anything — it just sits at its natural height.
   flex-grow is explicitly disabled so the actions row owns the alignment. */
#morgen-v6-root .mg6-doc-card__body > .mg6-doc-card__desc {
  flex: 0 1 auto;
  padding: 0;
  margin: 0;
  font-size: var(--mg6-text-sm, 0.875rem);
}

/* THE alignment rule: pushes the button wrapper to the bottom edge of the body,
   regardless of excerpt length. */
#morgen-v6-root .mg6-doc-card__body > .mg6-doc-card__actions {
  margin-top: auto;
  padding: var(--mg6-space-lg, 20px) 0 0;
  display: flex;
  align-items: flex-end;
}

#morgen-v6-root .mg6-doc-card__actions > .mg6-btn {
  margin-top: 0;
  margin-bottom: 0;
  align-self: flex-start;
}

/* ── Legacy-DOM fallback ──────────────────────────────────────────────────
   If a cached template still renders the old flat card (no __body wrapper),
   keep the button pinned to the bottom rather than reverting to the broken
   flex-grow-on-paragraph behaviour. */
#morgen-v6-root .mg6-doc-card > .mg6-btn { margin-top: auto; }

/* ═══════════════════════════════════════════════════════════════════════════
   END V6 2.24.15 ADDITIONS
   ═══════════════════════════════════════════════════════════════════════════ */
