/* ============================================================
   Sitemap page - premium redesign
   Royal Fishing Flies Kenya · theme pflat · page_name sitemap
   ============================================================ */

body#sitemap #center_column {
  padding-top: 6px;
}

body#sitemap .page-heading {
  margin: 0 0 24px;
  padding: 30px 32px;
  border-radius: 18px 18px 0 0;
  background:
    radial-gradient(120% 140% at 88% -10%, rgba(108, 194, 74, .30) 0%, rgba(108, 194, 74, 0) 55%),
    linear-gradient(135deg, #0b2418 0%, #16452a 42%, #2f7d3c 100%);
  color: #fff;
  font-size: 30px;
  line-height: 1.2;
  letter-spacing: -.02em;
  font-weight: 700;
  box-shadow: 0 18px 40px rgba(13, 42, 27, .22);
}

body#sitemap .sitemap_block,
body#sitemap .categTree {
  background: #fff;
  border: 1px solid #e7ece7;
  border-radius: 16px;
  padding: 22px 24px;
  box-shadow: 0 6px 18px rgba(13, 42, 27, .05);
  height: 100%;
}

body#sitemap .page-subheading {
  margin: 0 0 14px;
  padding: 0 0 10px;
  border: 0;
  border-bottom: 2px solid #fa6900;
  display: inline-block;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.01em;
  color: #1a2620;
}

body#sitemap .sitemap_block ul,
body#sitemap .categTree ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

body#sitemap .sitemap_block li {
  line-height: 1.5;
  padding: 0 0 8px;
  margin: 0;
}

body#sitemap .sitemap_block li a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #3f4756;
  text-decoration: none;
  transition: color .15s ease;
}

body#sitemap .sitemap_block li a::before {
  content: "\f105";
  font-family: "FontAwesome";
  font-size: 11px;
  color: #6cc24a;
}

body#sitemap .sitemap_block li a:hover {
  color: #2f7d3c;
  font-weight: 700;
}

/* ---------- category grid ---------- */
body#sitemap #listpage_content ul.tree {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 0;
  margin: 0;
  list-style: none;
  border: 0;
}

body#sitemap #listpage_content ul.tree li,
body#sitemap #listpage_content ul.tree li.last {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}

body#sitemap #listpage_content ul.tree li a {
  display: block;
  padding: 9px 12px;
  border: 1px solid #e6ede2;
  border-radius: 10px;
  background: #fbfcf9;
  color: #1e2a22;
  font-size: 12.5px;
  line-height: 1.3;
  text-decoration: none;
  transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

body#sitemap #listpage_content ul.tree li a:hover {
  background: #eaf7e0;
  border-color: #cfe3c4;
  color: #2f7d3c;
  font-weight: 600;
  transform: translateY(-1px);
}

body#sitemap #listpage_content div.tree_top {
  padding: 0 0 12px;
}

body#sitemap #listpage_content div.tree_top a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #2f7d3c;
  text-decoration: none;
}

body#sitemap #listpage_content div.tree_top a::before {
  content: "\f015";
  font-family: "FontAwesome";
  font-size: 16px;
  color: #2f7d3c;
}

/* ---------- responsive ---------- */
@media (max-width: 900px) {
  body#sitemap #listpage_content ul.tree {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  body#sitemap #listpage_content ul.tree {
    grid-template-columns: 1fr;
  }
  body#sitemap .page-heading {
    padding: 24px 20px;
    font-size: 24px;
  }
  body#sitemap .sitemap_block,
  body#sitemap .categTree {
    padding: 18px;
  }
}
