* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: Georgia, serif; line-height:1.6; color:#333; background:#fafafa; }
header { background:#1f2937; padding:1rem; text-align:center; }

.logo-img {
  height: 72px;           /* adjust this to make logo bigger/smaller */
  max-width: 72px;
  margin: 0 0rem;
}
nav { margin:1rem 0; }
nav a { color:white; margin:0 1rem; text-decoration:none; font-weight:bold; }
nav a:hover { color:#dc2626; }
main { max-width:1100px; margin:1rem auto; padding:0 1rem; }
main > section, main > h1, main > h2, main > p, main > div { margin-bottom: 0.1rem; }
main > h1 { margin-bottom: 1.2rem; }
main > h2 { margin: 2rem 0 1rem; }
h1, h2 { color:#1f2937; margin-bottom:1rem; text-align:center; }
.table-center main{
  width:100%; border-collapse:collapse;  margin: 1rem 0 !important; background:#fafafa;
}
.centered-table {
	margin-left: auto;
	margin-right: auto;
	width: fit-content; /* Or a specific width like 80% */
}

.container {
  position: relative; /* Essential for positioning the pseudo-element */
  width: 100%;
  height: 100%;
  border: 1px solid black;
}

.container::before {
  content: ''; /* Required for pseudo-elements */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('images/service-map.png'); /* Replace with your image path */
  background-size: cover; /* Adjust as needed (cover, contain, etc.) */
  opacity: 0.9; /* Adjust for desired translucency (0.0 to 1.0) */
  z-index: -1; /* Places the pseudo-element behind the content */
}

.container p {
  position: relative; /* Ensures content appears above the pseudo-element */
  z-index: 1;
  color: black;
}

figcaption {
  background-color: black;
  color: white;
  font-style: italic;
  padding: 2px;
  text-align: center;
}
	
.table-comparison {
  width:100%; border-collapse:collapse; margin: 1rem 0 !important; background:white; box-shadow:0 4px 15px rgba(0,0,0,0.1);
}
.table-comparison th { background:#dc2626; color:white; padding:1rem; }
.table-comparison td { padding:1rem; text-align:center; border-bottom:1px solid #ddd; }
.yes { color:green; font-weight:bold; }
.no  { color:#aaa; }
.cash-benefits { background:#fef3c7; padding:2rem; border-radius:8px; margin:2rem 0; }
.gallery { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:1rem; margin:2rem 0; }
.gallery img { width:100%; height:auto; border-radius:8px; box-shadow:0 4px 10px rgba(0,0,0,0.1); }
form { max-width:600px; margin:2rem auto; display:grid; gap:1rem; }
input, textarea { padding:0.8rem; border:1px solid #ccc; border-radius:4px; font-family:inherit; }
button { background:#dc2626; color:white; padding:1rem; border:none; cursor:pointer; font-size:1.1rem; border-radius:4px; }
button:hover { background:#b91c1c; }
footer { background:#1f2937; color:white; text-align:center; padding:2rem; margin-top:4rem; }
@media (max-width:640px) { nav a { display:block; margin:0.5rem 0; } }