.sitemap-hero{padding:160px 0 80px;background:linear-gradient(145deg,#02050c,#07101f 60%,#0a1a2e);text-align:center}
.sitemap-hero h1{font-size:clamp(2rem,5vw,3.2rem);color:#fff;margin:.6rem 0 1rem}
.sitemap-hero p{color:#8195aa;font-size:1.05rem;max-width:520px;margin:0 auto}
.sitemap-body{background:#f8fafc}
.sitemap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.sitemap-group{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 8px 28px rgba(15,23,42,.05)}
.sitemap-group-head{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.sitemap-group-head i{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:14px;flex:0 0 auto}
.sitemap-group-head h2{font-size:16px;font-weight:700;color:var(--ink);margin:0}
.sitemap-group ul{display:grid;gap:4px;list-style:none;padding:0;margin:0}
.sitemap-group li a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;color:#344054;font-size:13px;font-weight:500;transition:background .18s,color .18s}
.sitemap-group li a:hover{background:#eef6fb;color:var(--blue)}
.sm-arrow{color:var(--cyan);font-size:11px;font-weight:700;flex:0 0 auto}
@media(max-width:1100px){.sitemap-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.sitemap-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.sitemap-grid{grid-template-columns:1fr}}

/* Locations horizontal sitemap overrides */
.sitemap-grid .sitemap-group-locations {
  grid-column: 1 / -1;
}
.sitemap-group-locations ul {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
}
.sitemap-group-locations li {
  flex: 0 0 auto;
}
.sitemap-group-locations li a {
  border: 1px solid var(--line);
  padding: 6px 14px;
  background: #fafbfc;
  border-radius: 12px;
}

/* Separation padding for Can't find CTA */
.sitemap-contact-cta {
  padding-top: 80px;
  padding-bottom: 120px;
  text-align: center;
}
.sitemap-cta-inner {
  max-width: 500px;
  margin: 0 auto;
  background: #000000;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 24px;
  padding: 48px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
}
.sitemap-cta-inner h2 {
  font-size: 28px;
  font-weight: 800;
  color: #ffffff;
  margin: 0;
}
.sitemap-cta-inner p {
  color: rgba(255, 255, 255, 0.7);
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
  max-width: 480px;
}
.sitemap-cta-btns {
  display: flex;
  gap: 12px;
  margin-top: 10px;
}
.sitemap-cta-btns .btn-secondary {
  background: #effbf4;
  border: 1px solid rgba(37, 211, 102, 0.28);
  color: #128c4c;
}
.sitemap-cta-btns .btn-secondary:hover {
  background: #e2f7ea;
}

@media (max-width: 560px) {
  .sitemap-cta-inner {
    padding: 32px 20px;
    gap: 14px;
  }
  .sitemap-cta-inner h2 {
    font-size: 22px;
  }
  .sitemap-cta-btns {
    flex-direction: column;
    width: 100%;
    gap: 8px;
  }
  .sitemap-cta-btns .btn {
    width: 100%;
    justify-content: center;
  }
}
