.demo-layout { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 430px); gap: 56px; justify-content: center; align-items: center; min-height: calc(100svh - 72px); padding: 20px; margin-bottom: 72px; }
.demo-intro h1 { font-size: clamp(30px, 4vw, 46px); margin: 16px 0 24px; }
.demo-intro > p, .demo-intro li { font-size: 14px; color: var(--muted); }
.demo-intro .eyebrow { margin-top: 24px; font-size: 11px; }
.demo-intro ul { padding-left: 20px; }
.demo-intro li { margin-bottom: 10px; }
.demo-intro details { margin-top: 20px; font-size: 12px; color: var(--muted); }
.demo-intro summary { cursor: pointer; color: var(--ink); }
.demo-reset { border: 1px solid var(--line); background: var(--surface); color: var(--ink); cursor: pointer; }
.demo-device { height: min(860px, calc(100svh - 112px)); min-height: 400px; min-width: 0; overflow: hidden; background: #111116; border: 1px solid var(--line); border-radius: 26px; box-shadow: 0 24px 70px #21113b16; }
.demo-device iframe { display: block; width: 100%; height: 100%; border: 0; }
#demo-status { font-size: 12px; }
@media (max-width: 700px) {
  .demo-layout { display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 0; min-height: 0; margin-bottom: 0; }
  .demo-device { order: -1; height: calc(100svh - 72px); min-height: 368px; margin-bottom: 72px; border: 0; border-radius: 0; width: 100%; max-width: 480px; align-self: center; box-shadow: none; }
  .demo-intro { padding: 24px; max-width: 480px; align-self: center; }
  .demo-intro h1 { font-size: 30px; }
}
