/* Live Pi extends the established VinylRest site without changing sibling products. */
.pi-badge { display: inline-block; padding: .16em .5em; border: 1px solid #2d6e9e; border-radius: 999px; color: #a8d6ff; font-size: .64em; letter-spacing: .06em; vertical-align: middle; }
.pi-site .brand { white-space: nowrap; }
.pi-site .hero-copy h1 { font-size: clamp(3.1rem, 5.5vw, 5.9rem); }
.pi-site .media-frame figcaption { padding: 12px 10px 7px; color: var(--subtle); font-size: .84rem; line-height: 1.5; }
.pi-site .manual-content td, .pi-site .manual-content th { text-align: left; }
.pi-site .manual-content code { overflow-wrap: anywhere; }
.pi-site .manual-content a:not(.button):not(.manual-card) { color: var(--blue-soft); }
.pi-site .manual-content .button-row { margin-block: 24px; }
.pi-site .manual-content h2[id] { scroll-margin-top: 100px; }
.pi-site .story[id] { scroll-margin-top: 100px; }
.discovery-panel { padding: clamp(25px, 4vw, 56px); border: 1px solid #284a67; border-radius: 24px; background: radial-gradient(ellipse at top right, #103757, #071522 70%); }
.discovery-panel > .pi-badge { font-size: .85rem; }
.discovery-panel h3 { margin: 25px 0 32px; font-size: clamp(2rem, 3vw, 3.2rem); letter-spacing: -.045em; line-height: 1.1; }
.discovery-panel ol { padding-left: 1.5em; color: #4ca9ff; }
.discovery-panel li { padding: 12px 0 16px 8px; }
.discovery-panel strong, .discovery-panel span { display: block; }
.discovery-panel strong { color: white; margin-bottom: 7px; }
.discovery-panel li span, .discovery-panel p { color: var(--muted); line-height: 1.6; }
.pi-requirements { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-bottom: 28px; }
.pi-requirements ul { padding-left: 1.25em; color: var(--muted); line-height: 1.64; }
.pi-requirements li + li { margin-top: .55em; }
.pi-requirements p + p { margin-top: 1em; }
.pi-requirements a { color: var(--blue-soft); text-underline-offset: .18em; }
.pi-site .section[id] { scroll-margin-top: 84px; }
.pi-centered { justify-content: center; margin-top: 28px; }
@media (max-width: 600px) { .pi-requirements { grid-template-columns: 1fr; } .pi-site .brand { font-size: 1.15rem; } }
