/* Стили заглушек второго уровня */

.stub { padding-block: var(--section-y); }

.stub h1 {
  font-size: var(--fs-h2);
  font-weight: var(--w-semibold);
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: var(--s-2);
}

.stub h2 {
  font-size: var(--fs-h3);
  font-weight: var(--w-semibold);
  margin-top: var(--s-4);
  margin-bottom: var(--s-1);
}

.stub p { max-width: 60ch; }

.stub__lead {
  font-size: var(--fs-lg);
  color: var(--ink-soft);
  margin-bottom: var(--s-3);
}

.stub__note {
  color: var(--ink-soft);
  font-size: var(--fs-sm);
  margin-top: var(--s-3);
}

.stub__list {
  display: grid;
  gap: var(--s-2);
  margin-block: var(--s-3);
  max-width: 60ch;
}

.stub__model {
  display: grid;
  gap: var(--s-4);
  align-items: center;
}
.stub__model-svg {
  width: min(60vw, 280px);
  height: auto;
  stroke: var(--ink);
  stroke-width: var(--stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (min-width: 760px) {
  .stub__model { grid-template-columns: auto 1fr; }
}

.bento--stub { margin-bottom: var(--s-3); }

/* 404 */
.notfound {
  display: grid;
  gap: var(--s-4);
  align-items: center;
  max-width: 920px;
  margin-inline: auto;
  width: 100%;
}
.notfound__figure { max-width: 260px; width: 60%; margin-inline: auto; }
.notfound__figure svg {
  width: 100%;
  height: auto;
  stroke: var(--ink-soft);
  stroke-width: var(--stroke-thin);
  stroke-dasharray: 6 8;
  stroke-linecap: round;
}
.notfound__code {
  font-size: clamp(3.5rem, 2rem + 7vw, 6rem);
  font-weight: var(--w-semibold);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--ink-soft);
}
.notfound__copy { display: grid; gap: var(--s-2); justify-items: start; }
.notfound__copy h1 {
  font-size: var(--fs-h2);
  font-weight: var(--w-semibold);
  line-height: 1.2;
}
.notfound__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--s-3);
  margin-top: var(--s-1);
}
@media (min-width: 760px) {
  .notfound { grid-template-columns: 1fr 1.4fr; }
  .notfound__figure { margin-inline: 0; }
}

