/* =========================================================================
   PostureScreen menu pages (WEB-142, Joe's Oct 9 2026 Loom, N2): Compatible devices, WebExercises integration and
   3D Practice integration (generated by tools/pages/posturescreen-menu-pages.mjs). Loaded after pages.css: everything
   else on these pages is the shared .pg- kit; this file only adds the few pieces those pages need.
   ========================================================================= */

/* two link cards centred under a centred heading (Apple's compatibility lists) */
.pg-ints--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 820px; margin: 0 auto; }
.pg-ints--2 .pg-int h3 { font-size: 16.5px; }

/* a one-line takeaway under cards or a list: the house yellow note rule, but quieter and centred when it closes a band */
.pg-callout { margin-top: 24px; padding: 14px 18px; border-radius: 14px; font-size: 15px; line-height: 1.5; color: var(--ink-2); background: #fff; box-shadow: inset 3px 0 0 var(--sky), inset 0 0 0 1px var(--line); }
.pg-callout b { color: var(--ink); font-weight: 600; }
.pg-head--c ~ .pg-callout, .pg-cards + .pg-callout { max-width: 760px; margin: 28px auto 0; text-align: center; box-shadow: inset 0 0 0 1px var(--line); }
.pg-sublede { margin-top: 8px; font-size: 15px; line-height: 1.5; color: var(--ink-2); }

/* centred note (WebExercises plans) */
.pg-note--c { max-width: 820px; margin: 28px auto 0; }
.pg-note a { color: var(--blue-t); font-weight: 600; white-space: nowrap; }

/* the discount code, a dashed coupon above the two WebExercises plans */
.pg-code { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px 14px; width: fit-content; max-width: 100%; margin: 0 auto 26px; padding: 10px 20px; border-radius: 16px; font-size: 14px; color: var(--ink-2); background: #fff; border: 1.5px dashed rgba(0, 128, 178, .45); }
.pg-code span:first-child { font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--blue-t); }
.pg-code b { font-size: 19px; font-weight: 800; letter-spacing: .06em; color: var(--ink); font-variant-numeric: tabular-nums; }

/* WebExercises plan boxes: heading in the main column, price on the side */
.pg-wxplan .pg-h3 { margin-bottom: 10px; }
.pg-wxplan .pg-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px 22px; }
.pg-wxplan .pg-checks li { font-size: 14.5px; }
.pg-wxplan__k { margin-top: 12px; font-size: 12.5px !important; color: var(--ink-3) !important; }

/* 3D Practice hero: the partner logo above the video facade */
.pg-3d-vis { display: grid; gap: 18px; justify-items: start; width: min(560px, 100%); justify-self: center; }
.pg-3d-vis__logo { width: min(240px, 60%); height: auto; }
.pg-3d-vis .pg-vids { width: 100%; }
.pg-3d-tut { margin-top: clamp(48px, 6vw, 80px); }
.pg-3d-tut .pg-box .pg-links { margin-top: 18px; }

@media (max-width: 900px) {
  .pg-3d-vis { justify-items: center; }
  .pg-wxplan .pg-checks { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .pg-ints--2 { grid-template-columns: 1fr; }
  .pg-callout, .pg-head--c ~ .pg-callout, .pg-cards + .pg-callout { text-align: left; }
  .pg-3d-vis__logo { width: min(200px, 60%); }
}
