/* Original hero relocated to Medienwelt. Existing idx-h selectors and interaction
   action IDs are retained; no dependency on the homepage stylesheet. */
.idx-h {
  --hero-text: #f7f9fc;
  --hero-muted: #b2c9db;
  --hero-accent: #87d9ef;
  position: relative;
  isolation: isolate;
  color: var(--hero-text);
  background: radial-gradient(ellipse at 49% 86%, #14557870, transparent 49%), radial-gradient(ellipse at 4% 44%, #001b32, transparent 46%), linear-gradient(106deg, #05233c, #03213d 40%, #062847 68%, #022343);
}
.idx-h .idx-h-container { position: relative; aspect-ratio: 1672 / 1080; container-type: inline-size; }
.idx-h [hidden] { display: none; }
.idx-h :is(h1, h2, p, figure, ol) { margin: 0; }
.idx-h svg { display: block; flex-shrink: 0; width: 1.15em; height: 1.15em; }
.idx-h button, .idx-h input { font: inherit; }
.idx-h button { color: inherit; cursor: pointer; }
.idx-h button:disabled, .idx-h input:disabled { cursor: default; }
.idx-h-floor { position: absolute; left: 0; bottom: 0; width: 37%; height: 34%; background: url('hero/floor.webp') center / 100% 100% no-repeat; mask-image: linear-gradient(transparent, #000 70%); opacity: .6; pointer-events: none; }
.idx-h-copy { position: absolute; z-index: 10; left: var(--layout-gutter); top: 21%; width: 35.5%; }
.idx-h-eyebrow { margin-bottom: 18px !important; color: #a9dcfa; font-size: 11px; font-weight: 600; line-height: 1.5; letter-spacing: .12em; text-transform: uppercase; }
.idx-h h1 { color: var(--hero-text); font-family: 'Montserrat', sans-serif; font-size: clamp(36px, 3.5cqw, 59px); font-weight: 500; line-height: 1.04; letter-spacing: -.048em; text-shadow: 0 2px 3px #00122444; }
.idx-h h1 span { display: block; }
.idx-h-subtitle { margin-top: 1.2cqw !important; color: #f0f5fb; font-size: clamp(18px, 1.67cqw, 28px); line-height: 1.4; letter-spacing: -.03em; }
.idx-h-lead { max-width: 28cqw; margin-top: 1.2cqw !important; color: var(--hero-muted); font-size: clamp(14px, 1.04cqw, 18px); line-height: 1.6; }
.idx-h-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 22px; margin-top: 1.7cqw; }
.idx-h-intro { max-width: 31cqw; margin-top: 16px !important; color: #c9ddeb; font-size: 14px; line-height: 1.7; }
.idx-h .idx-primary-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 13px 22px; border-radius: 999px; background: var(--action-orange); color: var(--deep-blue); font-size: 15px; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; }
.idx-h .idx-primary-button:hover { background: #FF7A2F; }
.idx-h-text-link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--hero-text); font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 5px; }
.idx-h-text-link:hover { color: var(--hero-accent); }
.idx-h-scene { position: relative; z-index: 2; min-height: 64.6cqw; padding-block: 18.73cqw 22px; pointer-events: none; }
.idx-h-front { position: relative; width: 57.9%; margin-left: 39%; }
.idx-h-scene > * { pointer-events: auto; }
.idx-h-scene::before { content: ''; position: absolute; width: 57%; height: 24%; left: 37%; bottom: 1%; background: radial-gradient(ellipse, #139bd829, transparent 67%); filter: blur(20px); pointer-events: none; }
.idx-h-demo-zone { position: absolute; left: 33%; top: 4%; right: 0; bottom: 0; }
.idx-h-window { position: absolute; border: 1px solid #4bb9e18c; border-radius: .8cqw; background: linear-gradient(142deg, #103852f5, #04243bec 72%); box-shadow: 0 20px 55px #00101b66, inset 0 1px 0 #a7dcff10; }
.idx-h-satellite { padding: 1.05cqw; text-align: left; transform-origin: center; }
.idx-h-satellite:hover:not(:disabled), .idx-h-satellite[aria-pressed="true"] { border-color: #9ae5fa; box-shadow: 0 16px 50px #0f9fdc28, inset 0 1px 0 #a7dcff20; }
.idx-h-satellite--collection { left: 34.5%; top: 7%; width: 33.5%; min-height: 23.5%; transform: rotate(5deg); --world-color: #a4ebd6; border-color: #68bfae8c; }
.idx-h-satellite--campaign { left: 72.2%; top: 7.8%; width: 27%; min-height: 28%; transform: rotate(-5deg); --world-color: #c9b5ff; border-color: #aaa0ee88; }
.idx-h-satellite-title { display: flex; align-items: center; gap: .65cqw; font-size: 1.28cqw; font-weight: 600; line-height: 1.2; }
.idx-h-satellite-title > svg { color: var(--world-color); font-size: 1.3cqw; }
.idx-h-satellite-title > svg:last-child { margin-left: auto; font-size: .9cqw; }
.idx-h-satellite-sub { display: block; margin-top: .52cqw; color: #b2cbdc; font-size: max(11px, .74cqw); line-height: 1.4; }
.idx-h-gallery { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: .45cqw; height: 7cqw; margin-top: .85cqw; }
.idx-h-gallery img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; border: 1px solid #b7cbd02e; border-radius: .28cqw; }
.idx-h-mini-flow { display: flex; align-items: center; gap: .48cqw; margin-top: .8cqw; color: #d9eee8; font-size: max(10px, .72cqw); white-space: nowrap; }
.idx-h-mini-flow > span { padding: .32cqw .46cqw; background: #acdacf10; border: 1px solid #b5e5da23; border-radius: .25cqw; }
.idx-h-mini-flow > svg { width: .65cqw; color: #9dc8c9; }
.idx-h-upload { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: .35cqw; height: 7.6cqw; margin-top: .85cqw; border: 1px dashed #bda5f57d; border-radius: .4cqw; background: #c4b7ff08; color: #d9d3f6; }
.idx-h-upload > svg { margin-bottom: .12cqw; color: #b9a4ed; font-size: 1.8cqw; }
.idx-h-upload strong { font-size: max(12px, .91cqw); font-weight: 500; }
.idx-h-upload small { color: #b6c2df; font-size: max(10px, .67cqw); }
.idx-h-satellite--campaign .idx-h-mini-flow { gap: .3cqw; color: #ddd4f2; font-size: max(10px, .67cqw); }
.idx-h-satellite--campaign .idx-h-mini-flow > span { border-color: #c2b3ed25; background: #bda1fa0d; }
.idx-h-campaign-languages { display: flex; align-items: center; justify-content: space-between; gap: .5cqw; margin-top: .78cqw; color: #c1c7df; font-size: max(10px, .65cqw); }
.idx-h-language-chips { display: flex; gap: .3cqw; }
.idx-h-language-chips span { padding: .22cqw .4cqw; border: 1px solid #a5bed33d; border-radius: .25cqw; color: #dbe9f7; font-size: max(10px, .64cqw); }

/* Middle layer: the media preview stays larger than either rear window. */
.idx-h-workspace { position: relative; z-index: 5; width: 80.138%; transform: rotate(3deg); }
.idx-h-appbar { display: flex; align-items: center; justify-content: space-between; gap: .6cqw; min-height: 2.7cqw; padding: .4cqw 1.1cqw; border-bottom: 1px solid #76a9c135; border-radius: .8cqw .8cqw 0 0; background: #031e3480; color: #bbd7e8; font-size: max(11px, .81cqw); }
.idx-h-appbar > span { display: flex; align-items: center; gap: .6cqw; }
.idx-h-appbar svg { color: #5dcef8; font-size: 1.05cqw; }
.idx-h-appbar small { color: #a8c7db; font-size: max(10px, .65cqw); }
.idx-h-workspace-body { padding: .95cqw 1.1cqw 1.4cqw; }
.idx-h h2 { color: var(--hero-text); font-family: 'Open Sans', sans-serif; font-size: 1.35cqw; font-weight: 600; line-height: 1.25; letter-spacing: -.015em; }
.idx-h-title-row { display: flex; align-items: center; justify-content: space-between; gap: .8cqw; }
.idx-h-title-row > span { padding: .24cqw .45cqw; border: 1px solid #60c7e54a; border-radius: 99px; color: #8cdef6; font-size: max(10px, .65cqw); white-space: nowrap; }
.idx-h-description { margin-top: .34cqw !important; color: #b2cbdc; font-size: max(11px, .78cqw); line-height: 1.4; }
.idx-h-preview-layout { display: grid; grid-template-columns: 43% minmax(0, 1fr); gap: 1cqw; margin-top: .83cqw; }
.idx-h-photo { position: relative; min-width: 0; }
/* The reference scales its photo crop into this frame; keep the full subject, not a center crop. */
.idx-h-photo img { display: block; width: 100%; height: 10.05cqw; object-fit: fill; border: 1px solid #edf1f023; border-radius: .32cqw; }
.idx-h-photo figcaption { position: absolute; left: .5cqw; bottom: .48cqw; max-width: calc(100% - 1cqw); padding: .27cqw .43cqw; border-radius: .25cqw; background: #f9fcf2; color: #03213D; font-size: max(10px, .57cqw); line-height: 1.4; }
.idx-h-routing { display: grid; grid-template-rows: auto auto 1fr; gap: .48cqw; min-width: 0; }
.idx-h-source { display: flex; align-items: center; gap: .65cqw; padding: .55cqw .65cqw; border: 1px solid #92c5e027; border-radius: .4cqw; background: #001d2f66; }
.idx-h-source > svg { color: #ffd466; font-size: 1.15cqw; }
.idx-h-routing strong { display: block; font-size: max(12px, .8cqw); font-weight: 500; line-height: 1.4; }
.idx-h-routing small { display: block; margin-top: .15cqw; color: #b2cbdc; font-size: max(10px, .61cqw); line-height: 1.4; }
.idx-h-capabilities { display: flex; align-items: center; flex-wrap: wrap; gap: .4cqw; }
.idx-h-capabilities > span { display: flex; align-items: center; gap: .3cqw; padding: .38cqw .43cqw; border: 1px solid #69cbed40; border-radius: .3cqw; background: #69cbed13; color: #b3e5f0; font-size: max(10px, .64cqw); line-height: 1.2; }
.idx-h-output { align-self: end; display: flex; align-items: center; gap: .65cqw; padding-top: .55cqw; border-top: 1px solid #8ac8e23d; }
.idx-h-output > svg { color: #77dabd; font-size: 1.3cqw; }
.idx-h-output strong { font-size: max(12px, .85cqw); }
.idx-h-workspace-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: .7cqw; color: #b2cbdc; font-size: max(10px, .64cqw); line-height: 1.4; }
.idx-h-workspace-footer > span:first-child { display: flex; align-items: center; gap: .35cqw; }
.idx-h-workspace-footer i, .idx-h-tour-status i { display: block; flex-shrink: 0; width: 4px; height: 4px; border-radius: 50%; background: #6bd0ac; }

/* Foreground layer: compact desktop controls, native disclosure on small screens. */
.idx-h-builder { position: relative; z-index: 8; width: 93.437%; margin: -.6cqw 0 0 6.563%; padding: .85cqw 1cqw .72cqw; transform: rotate(1.5deg); background: linear-gradient(135deg, #103b53fa, #07283efc 70%); box-shadow: 0 22px 50px #000b1f80, 0 0 45px #0491cb0b; }
.idx-h-builder-summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 32px; padding-right: 190px; list-style: none; cursor: pointer; }
.idx-h-builder-summary::-webkit-details-marker { display: none; }
.idx-h-builder h2 { display: flex; align-items: center; gap: .5cqw; font-size: max(15px, 1.12cqw); font-weight: 500; }
.idx-h-builder h2 svg { color: #64d9fa; font-size: 1.1cqw; }
.idx-h-disclosure-mark::before { content: '+'; font-size: 18px; color: var(--hero-accent); }
.idx-h-builder[open] .idx-h-disclosure-mark::before { content: '−'; }
.idx-h-builder:not([open]) .idx-h-builder-summary { padding-right: 0; }
.idx-h-builder-actions { position: absolute; right: 1cqw; top: .85cqw; display: flex; align-items: center; gap: 8px; }
.idx-h-tour, .idx-h-reset { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 6px 10px; border: 1px solid #72b5d255; border-radius: 99px; background: #48aacf12; }
.idx-h .idx-h-tour { color: #c9e9f6; font-size: 10px; line-height: 1.2; white-space: nowrap; }
.idx-h-tour > [data-tour-symbol] { width: 10px; text-align: center; }
.idx-h-reset { width: 32px; padding: 7px; color: #b1cbdc !important; background: transparent; }
.idx-h-reset svg { width: 16px; height: 16px; }
.idx-h-tour:hover:not(:disabled), .idx-h-reset:hover:not(:disabled) { border-color: #8bdafa; background: #48aacf25; }
.idx-h-help { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; margin-top: .24cqw !important; color: #b2cbdc; font-size: max(10px, .69cqw); line-height: 1.5; }
.idx-h-tour-status { display: inline-flex; align-items: center; gap: 5px; color: var(--hero-accent); white-space: nowrap; }
.idx-h-tour-status i { background: currentColor; }
.idx-h-worlds { display: flex; flex-wrap: wrap; gap: 6px; margin-top: .64cqw; }
.idx-h-worlds button { min-height: 32px; padding: 6px 10px; border: 1px solid #7bacbf40; border-radius: 99px; background: transparent; color: #c5d8e5; font-size: 11px; line-height: 1.2; white-space: nowrap; }
.idx-h-worlds button[aria-pressed="true"] { border-color: #6edcfa9c; background: #57c9f523; color: #d5f4ff; }
.idx-h-modules { display: flex; flex-wrap: wrap; gap: 6px; margin-top: .72cqw; }
.idx-h-modules button { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 6px 8px; border: 1px dashed #88a5b457; border-radius: .32cqw; background: #ffffff04; color: #b1cbdc; font-size: 11px; line-height: 1.2; }
.idx-h-modules button[aria-pressed="true"] { border-style: solid; border-color: #51b9dc69; background: #35b2e016; color: #d0edf7; }
.idx-h-modules [data-module-symbol] { width: 10px; text-align: center; color: #9be4f0; }
.idx-h-worlds button:hover:not(:disabled), .idx-h-modules button:hover:not(:disabled) { border-color: #b1e9fa; }
.idx-h-flow { display: grid; grid-template-columns: repeat(var(--hero-steps, 5), minmax(0, 1fr)); gap: .62cqw; margin-top: .82cqw !important; padding: 0; list-style: none; }
.idx-h-flow li { position: relative; display: flex; flex-direction: column; justify-content: center; min-width: 0; min-height: 4.2cqw; padding: .52cqw .48cqw; border: 1px solid #3a78935c; border-radius: .4cqw; background: #08283a; overflow-wrap: anywhere; }
.idx-h-flow li::after { content: '›'; position: absolute; right: -.55cqw; top: 50%; transform: translateY(-50%); color: #5bcaec; font-size: 1.12cqw; }
.idx-h-flow li:last-child { border-color: #67cbae88; background: #4caf8c12; }
.idx-h-flow li:last-child::after { display: none; }
.idx-h[data-automatic="false"] .idx-h-flow li::after { color: #b2c9db; }
.idx-h-step-number { margin-bottom: .32cqw; color: #8adbf2; font-size: max(9px, .51cqw); font-variant-numeric: tabular-nums; line-height: 1; }
.idx-h-step-label { color: #e5f2f9; font-size: max(10px, .67cqw); line-height: 1.3; }
.idx-h-flow small { margin-top: .22cqw; color: #b2cbdc; font-size: max(9px, .53cqw); line-height: 1.4; }
.idx-h-builder-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px 14px; margin-top: .75cqw; padding-top: .56cqw; border-top: 1px solid #8cbac82b; color: #b2cbdc; font-size: max(10px, .6cqw); line-height: 1.4; }
.idx-h-builder-footer label { display: flex; align-items: center; gap: 6px; min-height: 26px; color: #c1dfec; cursor: pointer; }
.idx-h-builder-footer input { width: 15px; height: 15px; margin: 0; accent-color: #52c7ed; cursor: pointer; }
.idx-h-disclaimer { position: relative; margin: 32px 0 0 6.563% !important; color: var(--hero-muted); font-size: 11px; line-height: 1.6; }
.idx-h-noscript { margin-top: 10px !important; color: var(--hero-muted); font-size: 12px; line-height: 1.5; }
.idx-h-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.idx-h :is(a, button, input, summary):focus-visible { outline: 3px solid #9ae5fa; outline-offset: 4px; }
/* Raise rear windows for keyboard access rather than hiding their focus behind the workspace. */
.idx-h .idx-h-satellite:focus-visible { z-index: 9; outline-offset: -4px; }
@media (prefers-reduced-motion: no-preference) {
  .idx-h-flow[data-animated] li { animation: idx-h-step-in .25s ease-out both; }
  @keyframes idx-h-step-in { from { opacity: .6; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
}

/* Reflow, do not scale the desktop illustration into unreadable controls. */
@media (max-width: 1100px), (pointer: coarse) {
  .idx-h .idx-h-container { aspect-ratio: auto; padding: 44px var(--layout-gutter) 32px; }
  .idx-h-floor { display: none; }
  .idx-h-copy { position: relative; inset: auto; width: auto; margin-bottom: 42px; }
  .idx-h h1 { font-size: clamp(42px, 6.8cqw, 68px); line-height: 1.05; }
  .idx-h-subtitle { margin-top: 18px !important; font-size: 24px; }
  .idx-h-lead { max-width: 560px; margin-top: 15px !important; font-size: 16px; }
  .idx-h-actions { margin-top: 24px; }
  .idx-h-intro { max-width: 560px; font-size: 15px; }
  .idx-h-scene { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; max-width: 900px; min-height: 0; margin-inline: auto; padding: 0; pointer-events: auto; }
  .idx-h-front { grid-column: 1 / -1; display: grid; gap: 18px; width: auto; margin: 0; }
  .idx-h-demo-zone { display: none; }
  .idx-h-window { position: relative; inset: auto; width: auto; min-height: 0; transform: none; border-radius: 12px; }
  .idx-h-satellite { padding: 18px; }
  .idx-h-satellite-title { gap: 10px; font-size: 20px; }
  .idx-h-satellite-title > svg { font-size: 22px; }
  .idx-h-satellite-title > svg:last-child { font-size: 15px; }
  .idx-h-satellite-sub { margin-top: 10px; font-size: 13px; }
  .idx-h-gallery { gap: 6px; height: 110px; margin-top: 14px; }
  .idx-h-gallery img { border-radius: 5px; }
  .idx-h-mini-flow, .idx-h-satellite--campaign .idx-h-mini-flow { flex-wrap: wrap; gap: 5px; margin-top: 13px; font-size: 11px; }
  .idx-h-mini-flow > span { padding: 6px 7px; border-radius: 4px; }
  .idx-h-mini-flow > svg { width: 12px; }
  .idx-h-upload { height: 97px; margin-top: 14px; border-radius: 7px; gap: 5px; }
  .idx-h-upload > svg { margin-bottom: 2px; font-size: 25px; }
  .idx-h-upload strong { font-size: 14px; }
  .idx-h-upload small { font-size: 11px; }
  .idx-h-campaign-languages { margin-top: 12px; font-size: 11px; gap: 7px; }
  .idx-h-language-chips { gap: 5px; }
  .idx-h-language-chips span { padding: 4px 6px; border-radius: 4px; font-size: 11px; }
  .idx-h-workspace, .idx-h-builder, .idx-h-disclaimer { grid-column: 1 / -1; }
  .idx-h-appbar { min-height: 44px; padding: 10px 20px; border-radius: 12px 12px 0 0; gap: 10px; font-size: 13px; }
  .idx-h-appbar > span { gap: 10px; }
  .idx-h-appbar svg { font-size: 17px; }
  .idx-h-appbar small { font-size: 11px; }
  .idx-h-workspace-body { padding: 20px; }
  .idx-h-title-row { gap: 12px; }
  .idx-h h2 { font-size: 23px; }
  .idx-h-title-row > span { padding: 5px 8px; font-size: 11px; }
  .idx-h-description { margin-top: 8px !important; font-size: 14px; }
  .idx-h-preview-layout { gap: 20px; margin-top: 17px; }
  .idx-h-photo img { height: auto; aspect-ratio: 293 / 214; object-fit: cover; border-radius: 6px; }
  .idx-h-photo figcaption { left: 9px; bottom: 9px; max-width: calc(100% - 18px); padding: 5px 8px; border-radius: 4px; font-size: 11px; }
  .idx-h-routing { gap: 12px; }
  .idx-h-source { padding: 12px; border-radius: 7px; gap: 12px; }
  .idx-h-source > svg { font-size: 22px; }
  .idx-h-routing strong { font-size: 14px; }
  .idx-h-routing small { margin-top: 3px; font-size: 12px; }
  .idx-h-capabilities { gap: 6px; }
  .idx-h-capabilities > span { gap: 5px; padding: 7px 8px; border-radius: 5px; font-size: 11px; }
  .idx-h-output { padding-top: 12px; gap: 12px; }
  .idx-h-output > svg { font-size: 23px; }
  .idx-h-workspace-footer { margin-top: 16px; font-size: 11px; }
  .idx-h-workspace-footer > span:first-child { gap: 6px; }
  .idx-h-builder { margin: 0; padding: 20px; }
  .idx-h-builder-summary { min-height: 44px; padding-right: 200px; }
  .idx-h-builder h2 { gap: 10px; font-size: 20px; }
  .idx-h-builder h2 svg { font-size: 22px; }
  .idx-h-builder-actions { top: 20px; right: 20px; }
  .idx-h-tour, .idx-h-reset { min-height: 44px; }
  .idx-h .idx-h-tour { font-size: 12px; }
  .idx-h-reset { width: 44px; padding: 11px; }
  .idx-h-reset svg { width: 20px; height: 20px; }
  .idx-h-help { margin-top: 8px !important; font-size: 12px; }
  .idx-h-worlds { gap: 8px; margin-top: 18px; }
  .idx-h-worlds button { min-height: 44px; padding: 10px 14px; font-size: 12px; }
  .idx-h-modules { gap: 7px; margin-top: 15px; }
  .idx-h-modules button { min-height: 44px; gap: 6px; padding: 10px 12px; border-radius: 5px; font-size: 12px; }
  .idx-h-modules [data-module-symbol] { width: 12px; }
  .idx-h-flow { gap: 12px; margin-top: 20px !important; }
  .idx-h-flow li { min-height: 86px; padding: 10px 8px; border-radius: 6px; }
  .idx-h-flow li::after { right: -10px; font-size: 19px; }
  .idx-h-step-number { margin-bottom: 7px; font-size: 10px; }
  .idx-h-step-label { font-size: 12px; }
  .idx-h-flow small { margin-top: 4px; font-size: 11px; }
  .idx-h-builder-footer { flex-wrap: wrap; margin-top: 16px; padding-top: 10px; gap: 8px 14px; font-size: 12px; }
  .idx-h-builder-footer label { min-height: 44px; gap: 8px; }
  .idx-h-builder-footer input { width: 18px; height: 18px; }
  .idx-h-disclaimer { margin: 0 !important; font-size: 12px; line-height: 1.7; }
}
@media (max-width: 800px) {
  .idx-h-builder-summary { padding-right: 0; }
  .idx-h-builder-actions { position: static; justify-content: flex-end; margin-top: 8px; }
  .idx-h-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .idx-h-flow li::after { display: none; }
}
@media (max-width: 640px) {
  /* Match the mobile disclosure's initial closed state before its script loads. */
  .has-media-hero .idx-h:not([data-render-ready]) .idx-h-builder > :not(summary) { display: none; }
  .has-media-hero .idx-h:not([data-render-ready]) .idx-h-builder .idx-h-disclosure-mark::before { content: '+'; }
  .idx-h .idx-h-container { padding: 36px var(--layout-gutter) 28px; }
  .idx-h-copy { margin-bottom: 30px; }
  .idx-h h1 { font-size: clamp(30px, 9.5cqw, 55px); }
  .idx-h-subtitle { margin-top: 18px !important; font-size: 20px; }
  .idx-h-lead { margin-top: 14px !important; font-size: 16px; }
  .idx-h-actions { align-items: stretch; flex-direction: column; gap: 10px; margin-top: 22px; }
  .idx-h-text-link { justify-content: center; }
  .idx-h-scene { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .idx-h-front { gap: 16px; }
  /* Presets remain in the builder; omit only the duplicated decorative rear windows. */
  .idx-h-satellite { display: none; }
  .idx-h-appbar { flex-wrap: wrap; padding: 12px 15px; font-size: 12px; }
  .idx-h-appbar small { font-size: 11px; }
  .idx-h-workspace-body { padding: 17px 15px; }
  .idx-h-title-row { flex-wrap: wrap; align-items: flex-start; gap: 8px; }
  .idx-h h2 { font-size: 21px; }
  .idx-h-description { font-size: 13px; }
  .idx-h-preview-layout { grid-template-columns: minmax(0, 1fr); gap: 17px; }
  .idx-h-source { padding: 13px; }
  .idx-h-workspace-footer { flex-wrap: wrap; font-size: 11px; }
  .idx-h-builder { padding: 17px 14px; }
  .idx-h-builder h2 { gap: 8px; font-size: 18px; }
  .idx-h-builder h2 svg { font-size: 19px; }
  .idx-h-builder-actions { justify-content: space-between; }
  .idx-h-help { gap: 6px; font-size: 13px; }
  .idx-h-help > span:last-child { flex-basis: 100%; }
  .idx-h-worlds { flex-direction: column; gap: 8px; margin-top: 17px; }
  .idx-h-worlds button { font-size: 13px; text-align: left; }
  .idx-h-modules { gap: 8px; }
  .idx-h-modules button { flex: 1 1 auto; font-size: 13px; }
  .idx-h-flow { grid-template-columns: minmax(0, 1fr); gap: 11px; }
  .idx-h-flow li { display: grid; grid-template-columns: 22px minmax(0, 1fr); align-items: center; column-gap: 8px; min-height: 58px; padding: 11px 14px; }
  .idx-h-step-number { grid-row: 1 / 3; margin: 0; font-size: 11px; }
  .idx-h-step-label { font-size: 13px; }
  .idx-h-flow small { margin-top: 3px; font-size: 12px; }
  .idx-h-flow li::after { display: block; left: 50%; right: auto; top: auto; bottom: -15px; transform: translateX(-50%) rotate(90deg); font-size: 20px; }
  .idx-h-flow li:last-child::after { display: none; }
  .idx-h-builder-footer [data-runmode] { flex-basis: 100%; }
}
