/* Footer chrome + the site-wide pre-footer band. Enqueued globally. */

.rain-prefooter {
  background: var(--rain-brand);
  color: var(--rain-text-invert);
  padding-block: clamp(36px, 5vw, 64px);
}
.rain-prefooter__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.rain-prefooter h2 { margin: 0 0 .25em; }
.rain-prefooter p { margin: 0; opacity: .85; }
.rain-prefooter .rain-btn { background: var(--rain-accent); color: var(--rain-brand-dark); }

.rain-footer {
  /* Flat dark grey, matching the live site — not the header's navy. */
  background: var(--rain-footer-bg);
  color: var(--rain-text-invert);
  padding-block: clamp(40px, 5vw, 72px) 0;
}
.rain-footer a { color: inherit; text-decoration: none; }
.rain-footer a:hover { color: var(--rain-accent); }

.rain-footer__inner {
  display: grid;
  gap: 40px;
  grid-template-columns: 1.4fr 1fr 1fr;
  padding-bottom: 40px;
}
.rain-footer__brand img { max-height: 56px; width: auto; }
.rain-footer__name { font-size: 1.2rem; font-weight: 700; }
.rain-footer__tagline { margin-top: 14px; opacity: .8; max-width: 34ch; }

.rain-footer__menus { display: contents; }
.rain-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }

.rain-footer__contact { display: grid; gap: 8px; align-content: start; }
.rain-footer__contact address { font-style: normal; opacity: .8; }

.rain-social { display: flex; gap: 12px; margin-top: 8px; }
.rain-social__link {
  display: grid;
  place-items: center;
  width: 38px; height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.25);
  transition: background .2s var(--rain-ease), border-color .2s var(--rain-ease);
}
.rain-social__link:hover { background: var(--rain-accent); border-color: transparent; }

.rain-footer__legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-block: 20px;
  border-top: 1px solid rgba(255,255,255,.15);
  font-size: .85rem;
  opacity: .75;
}
.rain-footer__legal p { margin: 0; }
.rain-footer__legal-list { display: flex; gap: 18px; list-style: none; margin: 0; padding: 0; }

@media (max-width: 860px) {
  .rain-footer__inner { grid-template-columns: 1fr 1fr; }
  .rain-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .rain-footer__inner { grid-template-columns: 1fr; }
}

.rain-footer__bottom { background: var(--rain-footer-bg); border-top: 1px solid rgba(255, 255, 255, .12); }

/* --------------------------------------------------------------------------
   Footer language row
   -------------------------------------------------------------------------- */

/* Its own band between the footer body and the legal line, so it reads as a
   deliberate control rather than another footer link. The pills are the theme's
   one roundness rule — square surfaces, pill actions — and inversion on hover
   matches how the rest of the site signals "this does something". */
.rain-footerlang {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  padding-block: 18px;
  border-top: 1px solid rgba(255,255,255,.15);
}
.rain-footerlang__label {
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.6);
}
.rain-footerlang__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.rain-footerlang__pill {
  display: inline-block;
  padding: 7px 16px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: var(--rain-btn-radius);
  font-size: .85rem;
  line-height: 1.2;
  color: rgba(255,255,255,.85);
  text-decoration: none;
  transition: background-color .2s var(--rain-ease),
              border-color .2s var(--rain-ease),
              color .2s var(--rain-ease);
}
.rain-footerlang__pill:hover,
.rain-footerlang__pill:focus-visible {
  background: var(--rain-accent);
  border-color: var(--rain-accent);
  color: #fff;
}
/* The current language is a <span>, not a link — filled, and not offering to
   take you where you already are. */
.rain-footerlang__pill.is-active {
  background: #fff;
  border-color: #fff;
  color: var(--rain-brand-dark);
  font-weight: 600;
  cursor: default;
}
.rain-footerlang__pill:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media (max-width: 560px) {
  .rain-footerlang { flex-direction: column; align-items: flex-start; }
}
