.gtm-support-home-row {
  display:flex; justify-content:space-between; align-items:center;
  gap:16px; flex-wrap:wrap; margin:18px 0 24px;
}
a.gtm-support-home-button {
  display:inline-flex; flex-direction:column; align-items:center;
  justify-content:center; gap:4px; padding:14px 28px;
  background:#ffd54a !important; color:#073b25 !important;
  border:3px solid #075c35; border-radius:14px;
  box-shadow:0 4px 0 #075c35; text-decoration:none !important;
  text-align:center; line-height:1.25;
}
.gtm-support-home-button strong {
  font-size:24px; font-weight:900; color:#073b25 !important;
}
.gtm-support-home-button small {
  font-size:14px; font-weight:700; color:#073b25 !important;
}
a.gtm-support-home-button:hover {
  background:#ffe477 !important;
}
a.gtm-support-home-button:focus-visible {
  outline:3px solid #075c35; outline-offset:5px;
}
@media(max-width:600px) {
  .gtm-support-home-row {justify-content:center;}
  .gtm-support-home-row > span {width:100%; text-align:center;}
  a.gtm-support-home-button {width:100%; box-sizing:border-box;}
}

/* Compact mobile support button */
@media (max-width:600px) {
  a.gtm-support-home-button {
    width:90%;
    max-width:360px;
    padding:10px 16px;
    border-width:2px;
    border-radius:12px;
    box-shadow:0 3px 0 #075c35;
  }
  .gtm-support-home-button strong {
    font-size:21px;
  }
  .gtm-support-home-button small {
    font-size:12px;
  }
}

/* Smaller single-line support button */
a.gtm-support-home-button {
  padding:10px 20px;
}
.gtm-support-home-button strong {
  font-size:20px;
}
@media (max-width:600px) {
  a.gtm-support-home-button {
    width:auto;
    max-width:100%;
    padding:10px 24px;
  }
  .gtm-support-home-button strong {
    font-size:19px;
  }
}

/* Home page footer */
footer.gtm-home-footer {
  display:block;
  margin-top:36px;
  padding:28px;
  background:#073b25;
  color:#ffffff;
  border-top:4px solid #ffd54a;
  border-radius:14px;
  text-align:left;
}
.gtm-home-footer-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.gtm-home-footer-title {
  font-size:24px;
  color:#ffd54a;
}
.gtm-home-footer p {
  color:#ffffff;
  line-height:1.6;
  margin:10px 0;
}
.gtm-home-footer nav {
  display:flex;
  flex-wrap:wrap;
  gap:20px;
}
.gtm-home-footer nav a {
  color:#ffffff !important;
  font-weight:700;
  text-decoration:underline;
}
.gtm-home-footer-copyright {
  border-top:1px solid #729383;
  padding-top:16px;
  margin-top:22px !important;
}
@media(max-width:600px) {
  .gtm-home-footer-grid {grid-template-columns:1fr;}
  footer.gtm-home-footer {padding:22px;}
}

/* Compact homepage footer */
footer.gtm-home-footer {
  margin-top:28px;
  padding:22px 28px 16px;
  border-top:3px solid #ffd54a;
  border-radius:12px;
}
.gtm-home-footer .gtm-home-footer-grid {
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
}
.gtm-home-footer .gtm-home-footer-title {
  font-size:20px;
  line-height:1.3;
}
.gtm-home-footer p {
  font-size:14px;
  line-height:1.5;
  margin:6px 0 0;
}
.gtm-home-footer-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
}
.gtm-home-footer nav {
  gap:18px;
}
.gtm-home-footer nav a {
  font-size:14px;
  font-weight:600;
  text-decoration:none;
}
.gtm-home-footer nav a:hover {
  text-decoration:underline;
}
.gtm-home-footer a.gtm-support-home-button {
  width:auto;
  padding:9px 16px;
  border-width:1px;
  border-radius:8px;
  box-shadow:none;
  white-space:nowrap;
}
.gtm-home-footer .gtm-support-home-button strong {
  font-size:15px;
  font-weight:800;
}
.gtm-home-footer-bottom {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px 20px;
  margin-top:16px;
  padding-top:12px;
  border-top:1px solid #527663;
  font-size:12px;
  line-height:1.5;
  color:#dce8df;
}
@media(max-width:900px) {
  .gtm-home-footer-actions {
    flex-direction:column;
    align-items:flex-end;
    gap:12px;
  }
}
@media(max-width:600px) {
  footer.gtm-home-footer {
    padding:18px;
  }
  .gtm-home-footer .gtm-home-footer-grid {
    grid-template-columns:1fr;
    gap:16px;
  }
  .gtm-home-footer-actions {
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
  }
  .gtm-home-footer nav {
    gap:14px;
  }
}
