footer {
  padding: 52px 24px;
  background: #2f2f2f !important;
  color: #ffffff !important;
  text-align: center;
}

footer > img {
  width: 160px;
  margin: 0 auto 8px;
}

footer p {
  margin: 8px 0;
  color: #ffffff;
}

footer a {
  color: #ffffff;
}

footer a:hover {
  color: #e20a17;
}

.bot-field {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
}

.form-privacy {
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
}

.form-privacy a {
    color: inherit;
    text-decoration: underline;
}

.button-row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 36px;
}

.service-hero {
    min-height: 410px;
    display: grid;
    place-items: center;
    padding: 70px 24px;
    text-align: center;
    color: #fff;
    background: linear-gradient(#1119, #1119), url('assets/hero.jpg') center/cover;
}

.service-hero > div { max-width: 900px; }
.service-hero small { font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; }
.service-hero h1 { margin: 8px 0 18px; font-size: clamp(38px, 5vw, 64px); line-height: 1.08; }
.service-hero p { margin: 0 auto 30px; max-width: 760px; font-size: 19px; }
.service-page .lead { margin: 0 auto 48px; max-width: 820px; font-size: 20px; text-align: center; }

.feature-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
}

.feature-grid section { padding: 24px; background: #f2f2f2; }
.feature-grid h2 { margin-top: 0; font-size: 23px; }
.check-list { columns: 2; padding-left: 22px; }
.image-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 42px 0; }
.image-pair img { width: 100%; height: 330px; object-fit: cover; }
.cta-panel { margin-top: 55px; padding: 42px; text-align: center; color: #fff; background: #e20a17; }
.cta-panel h2 { margin-top: 0; }

@media(max-width:680px) {
    .feature-grid, .image-pair { grid-template-columns: 1fr; }
    .check-list { columns: 1; }
    .image-pair img { height: 250px; }
    .cta-panel { padding: 30px 20px; }
}
