.site-footer-ref {
  --ref-ink: #101a32;
  --ref-muted: #60708d;
  --ref-green: #079d72;
  --ref-green-rgb: 7, 157, 114;
  --ref-purple: #8063ef;
  --ref-purple-rgb: 128, 99, 239;
  position: relative;
  isolation: isolate;
  margin-top: -1px;
  overflow: hidden;
  padding: clamp(3.1rem, 5.6vw, 5.2rem) 1rem clamp(2.6rem, 4.5vw, 4rem);
  background:
    linear-gradient(180deg, rgba(250,252,255,0), rgba(255,255,255,.58) 30%, #fff),
    radial-gradient(circle at 7% 43%, rgba(var(--ref-green-rgb),.13), transparent 18rem),
    radial-gradient(circle at 82% 35%, rgba(var(--ref-purple-rgb),.11), transparent 22rem);
}
.site-footer-ref::after {
  position: absolute;
  z-index: 0;
  inset: 0;
  content: '';
  pointer-events: none;
  background-image: linear-gradient(rgba(112,130,165,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(112,130,165,.035) 1px, transparent 1px);
  background-size: 3rem 3rem;
  mask-image: radial-gradient(ellipse at 50% 48%, #000 0 44%, transparent 76%);
  opacity: .58;
}
.site-footer-ref__card {
  position: relative;
  z-index: 1;
  width: min(102.5rem, calc(100vw - 2rem));
  overflow: hidden;
  margin: 0 auto;
  border: 1px solid rgba(91,105,143,.14);
  border-radius: 1.45rem;
  background:
    radial-gradient(circle at -2% 86%, rgba(var(--ref-green-rgb),.19), transparent 13rem),
    radial-gradient(circle at 88% 52%, rgba(var(--ref-purple-rgb),.12), transparent 22rem),
    linear-gradient(180deg, rgba(249,252,255,.9), rgba(246,249,255,.86));
  box-shadow: 0 1.8rem 5rem rgba(42,52,80,.07), inset 0 1px 0 rgba(255,255,255,.96);
}
.site-footer-ref__card::before {
  position: absolute;
  inset: 0;
  content: '';
  pointer-events: none;
  background-image: linear-gradient(rgba(112,130,165,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(112,130,165,.045) 1px, transparent 1px);
  background-size: 3.05rem 3.05rem;
}
.site-footer-ref__orbit { position: absolute; z-index: 0; border-radius: 999px; pointer-events: none; }
.site-footer-ref__orbit--left { left: -5.25rem; bottom: -6.6rem; width: 16.2rem; height: 16.2rem; border: 1px solid rgba(var(--ref-green-rgb),.08); background: radial-gradient(circle, rgba(var(--ref-green-rgb),.22) 0 42%, rgba(var(--ref-green-rgb),.12) 57%, transparent 74%); }
.site-footer-ref__orbit--right { top: -9.7rem; right: -8.75rem; width: 31rem; height: 31rem; border: 1px solid rgba(var(--ref-purple-rgb),.16); box-shadow: 0 0 0 4.7rem rgba(var(--ref-purple-rgb),.017); }
.site-footer-ref__cube { position: absolute; z-index: 1; top: 2rem; right: 3.05rem; width: 7.1rem; opacity: .74; filter: drop-shadow(0 1.4rem 2.1rem rgba(96,91,160,.18)); transform: rotate(15deg); }
.site-footer-ref__main { position: relative; z-index: 2; display: grid; min-width: 0; min-height: 20.9rem; grid-template-columns: minmax(14.5rem,.85fr) max-content minmax(18rem,.9fr); gap: clamp(1.35rem,3.15vw,4.25rem); align-items: center; padding: clamp(2.55rem,4.6vw,4.7rem) clamp(2.1rem,5.3vw,5.2rem); }
.site-footer-ref__brand { display: grid; min-width: 0; grid-template-columns: auto 1fr; gap: .95rem 1rem; align-items: center; }
.site-footer-ref__logo { display: grid; width: 3.15rem; height: 3.15rem; place-items: center; border-radius: .8rem; background: rgba(var(--ref-green-rgb),.11); color: var(--ref-ink); }
.site-footer-ref__logo svg { width: 1.45rem; height: 1.45rem; }
.site-footer-ref__brand strong { color: var(--ref-ink); font-size: 1.72rem; }
.site-footer-ref__brand p { grid-column: 1 / -1; max-width: 16.4rem; margin: 0; color: var(--ref-muted); line-height: 1.68; }
.site-footer-ref__nav { display: flex; min-width: 0; flex-wrap: nowrap; justify-content: center; padding: 0 .4rem; }
.site-footer-ref__nav a { position: relative; padding: .85rem 1.35rem; color: var(--ref-ink); font-weight: 900; text-decoration: none; white-space: nowrap; transition: color .2s ease; }
.site-footer-ref__nav a:hover { color: var(--ref-green); }
.site-footer-ref__nav a + a::before { position: absolute; top: 50%; left: 0; width: 1px; height: 4.2rem; background: rgba(91,105,143,.13); content: ''; transform: translateY(-50%); }
.site-footer-ref__contacts { display: grid; min-width: 0; gap: .78rem; border: 1px solid rgba(91,105,143,.13); border-radius: 1.05rem; background: rgba(255,255,255,.56); padding: 1.35rem; box-shadow: inset 0 1px rgba(255,255,255,.88), 0 1rem 2.5rem rgba(42,52,80,.045); backdrop-filter: blur(16px); }
.site-footer-ref__contacts a { display: grid; min-width: 0; grid-template-columns: auto minmax(0,1fr); gap: .18rem .9rem; align-items: center; border-radius: .82rem; padding: .52rem; color: var(--ref-ink); text-decoration: none; transition: background .2s ease, transform .2s ease; }
.site-footer-ref__contacts a:hover { background: rgba(255,255,255,.5); transform: translateY(-1px); }
.site-footer-ref__contacts a:last-child { grid-template-columns: auto minmax(0,1fr) auto; margin-top: .25rem; border: 1px solid rgba(var(--ref-green-rgb),.16); background: linear-gradient(90deg, rgba(var(--ref-green-rgb),.17), rgba(var(--ref-green-rgb),.08)); padding: .86rem; }
.site-footer-ref__contacts span { display: grid; width: 2.75rem; height: 2.75rem; grid-row: span 2; place-items: center; border-radius: .78rem; background: rgba(var(--ref-green-rgb),.1); color: var(--ref-green); }
.site-footer-ref__contacts a:nth-child(2) span { background: rgba(var(--ref-purple-rgb),.1); color: var(--ref-purple); }
.site-footer-ref__contacts span svg { width: 1.22rem; height: 1.22rem; }
.site-footer-ref__contacts strong { color: var(--ref-ink); font-size: 1.03rem; }
.site-footer-ref__contacts small { min-width: 0; overflow-wrap: anywhere; color: var(--ref-muted); }
.site-footer-ref__bottom { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: clamp(1rem,3.8vw,4rem); align-items: center; justify-content: center; border-top: 1px solid rgba(91,105,143,.14); padding: 1.55rem clamp(2.1rem,5.3vw,5.2rem); color: var(--ref-muted); }
.site-footer-ref__dot { width: .24rem; height: .24rem; border-radius: 999px; background: rgba(96,112,141,.45); }
.site-footer-ref__lang { display: inline-flex; gap: .55rem; align-items: center; margin-left: auto; color: var(--ref-muted); }
.site-footer-ref__lang svg { width: 1.1rem; height: 1.1rem; }
@media (max-width: 1360px) {
  .site-footer-ref__main { grid-template-columns: minmax(12rem,.78fr) max-content minmax(17rem,.9fr); gap: 1.5rem; padding-inline: clamp(1.55rem,3vw,2.55rem); }
  .site-footer-ref__nav a { padding-inline: .92rem; }
  .site-footer-ref__contacts { padding: 1rem; }
}
@media (max-width: 980px) {
  .site-footer-ref__card { width: min(52rem, calc(100vw - 2rem)); }
  .site-footer-ref__main { min-height: 0; grid-template-columns: 1fr; gap: 1.5rem; padding: 2.2rem clamp(1.4rem,4vw,2.4rem); }
  .site-footer-ref__brand, .site-footer-ref__nav { justify-content: center; text-align: center; }
  .site-footer-ref__brand p { max-width: none; }
  .site-footer-ref__nav { justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
}
@media (max-width: 720px) {
  .site-footer-ref__cube { display: none; }
  .site-footer-ref__main { gap: 1.35rem; padding: 2rem 1.2rem; }
  .site-footer-ref__brand, .site-footer-ref__nav { justify-content: flex-start; text-align: left; }
  .site-footer-ref__nav { display: grid; width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)); padding: 0; }
  .site-footer-ref__nav a { padding: .72rem 0; white-space: normal; }
  .site-footer-ref__nav a + a::before, .site-footer-ref__dot { display: none; }
  .site-footer-ref__bottom { display: grid; gap: .55rem; padding: 1.15rem 1.2rem; }
  .site-footer-ref__lang { margin-left: 0; }
}
