/* Stratford Footer 1.0.0 — isolated from Elementor and the theme. */
/* Hello Elementor native placeholder footer is replaced only while this plugin is active. */
#site-footer.site-footer { display: none !important; }

.stratford-footer {
  --stratford-footer-accent: #b42424;
  box-sizing: border-box;
  width: 100%;
  background-color: #fff;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  color: #202020;
  border-top: 1px solid rgba(0,0,0,.05);
  padding: 5em 2em;
}
.stratford-footer *, .stratford-footer *::before, .stratford-footer *::after { box-sizing: border-box; }
.stratford-footer__container {
  max-width: 1440px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: clamp(18px, 2vw, 36px);
  align-items: start;
}
.stratford-footer__col { min-width: 0; }
.stratford-footer__logo { display: inline-block; max-width: 100%; margin-bottom: 15px; }
.stratford-footer__logo img { display: block; width: min(100%, 235px); height: auto; object-fit: contain; }
.stratford-footer__brand p {
  margin: 0 0 24px;
  font: 400 16px/1.65 Roboto, Arial, sans-serif;
  letter-spacing: .025em;
}
.stratford-footer h2 {
  margin: 0 0 21px;
  font: 400 24px/1.3 Rubik, Roboto, Arial, sans-serif;
  overflow-wrap: anywhere;
}
.stratford-footer h2 a { color: #171717; text-decoration: none; }
.stratford-footer ul { margin: 0; padding: 0; list-style: none; }
.stratford-footer li { margin: 0 0 14px; padding: 0; }
.stratford-footer li a,
.stratford-footer__contact a,
.stratford-footer address {
  color: #333;
  font: 400 18px/1.55 Roboto, Arial, sans-serif;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.stratford-footer a:hover, .stratford-footer a:focus-visible { color: var(--stratford-footer-accent); }
.stratford-footer a:focus-visible { outline: 2px solid var(--stratford-footer-accent); outline-offset: 3px; }
.stratford-footer address { margin-top: 18px; font-style: normal; }
.stratford-footer__email { display: inline-block; }
.stratford-footer__social { display: inline-flex; align-items: center; gap: 10px; font: 500 16px/1.4 Roboto,Arial,sans-serif; text-decoration: none; }
.stratford-footer__social:first-letter { font-weight: bold; }
.stratford-footer__social span { font-size: 14px; }
@media (max-width: 1100px) {
  .stratford-footer__container { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap: 36px; }
}
@media (max-width: 767px) {
  .stratford-footer { padding: 48px 1em; }
  .stratford-footer__container { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 22px; }
  .stratford-footer__brand, .stratford-footer__contact { grid-column: 1 / -1; }
  .stratford-footer h2 { font-size: 21px; }
  .stratford-footer li a, .stratford-footer__contact a, .stratford-footer address { font-size: 16px; }
}
@media (max-width: 440px) {
  .stratford-footer__container { grid-template-columns: 1fr; }
  .stratford-footer__brand, .stratford-footer__contact { grid-column: auto; }
}
