.testimonials-section,
.newsletter-section,
.printer-section {
  display: grid;
  grid-template-columns: minmax(18rem, .72fr) minmax(0, 1.28fr);
  border-bottom: var(--border);
}

.testimonials-heading,
.newsletter-heading,
.printer-heading { padding: clamp(2rem, 5vw, 5rem); border-right: var(--border); }
.testimonials-section > *,
.newsletter-section > *,
.printer-section > *,
.machine-reviews > * { min-width: 0; }
.testimonials-heading h2,
.newsletter-heading h2,
.printer-heading h2 { margin: .8rem 0 1.5rem; font: 900 clamp(3.7rem, 7.8vw, 8.2rem)/.76 Arial, sans-serif; letter-spacing: -.085em; text-transform: uppercase; }
.testimonials-heading > p:last-child,
.newsletter-heading > p:last-child,
.printer-heading > p:not(.section-number) { max-width: 29rem; font: 700 .8rem/1.5 "Courier New", monospace; text-transform: uppercase; }

.machine-reviews { display: grid; grid-template-columns: 1fr 1fr; }
.machine-reviews figure { display: grid; min-height: 18rem; margin: 0; padding: clamp(1.3rem, 3vw, 3rem); border-right: var(--border); border-bottom: var(--border); background: var(--paper); }
.machine-reviews figure:nth-child(2n) { border-right: 0; }
.machine-reviews figure:nth-last-child(-n+2) { border-bottom: 0; }
.machine-reviews figure:nth-child(2) { color: var(--paper); background: var(--red); }
.machine-reviews figure:nth-child(2) figcaption { color: var(--ink); }
.machine-reviews figure:nth-child(3) { background: var(--acid); }
.machine-reviews blockquote { margin: 0; font: 900 clamp(1.65rem, 3vw, 3.2rem)/.94 Arial, sans-serif; letter-spacing: -.055em; }
.machine-reviews figcaption { align-self: end; display: grid; grid-template-columns: 1fr auto; gap: .15rem 1rem; padding-top: 2rem; border-top: 2px solid currentColor; font: 700 .58rem/1.35 "Courier New", monospace; text-transform: uppercase; }
.machine-reviews figcaption strong { font-size: .9rem; }
.machine-reviews figcaption span { grid-row: 2; }
.machine-reviews figcaption em { grid-column: 2; grid-row: 1 / 3; align-self: center; font-style: normal; }

@media (min-width: 64.001rem) {
  .testimonials-section { grid-template-columns: minmax(0, 1.28fr) minmax(18rem, .72fr); }
  .testimonials-heading { grid-column: 2; grid-row: 1; border-right: 0; border-left: var(--border); }
  .testimonials-heading h2 { font-size: clamp(3.4rem, 4.7vw, 5.6rem); }
  .machine-reviews { grid-column: 1; grid-row: 1; }
}

