/* v28 — preservation pass: restore approved details lost in a later merge */

/* Previously approved extra spacing on the homepage section headings. */
.reference-home .ref-heading__ghost{
  margin-bottom:12px!important;
  line-height:1!important;
}
.reference-home .ref-pill{
  margin-top:0!important;
}

/* Restored site-wide "Наверх" control, slightly larger on desktop
   with a substantial rounded arrow instead of a thin slider-style icon. */
.back-to-top{
  position:fixed;
  left:26px;
  bottom:26px;
  z-index:90;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:56px;
  padding:0 20px 0 12px;
  border:0;
  border-radius:999px;
  background:#1c2d83;
  box-shadow:0 14px 34px rgba(18,31,90,.30);
  color:#fff;
  font:inherit;
  font-size:14px;
  font-weight:900;
  cursor:pointer;
  opacity:0;
  pointer-events:none;
  transform:translateY(12px);
  transition:opacity .2s ease,transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.back-to-top__icon{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.16);
}
.back-to-top__icon svg{
  display:block;
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.back-to-top.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.back-to-top:hover{
  background:#4d5dfa;
  box-shadow:0 16px 38px rgba(48,69,240,.34);
}
.back-to-top:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

@media(max-width:720px){
  .reference-home .ref-heading__ghost{
    margin-bottom:10px!important;
    line-height:1.04!important;
  }
  .back-to-top{
    left:14px;
    bottom:16px;
    min-height:50px;
    padding:0 14px 0 8px;
    gap:8px;
    font-size:13px;
  }
  .back-to-top__icon{
    width:34px;
    height:34px;
  }
}
@media(prefers-reduced-motion:reduce){
  .back-to-top{transition:none}
}
