/* In-place content placeholders; retain the existing hierarchy and responsive layout. */
.wireframe .launch-section { padding-block: 2.7rem; }
.wireframe h2 { font-size: clamp(1.65rem, 2.6vw, 2.25rem); margin-top: 0; }
.wireframe h3 { font-size: 1.25rem; }
.wireframe .wireframe-supporting h2 { font-size: clamp(1.4rem, 2vw, 1.75rem); }
.wireframe .content-placeholder { color: #c8bfd6; }
.wireframe-demonstration, .wireframe-release-plan { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 2rem; align-items: start; }
.wireframe-demonstration > *, .wireframe-release-plan > * { min-width: 0; }
.wireframe-demonstration > .content-placeholder, .wireframe-release-plan > .content-placeholder { margin-top: 0; }
.wireframe-visual { margin: 0 0 1rem; }
.wireframe-media-frame { display: flex; align-items: center; justify-content: center; border: 1px dashed #82768f; min-width: 0; }
.wireframe-media-frame > span { display: block; padding: 1rem; color: #c8bfd6; text-align: center; line-height: 1.5; }
.release-overview { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.5rem; padding: .5rem 0 1rem; }
.wireframe .release-overview h3 { font-size: 1.05rem; margin: 0 0 .6rem; }
.release-overview p { font-size: .95rem; line-height: 1.5; margin-bottom: 0; }
.wireframe-support-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 2rem; }
/* These paired panels each place their text above their media. */
.wireframe-support-grid > section { min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; border-bottom: 1px solid var(--launch-line); padding-block: 2rem; }
.wireframe-visual-pair { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1rem; }
#graphics-animation .launch-media img, #video-tracer .launch-media img { object-fit: contain; }
.wireframe-home #release-highlights { border-bottom: 0; }
.wireframe-setup .launch-hardware { margin: 0; padding: 2rem 1.25rem; align-self: start; }
.wireframe-setup .launch-media { margin-block: 1rem; }
.wireframe-setup .launch-media img { aspect-ratio: auto; }
.wireframe .home-production-layout { margin-top: 1rem; }
.wireframe-features .features-intro { padding-block: 1.7rem; }
.wireframe-features .features-layout { gap: 2.5rem; }
.wireframe-features .features-content > section { padding-block: 1.7rem; }
.wireframe-release .launch-hero { padding-bottom: 2rem; }
.wireframe-home .launch-hero { display: block; padding-top: 2rem; }
.wireframe-home .launch-hero-copy { max-width: 64rem; text-align: center; margin: 2rem auto 0; }
.wireframe-home .launch-hero-copy h1 { max-width: 58rem; font-size: clamp(1.8rem, 3vw, 2.6rem); margin-top: 0; text-wrap: balance; }
.wireframe-home .launch-hero-copy .launch-intro { margin-inline: auto; }
.wireframe-home .launch-hero-copy .launch-actions { justify-content: center; }
.wireframe-home .launch-hero-copy .launch-note { margin-inline: auto; }
.wireframe-home .home-release-announcement { max-width: 48rem; margin: 2rem auto 0; }
.wireframe-home .home-release-announcement h2 { margin-bottom: .75rem; }
.wireframe-home .home-introduction { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: clamp(1.5rem, 3vw, 3rem); align-items: center; margin-top: 2.7rem; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid var(--launch-line); border-radius: .4rem; background: linear-gradient(120deg, #1d102d, #11112c 70%); }
.home-introduction > * { min-width: 0; }
.home-introduction .launch-media img { aspect-ratio: 4 / 3; object-position: 35% center; }
.home-introduction-copy { margin: 0; }
.home-introduction-copy:only-child { grid-column: 1 / -1; max-width: 52rem; margin-inline: auto; }
.home-introduction h2 { font-weight: 700; }
.home-introduction p { color: #d3d3e3; }
.home-introduction .launch-intro { max-width: none; }
.home-introduction-copy > :last-child { margin-bottom: 0; }
.home-zone-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; margin-top: 1.5rem; }
.home-zone-grid > article { min-width: 0; display: flex; flex-direction: column; }
.home-zone-grid h3 { margin-top: 0; }
.home-zone-grid p { color: #d3d3e3; }
.home-zone-grid .launch-media { margin: auto 0 0; }
.home-zone-grid .launch-media img { aspect-ratio: 3 / 2; object-fit: contain; }
@media (max-width: 991.98px) {
 .wireframe-home .home-introduction { grid-template-columns: minmax(0, 1fr); }
 .home-introduction .launch-media img { aspect-ratio: 1600 / 903; }
 .release-overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .wireframe-features .features-layout { gap: 1.5rem; }
}
@media (max-width: 767.98px) {
 .wireframe .launch-section { padding-block: 2rem; }
 .wireframe-demonstration, .wireframe-release-plan, .wireframe-support-grid, .home-zone-grid { grid-template-columns: minmax(0,1fr); gap: 1.2rem; }
 .wireframe-home .launch-hero { padding-top: 1rem; }
 .wireframe-home .launch-hero-copy h1 { font-size: clamp(1.65rem, 6vw, 2rem); }
 .wireframe-home .launch-hero-copy { margin-top: 1.4rem; }
 .wireframe-support-grid > section { padding-block: 1.8rem; }
 .wireframe-setup .launch-hardware { padding: 1.5rem 1rem; }
 .wireframe-features .features-layout { gap: 1rem; }
}
@media (max-width: 575.98px) {
 .release-overview { grid-template-columns: minmax(0,1fr); gap: 1rem; }
 .wireframe-visual-pair { grid-template-columns: minmax(0,1fr); }
}

.wireframe-home .launch-hardware--expanded { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 3rem; padding: 2.5rem; align-items: center; }
.launch-hardware--expanded > div { min-width: 0; }
.wireframe-home .launch-hardware--expanded h2 { font-size: clamp(1.6rem, 2.4vw, 2.15rem); }
.launch-hardware--expanded .launch-hardware-copy p:not(.launch-eyebrow) { font-size: 1.125rem; line-height: 1.65; }
.launch-hardware--expanded .launch-hardware-copy > :last-child { margin-bottom: 0; }
.home-page .launch-hardware--expanded .launch-hardware-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 0 1rem; }
.home-page .launch-hardware--expanded .launch-hardware-list a, .home-page .launch-hardware--expanded .launch-hardware-name { height: 100%; min-height: 5rem; }
.home-page .launch-hardware--expanded .launch-hardware-name { font-size: 1.15rem; color: #f2f2ff; }
@media (max-width: 991.98px) {
 .wireframe-home .launch-hardware--expanded { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; padding: 2rem 1.25rem; }
}


.wireframe-setup > .hardware-quote { margin: 2.5rem auto 1rem; }

.wireframe-home #visualiser .launch-media img,
.wireframe-home #live-performance .launch-media img { aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }
