/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* Homepage (front-page.php) */
.container { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.hero { text-align:center; padding: 32px 0 16px; }
.hero h1 { margin: 0 0 12px; font-size: 36px; }
.hero p { color:#4b5563; max-width: 760px; margin: 0 auto 16px; }
.hero-search-title { font-size: 32px; margin: 8px 0 16px; }
.hero-search-title span { background: #e6ebd5; border-radius: 24px; padding: 0 8px; }
.search-form { display:flex; gap:8px; justify-content:center; }
.search-form .search-field { width: 60%; max-width:640px; padding:10px 12px; border:1px solid #d1d5db; border-radius:4px; }
.search-form .search-submit { background:#374151; color:#fff; border:0; padding:10px 14px; border-radius:4px; cursor:pointer; }

.tax-menu { margin: 18px auto; }
.tax-menu h2 { margin: 8px 0 10px; }
.tax-list { display:grid; grid-template-columns: repeat(4, 1fr); gap:14px; list-style:none; padding:0; margin:0; }
.tax-list a { display:flex; align-items:center; gap:12px; padding:14px; background:#f3f4f6; border-radius:12px; color:#111827; text-decoration:none; border:1px solid #e5e7eb; height:100%; }
.tax-list.badges .badge-value { display:inline-flex; align-items:center; justify-content:center; width:72px; height:72px; background:#0f3b47; color:#fff; border-radius:36px; font-weight:700; font-size:20px; }
.tax-list.badges .badge-label { font-weight:600; color:#0f172a; line-height:1.2; }

@media (max-width: 900px) {
  .tax-list { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .tax-list { grid-template-columns: 1fr; }
}

.counters h2 { margin: 24px 0 12px; }
.counter-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap:16px; }
.counter-box { background:#eef2f7; border-radius:14px; padding:16px; text-align:center; }
.counter-box .value { font-size:28px; font-weight:700; color:#0f3b47; margin-bottom:4px; }
.counter-box .label { color:#374151; }

.latest { margin: 22px auto 40px; }
.posts-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap:20px; }
.card { background:#fff; border:1px solid #e5e7eb; border-radius:10px; overflow:hidden; }
.card .thumb img { width:100%; height:auto; display:block; }
.card .entry-title { font-size:18px; margin:12px; }
.card .entry-title a { text-decoration:none; color:#0f172a; }
.card .entry-meta { font-size:13px; color:#6b7280; margin:0 12px 12px; }

@media (max-width: 640px) {
  .search-form .search-field { width:100%; }
}
