/* ============================================================
   Система СЦ — надстройка над sv2026.css
   ============================================================ */
.sv-sect { overflow: clip; }
.sv-sect > .sv-wrap { position: relative; z-index: 1; }
.sv-head { max-width: 760px; margin-bottom: 26px; }

.sys-start::before {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  right: 0; top: 0; width: 330px; height: 300px;
  color: rgba(21,24,27,.2);
  background-image: radial-gradient(currentColor 1.15px, transparent 1.3px);
  background-size: 17px 17px;
  -webkit-mask-image: radial-gradient(125% 125% at 100% 0, #000 26%, transparent 72%);
          mask-image: radial-gradient(125% 125% at 100% 0, #000 26%, transparent 72%);
}
.sys-tools::before {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  left: 0; right: 0; top: 0; height: 9px;
  background-image: repeating-linear-gradient(90deg, var(--line) 0 1px, transparent 1px 13px);
  -webkit-mask-image: linear-gradient(90deg, #000 0 58%, transparent 100%);
          mask-image: linear-gradient(90deg, #000 0 58%, transparent 100%);
}
.sys-tools::after {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  width: 340px; height: 430px; background-repeat: no-repeat; background-size: contain;
  background-image: url("../images/trace-a.svg"); left: 0; bottom: 20px;
}

/* иллюстрации в карточках */
.sv-fcard, .sv-scard { overflow: hidden; }
.sv-fcard > *:not(.sv-card__art), .sv-scard > *:not(.sv-card__art) { position: relative; z-index: 1; }
.sv-fcard .sv-card__art, .sv-scard .sv-card__art {
  position: absolute; right: 0; bottom: 0; z-index: 0; pointer-events: none;
  width: auto; height: 52%; max-width: 60%;
  object-fit: contain; object-position: right bottom; opacity: .48;
  -webkit-mask-image: linear-gradient(300deg, #000 0 46%, transparent 100%);
          mask-image: linear-gradient(300deg, #000 0 46%, transparent 100%);
}

/* три карточки ровным рядом */
@media (min-width: 1000px) {
  .sys-start .sv-formats { display: block; }
  .sys-start .sv-formats__head { position: static; max-width: 760px; margin-bottom: 34px; }
  .sys-start .sv-formats__head::after { display: none; }
  .sys-start .sv-formats__cards { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .sv-head { margin-bottom: 34px; }
}

/* тёмный блок */
.sv-launch { margin-block: clamp(52px, 9vw, 104px); }
@media (min-width: 700px) { .sv-launch__cards--3 { grid-template-columns: repeat(3, 1fr); } }
.sv-launch__cards--3 .sv-dcard__in { padding: 18px 16px; }
.sv-launch__cards--3 .sv-dcard__in p { font-size: 13.5px; }

/* поле телефона не шире соседних */
.sv-form input[type="tel"] { grid-column: auto; }
.sv-form input:nth-last-of-type(1):nth-of-type(odd) { grid-column: span 2; }

/* кикер в заголовке первого экрана */
h1 em { display: block; margin-bottom: 14px; font: 700 12px/1 Inter, sans-serif;
  font-style: normal; letter-spacing: .2em; text-transform: uppercase; color: var(--ink); }


/* снимок регламентов показываем целиком */
.sv-hero .sv-frame img { aspect-ratio: 4 / 3 !important; object-fit: contain !important; background: var(--paper-2); }




/* тёмный рендер: тянем на всю высоту колонки, как на главной, со срезанным углом */
.sv-launch__grid { align-items: stretch; }
.sv-launch__visual { position: relative; display: flex; align-self: stretch; }
.sv-launch__visual img {
  width: 100%; height: 100%; aspect-ratio: auto !important;
  object-fit: cover !important; object-position: center;
  background: var(--dark);
  clip-path: polygon(var(--ch) 0, 100% 0, 100% calc(100% - var(--ch)), calc(100% - var(--ch)) 100%, 0 100%, 0 var(--ch));
}
@media (max-width: 999px) {
  .sv-launch__visual img { height: auto; aspect-ratio: 16 / 9 !important; }
}
@media (min-width: 1000px) {
  .sv-launch .sv-callouts { position: absolute; inset: 0; display: block; margin: 0; }
  .sv-launch .sv-callout { position: absolute; width: max-content; max-width: 190px; }
  .sv-launch .sv-callout--1 { left: -12px; top: 30%; }
  .sv-launch .sv-callout--2 { right: 2%; top: 8%; }
  .sv-launch .sv-callout--3 { right: -14px; top: 54%; }
  .sv-launch .sv-callout--4 { left: 22%; bottom: 5%; }
}
