/* Platform explanation layout, promoted from the approved review preview. */
.preview-notice { border-bottom: 1px solid var(--line); background: var(--surface); color: var(--muted); }
.preview-notice > div { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px 24px; padding-block: 12px; font-size: .9375rem; }
.preview-notice a { color: var(--green); }
.platform-map { margin: 0; }
.platform-map .visual-topline { color: var(--mint); text-transform: uppercase; }
.platform-layer { padding: 22px; border: 1px solid #9dc1b866; }
.platform-layer .layer-label { font: .8125rem/1.6 var(--mono); color: var(--mint); margin-bottom: 10px; }
.platform-layer h3 { font-size: 1.25rem; line-height: 1.3; margin-bottom: 12px; }
.platform-layer p:last-child { margin-bottom: 0; font-size: 1rem; color: #d9ece5; }
.application-layer { background: #18363f; }
.services-layer { background: #173c44; border-color: #ace5d299; }
.services-layer img { float: right; margin-left: 16px; }
.services-layer h3 { font-size: 2rem; letter-spacing: .13em; }
.services-layer ul { padding: 0; margin: 16px 0 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 1rem; }
.layer-connector { height: 28px; width: 1px; margin-inline: auto; background: var(--mint); }
.infrastructure-layer { border-style: dashed; }
.platform-map .visual-footnote { font-size: 1rem; }
.platform-explanation { margin-top: 40px; }
.platform-product { padding: 32px; border-left: 2px solid var(--green); background: var(--paper); }
.platform-product .eyebrow { color: var(--green); margin-bottom: 14px; }
.platform-product h3 { font-size: 1.75rem; line-height: 1.2; }
.platform-product p:not(.eyebrow) { max-width: 76ch; font-size: 1.0625rem; color: var(--body-ink); }
.platform-product p:last-child { margin-bottom: 0; }
.platform-support { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding-top: 32px; }
.platform-support article { border-top: 1px solid var(--strong-line); padding-top: 24px; }
.platform-support p { max-width: 60ch; margin-bottom: 0; font-size: 1.0625rem; color: var(--muted); }
.platform-answers { margin-block: 30px; }
.platform-answers > div { padding-block: 24px; border-top: 1px solid var(--line); }
.platform-answers dt { color: var(--green); font-size: 1.2rem; font-weight: 600; margin-bottom: 12px; }
.platform-answers dd { margin: 0; max-width: 76ch; }
@media screen and (max-width: 540px) {
  .preview-notice > div { font-size: .875rem; }
  .platform-preview h1 { font-size: clamp(1.5rem, 10.9vw, 3.8rem); }
  .platform-layer { padding: 20px 16px; }
  .services-layer img { float: none; display: block; margin: 0 0 14px; }
  .platform-support { grid-template-columns: 1fr; gap: 28px; }
  .platform-product { padding: 24px; }
}
@media print {
  .preview-notice > div { padding-block: 8px; }
  .preview-notice a { display: none; }
  .platform-preview .hero { grid-template-columns: 1fr; }
  .system-infrastructure { break-inside: avoid; }
  .platform-map { break-inside: avoid; max-width: 135mm; margin-inline: auto; width: 100%; }
  .platform-layer { padding: 16px; }
  .layer-connector { height: 16px; }
  .platform-product, .platform-support article, .platform-answers > div { break-inside: avoid; }
  .platform-product { padding: 24px; }
}
