.astro-footer {
  margin-top: 48px;
  padding: 28px 20px 36px;
  border-top: 1px solid rgba(255,255,255,0.16);
  background: rgba(0,0,0,0.14);
}

.astro-footer__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.astro-footer__title {
  margin: 0 0 12px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.astro-footer__text {
  margin: 0 0 10px;
  line-height: 1.55;
  font-size: 0.95rem;
  opacity: 0.92;
}

.astro-footer__meta {
  margin: 14px 0 0;
  font-size: 0.86rem;
  opacity: 0.72;
}



.siteLogoWrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 20px;
  border-bottom: 1px solid rgba(255,255,255,0.16);
}

.siteLogoWrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,0.14) 12%,
    rgba(0,0,0,0.14) 88%,
    rgba(0,0,0,0) 100%
  );
  pointer-events: none;
  z-index: 0;
}

.siteLogoWrap > * {
  position: relative;
  z-index: 1;
}

.siteLogo {
  display: block;
  width: 180px;
  max-width: 28%;
  height: auto;
  flex: 0 0 auto;
}

.siteRule {
  display: block;
  height: auto;
  flex: 1 1 0;
  min-width: 0;
  max-width: 320px;
  opacity: 0.95;
}

.siteRule--left,
.siteRule--right {
  width: 100%;
}


@media (max-width: 700px) {
  .siteLogoWrap {
    gap: 10px;
    padding: 14px 12px;
  }

  .siteLogo {
    width: 120px;
    max-width: 34%;
  }

  .siteRule {
    max-width: none;
  }
}
