/* Modules: compact left-hand anchor list, matching the Use Cases navigation. */
body .modules-main.page-format-main { overflow: visible; }
body .page-format-main .modules-details > .modules-anchor-layout { max-width: 1180px; display: grid; grid-template-columns: 240px minmax(0,1fr); gap: 48px; align-items: start; direction: ltr; }
.modules-anchor-content { min-width: 0; direction: ltr; }
.modules-anchor-nav { position: sticky; top: calc(var(--header) + 24px); max-height: calc(100vh - var(--header) - 48px); overflow-y: auto; display: grid; gap: 6px; direction: ltr; padding: 4px 0; }
.modules-anchor-nav a { display: flex; gap: 12px; align-items: baseline; padding: 10px 12px; border-inline-start: 2px solid transparent; border-radius: 0 8px 8px 0; color: #60728e; text-decoration: none; transition: background .2s,color .2s; }
.modules-anchor-nav a span { flex: 0 0 22px; font-size: 11px; font-weight: 800; color: #2478bd; }
.modules-anchor-nav a strong { font-size: 13px; line-height: 1.45; font-weight: 650; }
.modules-anchor-nav a:hover { background: #eef3fa; color: #182847; }
.modules-anchor-nav a.is-active { background: #eaf1fb; border-inline-start-color: #2478bd; }
.modules-anchor-nav a.is-active strong { background: linear-gradient(90deg,#0d4f9c 0%,#2478bd 50%,#7837ad 100%); background-clip: text; -webkit-background-clip: text; color: transparent; }
.modules-anchor-nav a:focus-visible { outline: 2px solid #2478bd; outline-offset: 2px; }
body .page-format-main .modules-anchor-content .modules-disclaimer { margin: 0 0 24px; }
html[dir="rtl"] :is(.modules-anchor-nav,.modules-anchor-content) { direction: rtl; }
@media(max-width:900px) {
  body .page-format-main .modules-details > .modules-anchor-layout { grid-template-columns: 1fr; gap: 24px; }
  .modules-anchor-nav { position: relative; top: auto; max-height: none; display: flex; overflow-x: auto; padding: 4px 2px 12px; }
  .modules-anchor-nav a { flex: 0 0 210px; border-radius: 8px; }
}

/* One image space beside every module; stacks below the copy on mobile. */
body .modules-main.page-format-main .mod-detail,
body .modules-main.page-format-main .mod-detail:nth-of-type(odd) { display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.65fr); gap: 32px; align-items: start; }
.module-image-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; aspect-ratio: 4/3; min-width: 0; padding: 24px; border: 1px dashed #afbdd2; border-radius: 14px; background: #edf2f9; color: #607b9e; text-align: center; }
.module-image-placeholder span { font-size: 12px; font-weight: 750; letter-spacing: .08em; }
.module-image-placeholder small { font-size: 13px; color: #71819a; }
@media(max-width:700px) {
  body .modules-main.page-format-main .mod-detail,
  body .modules-main.page-format-main .mod-detail:nth-of-type(odd) { grid-template-columns: 1fr; gap: 24px; }
  body .modules-main.page-format-main .mod-copy { grid-row: auto; }
}

body .modules-main.page-format-main .mod-detail.mod-detail-text { grid-template-columns: minmax(0,1fr); }