.identity { position: relative; }
.hero-cartridge-dock { display: grid; grid-template-columns: minmax(0, 15rem) auto; gap: .35rem .7rem; width: min(25rem, 100%); margin-top: 2rem; padding-top: .7rem; border-top: 2px dashed var(--ink); font: 700 .54rem/1.25 "Courier New", monospace; text-transform: uppercase; }
.hero-cartridge-dock > span { align-self: center; }
.hero-cartridge-dock > em { grid-column: 1 / -1; color: #6a6963; font-style: normal; }
.cyan-cartridge { position: relative; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; width: 10.5rem; min-height: 4.3rem; padding: .45rem 1rem .45rem .45rem; overflow: hidden; border: .22rem solid var(--ink); color: var(--ink); background: #00e5f0; box-shadow: .35rem .35rem 0 var(--ink); cursor: grab; font-family: "Courier New", monospace; text-align: left; touch-action: none; user-select: none; }
.cyan-cartridge[hidden] { display: none; }
.cyan-cartridge:before { position: absolute; inset: .25rem; border: 1px solid rgb(16 16 15 / 45%); content: ""; pointer-events: none; }
.cyan-cartridge i { grid-row: 1 / 3; align-self: center; margin-right: .6rem; font: 900 2.3rem/1 Arial, sans-serif; }
.cyan-cartridge strong { align-self: end; font: 900 1rem/1 Arial, sans-serif; }
.cyan-cartridge small { font: 700 .46rem "Courier New", monospace; }
.cyan-cartridge b { position: absolute; right: -.1rem; top: .2rem; writing-mode: vertical-rl; }
.cyan-cartridge:hover,
.cyan-cartridge:focus-visible { background: var(--acid); outline: .2rem solid #00e5f0; outline-offset: .15rem; }
.cyan-cartridge.is-demanded { animation: cyanDemand 380ms steps(2) infinite; }
.cyan-cartridge.is-pressing { animation: shortLift 220ms linear both; }
.cyan-cartridge.is-dragging,
.cyan-cartridge.is-carrying { position: fixed; z-index: 12000; margin: 0; cursor: grabbing; transform: rotate(-4deg) scale(1.08); box-shadow: .8rem .8rem 0 rgb(16 16 15 / 42%); }
.cyan-cartridge.is-carrying { cursor: grab; }
.hero-cartridge-dock.is-demanded > em { color: var(--red); font-weight: 900; }
html.cyan-drag-active,
html.cyan-drag-active body { overscroll-behavior: none; touch-action: none; }
html.cyan-drag-active { scroll-behavior: auto; }

.reverse-newsletter { align-self: center; width: min(50rem, calc(100% - 4rem)); margin: 3rem auto; border: var(--border); box-shadow: .7rem .7rem 0 var(--red); }
.subscriber-counter { display: grid; grid-template-columns: 1fr auto; gap: .2rem 1rem; padding: 1rem; color: var(--acid); background: var(--ink); font: 700 .62rem "Courier New", monospace; text-transform: uppercase; }
.subscriber-counter output { grid-row: 1 / 3; grid-column: 2; font: 900 clamp(2rem, 5vw, 4.5rem)/.8 Arial, sans-serif; letter-spacing: -.07em; }
.subscriber-counter small { color: var(--paper); }
.reverse-newsletter label { display: block; padding: 1rem; border-bottom: var(--border); font: 700 .62rem "Courier New", monospace; text-transform: uppercase; }
.reverse-newsletter input { display: block; width: 100%; margin-top: .7rem; padding: .7rem 0; border: 0; border-bottom: 4px solid var(--ink); border-radius: 0; color: var(--ink); background: transparent; font: 900 clamp(1.4rem, 4vw, 3.5rem) Arial, sans-serif; outline: 0; }
.reverse-newsletter input:focus { border-color: var(--red); }
.reverse-newsletter button { width: 100%; padding: 1.2rem; border: 0; border-bottom: var(--border); color: var(--paper); background: var(--red); cursor: pointer; font: 900 clamp(1.1rem, 2vw, 1.8rem) Arial, sans-serif; text-transform: uppercase; }
.reverse-newsletter button:hover,
.reverse-newsletter button:focus-visible { color: var(--ink); background: var(--acid); outline: 0; }
.reverse-newsletter > output { display: block; padding: .8rem 1rem; color: var(--acid); background: var(--ink); font: 700 .65rem "Courier New", monospace; }
.newsletter-legal { margin: 0; padding: .6rem 1rem; font: 700 .52rem/1.4 "Courier New", monospace; text-transform: uppercase; }

.honest-download { display: inline-block; margin-top: 1.5rem; padding: .8rem; border: var(--border); color: var(--ink); font: 800 .67rem "Courier New", monospace; text-transform: uppercase; }
.honest-download:hover { color: var(--paper); background: var(--ink); }
.virtual-printer { align-self: start; width: min(52rem, calc(100% - 3rem)); margin: 3rem auto; border: .35rem solid var(--ink); background: #b6b4aa; box-shadow: 1rem 1rem 0 var(--ink); }
.printer-top { display: flex; justify-content: space-between; padding: .7rem 1rem; border-bottom: var(--border); color: var(--acid); background: var(--ink); font: 700 .62rem "Courier New", monospace; }
.printer-top i { width: .8rem; height: .8rem; border-radius: 50%; background: #4cff4c; box-shadow: 0 0 .7rem #4cff4c; }
.virtual-printer.is-working .printer-top i { background: #ffb000; box-shadow: 0 0 .7rem #ffb000; animation: printerBlink 350ms steps(1) infinite; }
.virtual-printer.is-jammed .printer-top i { background: var(--red); box-shadow: 0 0 .7rem var(--red); }
.printer-controls { display: grid; grid-template-columns: auto 1fr; gap: .7rem; padding: 1rem; border-bottom: var(--border); }
.printer-controls button { padding: .8rem 1rem; border: var(--border); color: var(--paper); background: var(--ink); cursor: pointer; font: 900 .7rem Arial, sans-serif; text-transform: uppercase; }
.printer-controls button[data-printer-hit] { color: var(--ink); background: var(--red); animation: hitMe 180ms steps(2) infinite; }
.printer-controls button[data-printer-correct] { color: var(--ink); background: var(--acid); }
.printer-controls output { align-self: center; min-width: 0; overflow: hidden; font: 700 .58rem "Courier New", monospace; text-overflow: ellipsis; white-space: nowrap; }
.printer-hardware { position: relative; min-height: clamp(16rem, 40vw, 25rem); overflow: hidden; border-bottom: .35rem solid var(--ink); background: #7d7b74; }
.printer-shell { position: absolute; inset: 0; display: block; width: 100%; height: 100%; pointer-events: none; }
.toner-bay { position: absolute; z-index: 3; left: 5%; top: 14%; display: grid; width: 42%; min-height: 31%; align-content: center; padding: .8rem; border: .3rem solid var(--ink); color: var(--paper); background: rgb(16 16 15 / 78%); box-shadow: inset 0 0 0 .35rem #4f4e49; font: 700 .52rem "Courier New", monospace; text-transform: uppercase; transition: color 120ms, background 120ms, transform 120ms; }
.toner-bay strong { margin: .15rem 0; overflow-wrap: anywhere; color: #00e5f0; font: 900 clamp(1.35rem, 3vw, 2.4rem)/.86 Arial, sans-serif; }
.toner-bay small { color: #9b9a92; }
.toner-bay.is-target { color: var(--ink); background: var(--acid); transform: scale(1.06) rotate(-1deg); }
.toner-bay.is-target strong,
.toner-bay.is-target small { color: var(--ink); }
.toner-bay.is-loaded { color: var(--ink); background: #00e5f0; box-shadow: inset 0 0 0 .35rem #009ca5; }
.toner-bay.is-loaded strong,
.toner-bay.is-loaded small { color: var(--ink); }
.virtual-printer.is-no-cyan .toner-bay { animation: bayAlarm 300ms steps(2) infinite; }
.output-slot { position: absolute; z-index: 4; right: 4%; bottom: 0; display: flex; width: 57%; height: 18%; align-items: center; justify-content: space-around; padding: .5rem 1rem 1.2rem; border: .3rem solid var(--ink); border-bottom: 0; background: #2a2927; box-shadow: inset 0 .5rem 0 #090909; }
.output-slot i { display: block; width: 17%; aspect-ratio: 1; border: .18rem solid #070707; border-radius: 50%; background: repeating-radial-gradient(circle, #111 0 4px, #5e5c55 5px 8px); }
.output-slot span { position: absolute; inset: auto .5rem .3rem; overflow: hidden; color: #b7b5ad; font: 700 .42rem "Courier New", monospace; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.virtual-printer.is-working .output-slot i { animation: rollerSpin 280ms linear infinite; }
.paper-tray { position: relative; display: grid; place-items: start center; min-height: 24rem; padding: 0 1.2rem 1.2rem; overflow: hidden; perspective: 1000px; background: linear-gradient(115deg, #64635e, #a6a39a 45%, #79776f); }
.paper-tray:before { position: absolute; z-index: 2; inset: 0 4% auto; height: 1.4rem; border-bottom: .25rem solid #060606; background: linear-gradient(#111, #3a3935); box-shadow: 0 .5rem .8rem rgb(0 0 0 / 55%); content: ""; }
.empty-tray { align-self: center; text-align: center; font: 900 1rem/1.4 "Courier New", monospace; }
.empty-tray small { font-size: .58rem; text-transform: uppercase; }
.resume-sheet { position: relative; width: min(100%, 38rem); margin-top: -126%; border: 1px solid #777; background: white; box-shadow: 0 1.2rem 1.8rem rgb(0 0 0 / 48%); transform: rotate(var(--paper-rotation, 0deg)) rotateX(-18deg) scale(.86); transform-origin: top center; transition: margin-top 1.75s cubic-bezier(.12,.72,.2,1), transform 700ms steps(5); }
.resume-sheet:after { position: absolute; inset: auto 0 0; height: 3rem; background: linear-gradient(transparent, rgb(120 120 120 / 12%)); content: ""; pointer-events: none; }
.resume-sheet.is-feeding { margin-top: 1.4rem; transform: rotate(var(--paper-rotation, .35deg)) rotateX(0) scale(1); }
.virtual-printer.is-jammed .resume-sheet { margin-top: -30%; transform: rotate(5deg) rotateX(-8deg) scale(.94); transition-duration: 180ms; }
.resume-sheet.is-upside-down { --paper-rotation: 180deg; }
.resume-sheet canvas { display: block; width: 100%; height: auto; background: #fff; }
.print-beam { position: absolute; z-index: 3; inset: 0 0 auto; height: .28rem; opacity: 0; background: #00e5f0; box-shadow: 0 0 1.2rem #00e5f0, 0 0 2.6rem #00e5f0; pointer-events: none; }
.resume-sheet.is-feeding .print-beam { animation: printScan 1.5s 180ms linear both; }
.paper-jam { position: absolute; inset: 43% 0 auto; padding: .7rem; border-block: .3rem solid var(--ink); color: var(--paper); background: var(--red); text-align: center; transform: rotate(-4deg); }
.paper-jam strong { display: block; font: 900 clamp(2rem, 7vw, 5rem)/.8 Arial, sans-serif; }
.paper-jam small { font: 900 .7rem "Courier New", monospace; }
.page-controls { display: grid; grid-template-columns: auto 1fr auto; border-top: var(--border); }
.page-controls button { padding: .75rem 1rem; border: 0; background: var(--paper); cursor: pointer; font-weight: 900; }
.page-controls button:hover { color: var(--paper); background: var(--red); }
.page-controls output { align-self: center; text-align: center; font: 700 .62rem "Courier New", monospace; }

.cookie-wall { position: fixed; z-index: 10000; inset: auto 0 0; display: grid; grid-template-columns: 1.2fr .75fr auto; gap: 1rem; padding: 1rem; border-top: .45rem solid var(--ink); color: var(--ink); background: var(--acid); box-shadow: 0 -1rem 0 rgb(16 16 15 / 18%); }
.cookie-wall[hidden] { display: none; }
.cookie-copy > span { font: 700 .55rem "Courier New", monospace; }
.cookie-copy h2 { margin: .15rem 0; font: 900 clamp(2rem, 4vw, 4rem)/.85 Arial, sans-serif; letter-spacing: -.06em; text-transform: uppercase; }
.cookie-copy p { max-width: 48rem; margin: .5rem 0 0; font: 700 .62rem/1.35 "Courier New", monospace; text-transform: uppercase; }
.cookie-audit { display: grid; align-content: center; padding-inline: 1rem; border-inline: var(--border); font: 700 .58rem "Courier New", monospace; text-transform: uppercase; }
.cookie-audit output { font: 900 2.8rem Arial, sans-serif; }
.cookie-actions { display: grid; gap: .35rem; }
.cookie-actions button { padding: .55rem .8rem; border: var(--border); background: transparent; cursor: pointer; font: 900 .62rem Arial, sans-serif; text-transform: uppercase; }
.cookie-actions button:last-child { color: var(--paper); background: var(--ink); }
.cookie-status { grid-column: 1 / -1; font: 700 .52rem "Courier New", monospace; }
.cookie-wall.is-managing .cookie-audit { animation: auditShake 140ms steps(2) infinite; }

.cyan-mission { position: fixed; z-index: 9500; top: 3.4rem; left: 50%; display: grid; grid-template-columns: auto 1fr auto; width: min(70rem, calc(100% - 2rem)); gap: .4rem 1rem; padding: .8rem; border: .3rem solid var(--ink); color: var(--ink); background: #00e5f0; box-shadow: .55rem .55rem 0 var(--ink); transform: translateX(-50%); font: 700 .58rem/1.3 "Courier New", monospace; text-transform: uppercase; }
.cyan-mission[hidden] { display: none; }
.cyan-mission strong { align-self: center; font: 900 1rem Arial, sans-serif; }
.cyan-mission span { align-self: center; }
.cyan-mission button { padding: .55rem .75rem; border: var(--border); color: var(--paper); background: var(--ink); cursor: pointer; font: 900 .58rem Arial, sans-serif; text-transform: uppercase; }
.cyan-mission.is-complete { color: var(--ink); background: var(--acid); }

@keyframes printerBlink { 50% { opacity: .15; } }
@keyframes hitMe { 50% { transform: translate(3px, -2px); } }
@keyframes auditShake { 50% { transform: translateX(3px); } }
@keyframes cyanDemand { 50% { transform: translate(-3px, 2px) rotate(1deg); box-shadow: .6rem .2rem 0 var(--red); } }
@keyframes shortLift { 0% { filter: saturate(1); } 70% { transform: scale(.96); filter: saturate(1.8); } 100% { transform: scale(1.06) rotate(-2deg); box-shadow: .7rem .7rem 0 var(--ink); } }
@keyframes rollerSpin { to { transform: rotate(1turn); } }
@keyframes printScan { 0% { top: 0; opacity: 0; } 8%, 86% { opacity: .9; } 100% { top: 97%; opacity: 0; } }
@keyframes bayAlarm { 50% { border-color: var(--red); box-shadow: inset 0 0 0 .35rem var(--red), 0 0 1rem var(--red); } }

@media (max-width: 64rem) {
  .testimonials-section,
  .newsletter-section,
  .printer-section { grid-template-columns: 1fr; }
  .testimonials-heading,
  .newsletter-heading,
  .printer-heading { border-right: 0; border-bottom: var(--border); }
  .cookie-wall { grid-template-columns: 1fr 1fr; }
  .cookie-actions { grid-row: 2; grid-column: 1 / -1; grid-template-columns: repeat(3, 1fr); }
  .cyan-mission { grid-template-columns: 1fr auto; }
  .cyan-mission span { grid-column: 1 / -1; grid-row: 2; }
}

@media (max-width: 46rem) {
  .testimonials-heading h2,
  .newsletter-heading h2,
  .printer-heading h2 { font-size: clamp(3rem, 14vw, 3.45rem); }
  .machine-reviews blockquote { overflow-wrap: anywhere; }
  .machine-reviews { grid-template-columns: 1fr; }
  .machine-reviews figure,
  .machine-reviews figure:nth-child(2n),
  .machine-reviews figure:nth-last-child(-n+2) { min-height: 14rem; border-right: 0; border-bottom: var(--border); }
  .machine-reviews figure:last-child { border-bottom: 0; }
  .reverse-newsletter { width: calc(100% - 2rem); margin: 1.5rem auto; box-shadow: .4rem .4rem 0 var(--red); }
  .virtual-printer { width: calc(100% - 2rem); margin: 1.5rem auto; box-shadow: .4rem .4rem 0 var(--ink); }
  .printer-controls { grid-template-columns: 1fr; }
  .paper-tray { min-height: 15rem; }
  .hero-cartridge-dock { grid-template-columns: 1fr; }
  .hero-cartridge-dock > em { grid-column: auto; }
  .printer-hardware { min-height: 15rem; }
  .toner-bay { left: 4%; top: 12%; width: 50%; min-height: 36%; }
  .output-slot { right: 3%; width: 66%; }
  .cyan-mission { top: 3.1rem; grid-template-columns: 1fr; }
  .cyan-mission span { grid-column: auto; grid-row: auto; }
  .cyan-mission button { width: 100%; }
  .cookie-wall { grid-template-columns: 1fr; max-height: 90vh; overflow: auto; }
  .cookie-audit { padding: .6rem 0; border: 0; border-block: var(--border); }
  .cookie-actions { grid-row: auto; grid-column: auto; grid-template-columns: 1fr; }
  .cookie-status { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .virtual-printer.is-working .printer-top i,
  .printer-controls button[data-printer-hit],
  .cookie-wall.is-managing .cookie-audit { animation: none; }
  .resume-sheet { transition-duration: .01ms; }
  .cyan-cartridge.is-demanded,
  .cyan-cartridge.is-pressing,
  .virtual-printer.is-no-cyan .toner-bay,
  .virtual-printer.is-working .output-slot i,
  .resume-sheet.is-feeding .print-beam { animation-duration: .01ms; }
}
