/* ── Prototypes (/prototypes/) — процесс кастомной печати (лонгрид). ───────── */
.pr { padding: clamp(24px, 4vw, 48px) clamp(16px, 4vw, 48px); max-width: 900px; margin: 0 auto; }
.pr-h2 { font-size: clamp(1.4rem, 3vw, 1.9rem); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 16px; color: var(--fg); }

.pr-hero { margin-bottom: clamp(36px, 5vw, 56px); }
.pr-hero__kicker { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent); }
.pr-hero__title { font-size: clamp(2.2rem, 6vw, 3.6rem); font-weight: 800; letter-spacing: -0.03em; margin: 8px 0 18px; color: var(--fg); }
.pr-hero__lead { color: var(--muted); font-weight: 300; line-height: 1.75; margin: 0 0 14px; font-size: 1.05rem; }

.pr-sec { margin-bottom: clamp(32px, 5vw, 52px); }
.pr-sec > p { color: var(--muted); font-weight: 300; line-height: 1.75; margin: 0 0 12px; }
.pr-sec a { color: var(--accent); text-decoration: none; font-weight: 600; }
.pr-sec a:hover { text-decoration: underline; }

.pr-steps { margin: 0 0 14px; padding-left: 24px; display: flex; flex-direction: column; gap: 10px; }
.pr-steps li { color: var(--muted); line-height: 1.6; }
.pr-steps b, .pr-list b { color: var(--fg); font-weight: 600; }
.pr-list { margin: 0; padding-left: 24px; display: flex; flex-direction: column; gap: 8px; }
.pr-list li { color: var(--muted); line-height: 1.5; }

/* кейс — карточки-шаги с картинкой */
.pr-case__step {
  display: grid; grid-template-columns: 300px 1fr; gap: 20px; align-items: center;
  padding: 16px; margin-bottom: 14px;
  border: 1px solid var(--line); border-left: 3px solid var(--accent);
  border-radius: var(--radius); background: var(--bg-2);
}
.pr-case__step:nth-child(even) { grid-template-columns: 1fr 300px; }
.pr-case__step:nth-child(even) .pr-case__img { order: 2; }
.pr-case__img {
  width: 100%; aspect-ratio: 4 / 3; object-fit: cover; cursor: zoom-in;
  border-radius: var(--radius); border: 1px solid var(--line);
  background: color-mix(in srgb, var(--fg) 5%, var(--bg)); transition: transform .12s;
}
.pr-case__img:hover { transform: translateY(-2px); }
.pr-case__step h3 { font-size: 1.05rem; font-weight: 700; margin: 0 0 8px; color: var(--fg); }
.pr-case__step p { color: var(--muted); font-weight: 300; line-height: 1.65; margin: 0; font-size: 0.94rem; }

/* zoom-оверлей */
.pr-zoom {
  position: fixed; inset: 0; z-index: 100; display: grid; place-items: center;
  padding: clamp(16px, 4vw, 48px); cursor: zoom-out;
  background: color-mix(in srgb, var(--bg) 12%, rgba(0,0,0,.82)); backdrop-filter: blur(6px);
}
.pr-zoom[hidden] { display: none; }
.pr-zoom__img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: var(--radius); box-shadow: 0 20px 60px rgba(0,0,0,.5); }
body.pr-zoom-open { overflow: hidden; }

@media (max-width: 680px) {
  .pr-case__step, .pr-case__step:nth-child(even) { grid-template-columns: 1fr; }
  .pr-case__step:nth-child(even) .pr-case__img { order: 0; }
}

.pr-cta { padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--bg-2); }
.pr-order {
  display: inline-block; margin-top: 12px; padding: 12px 24px; text-decoration: none;
  background: var(--accent); color: var(--accent-fg) !important; border-radius: var(--radius); font-weight: 600; transition: background .15s;
}
.pr-order:hover { background: var(--accent-hover); text-decoration: none !important; }
