/*кнопки*/

.t-btn:not(.t1196__control),
.t-submit,
[data-elem-type="button"] .tn-atom {
  background-image: linear-gradient(#c91f32, #c91f32) !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-origin: border-box !important;
  background-size: 0% 100% !important;
  transition: background-size .25s ease, color .2s, border-color .2s !important;
}

.t-btn:not(.t1196__control):hover, .t-btn:not(.t1196__control):focus-visible,
.t-submit:hover, .t-submit:focus-visible,
[data-elem-type="button"] .tn-atom:hover,
[data-elem-type="button"] .tn-atom:focus-visible {
  background-size: 100% 100% !important;
  color: #fff !important;
  border-color: #c91f32 !important;
}

/* кнопка-ссылка: без заливки */
.on-nosweep,
.on-nosweep .tn-atom {
  background-image: none !important;
  background-size: 0 0 !important;
}
.on-nosweep:hover, .on-nosweep:focus-visible,
.on-nosweep:hover .tn-atom, .on-nosweep:focus-within .tn-atom {
  background-size: 0 0 !important;
  color: var(--on-nosweep-hover, #526a74) !important;
}
.on-nosweep:hover .tn-atom__img,
.on-nosweep:focus-within .tn-atom__img { filter: none !important; }

/*сетка на фоне*/
.on-grid > .tn-molecule,
.on-grid > .tn-atom {
  position: relative;
  --line: rgba(121,205,232,.11);
  --fade: linear-gradient(90deg,
    rgba(0,0,0,.05) 45%,
    rgba(0,0,0,.40) 70%,
    rgba(0,0,0,.85) 95%);
}

.on-grid > .tn-molecule::before,
.on-grid > .tn-atom::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: var(--fade);
  mask-image: var(--fade);
}

/*тень под png*/
.on-shadow .tn-atom {
  filter: drop-shadow(0 22px 18px rgba(16,38,48,.16));
}

/* варианты под разные подложки */
.on-shadow-dark .tn-atom  { filter: drop-shadow(0 24px 18px rgba(0,0,0,.32)); }
.on-shadow-hero .tn-atom  { filter: drop-shadow(0 30px 24px rgba(0,0,0,.24)); }
.on-shadow-light .tn-atom { filter: drop-shadow(0 14px 14px rgba(16,38,48,.13)); }



/* ── КАРТОЧКА: подъём, обводка, тень ───────────────────────── */
.on-dir-card { transition: transform .2s !important; }
.on-dir-card > .tn-molecule { transition: border-color .2s, box-shadow .2s !important; }

.on-dir-card:hover,
.on-dir-card:focus-within { transform: translateY(-2px) !important; }

.on-dir-card:hover > .tn-molecule,
.on-dir-card:focus-within > .tn-molecule {
  border-color: var(--on-line-hover, #8eabb7) !important;
  box-shadow: 0 20px 42px rgba(8,45,64,.11) !important;
}

.on-dir-card--dark:hover > .tn-molecule,
.on-dir-card--dark:focus-within > .tn-molecule { border-color: #2b6c84 !important; }

/* ── КНОПКА: заливка слева направо ─────────────────────────── */
.on-dir-strip,
.on-dir-strip > .tn-molecule {
  background-image: linear-gradient(var(--on-fill, #c91f32), var(--on-fill, #c91f32)) !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-origin: border-box !important;
  background-size: 0% 100% !important;
  transition: background-size .3s ease !important;
}

/* срабатывает от наведения на саму кнопку */
.on-dir-strip:hover,
.on-dir-strip:focus-within,
.on-dir-strip:hover > .tn-molecule,
.on-dir-strip:focus-within > .tn-molecule { background-size: 100% 100% !important; }

/* модификатор: ещё и от наведения на карточку целиком */
.on-dir-card:hover .on-dir-strip--card,
.on-dir-card:hover .on-dir-strip--card > .tn-molecule,
.on-dir-card:focus-within .on-dir-strip--card,
.on-dir-card:focus-within .on-dir-strip--card > .tn-molecule { background-size: 100% 100% !important; }

/* ── ПОДПИСЬ И СТРЕЛКА ─────────────────────────────────────── */
.on-dir-strip .tn-atom { transition: color .2s !important; }
.on-dir-strip .tn-atom__img { transition: filter .1s !important; }

.on-dir-strip:hover .tn-atom,
.on-dir-strip:focus-within .tn-atom,
.on-dir-card:hover .on-dir-strip--card .tn-atom,
.on-dir-card:focus-within .on-dir-strip--card .tn-atom { color: #fff !important; }

.on-dir-strip:hover .tn-atom__img,
.on-dir-strip:focus-within .tn-atom__img,
.on-dir-card:hover .on-dir-strip--card .tn-atom__img,
.on-dir-card:focus-within .on-dir-strip--card .tn-atom__img {
  filter: brightness(0) invert(1) !important;
  transition: filter .1s .24s !important;
}

@media (prefers-reduced-motion: reduce) {
  .on-dir-card, .on-dir-card > .tn-molecule,
  .on-dir-strip, .on-dir-strip > .tn-molecule { transition: none !important; }
}

/*Выравнивание карточек*/
.on-prod-card { height: auto !important; align-self: stretch !important; }
.on-prod-card > .tn-molecule { height: 100% !important; }
.on-prod-foot { margin-top: auto !important; }

