/* ===== Homepage — Data-Driven Intelligence Platform ===== */

/* ---- Hero: Workload Finder ---- */
.hero-workload-finder{
  background:linear-gradient(135deg,#0a0a0a 0%,#131826 50%,#0d1117 100%);
  padding:80px 0 64px;
  border-bottom:1px solid var(--border);
}
.hero-workload-finder h1{
  font-size:clamp(2rem,5vw,3.5rem);
  font-weight:800;
  text-align:center;
  line-height:1.15;
  letter-spacing:-.02em;
  margin-bottom:16px;
}
.hero-workload-finder h1 span{color:var(--accent)}
.hero-subtitle{
  text-align:center;
  color:var(--dim);
  font-size:1.125rem;
  max-width:640px;
  margin:0 auto 40px;
}
.workload-finder{
  max-width:800px;
  margin:0 auto;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:32px;
}
.finder-step{margin-bottom:24px}
.finder-step:last-of-type{margin-bottom:0}
.finder-step>label{
  display:block;
  font-size:.875rem;
  font-weight:600;
  color:var(--dim);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:12px;
}
.finder-options{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:12px;
}
.finder-option{
  display:flex;
  align-items:center;
  gap:8px;
  padding:14px 16px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  font-size:.9375rem;
  font-weight:500;
  color:var(--text);
  text-decoration:none;
  transition:all var(--transition);
}
.finder-option:hover{
  border-color:var(--accent);
  background:var(--accent-soft);
  color:var(--accent-hover);
  transform:translateY(-2px);
}
.finder-option svg{width:20px;height:20px;flex-shrink:0;color:var(--accent)}
.finder-select{
  width:100%;
  padding:12px 16px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  color:var(--text);
  font-size:1rem;
  font-family:inherit;
  cursor:pointer;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M6 8L0 0h12z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  padding-right:40px;
}
.finder-select:focus{border-color:var(--accent);outline:none;box-shadow:var(--focus-ring)}
.finder-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.workload-finder .btn{
  display:block;
  width:100%;
  margin-top:24px;
  padding:14px;
  font-size:1rem;
  font-weight:600;
  text-align:center;
}

/* ---- Stats Bar ---- */
.stats-bar{
  background:var(--surface);
  border-bottom:1px solid var(--border);
  padding:32px 0;
}
.stats-bar .container{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  text-align:center;
}
.stat{display:flex;flex-direction:column;gap:4px}
.stat-number{font-size:1.75rem;font-weight:800;color:var(--accent)}
.stat-label{font-size:.8125rem;color:var(--dim);text-transform:uppercase;letter-spacing:.05em}

/* ---- Section Defaults ---- */
.hp-section{padding:64px 0;border-bottom:1px solid var(--border)}
.hp-section h2{
  font-size:clamp(1.5rem,3vw,2.25rem);
  font-weight:700;
  text-align:center;
  margin-bottom:8px;
}
.hp-section .section-desc{
  text-align:center;
  color:var(--dim);
  font-size:1.0625rem;
  max-width:560px;
  margin:0 auto 40px;
}

/* ---- Model Compatibility Checker ---- */
.model-cards{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(340px,1fr));
  gap:20px;
}
.model-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:24px;
  transition:border-color var(--transition);
}
.model-card:hover{border-color:var(--border-hover)}
.model-card h3{font-size:1.125rem;font-weight:700;margin-bottom:12px}
.model-reqs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:var(--radius-xs);
  font-size:.75rem;
  font-weight:600;
}
.badge-quantized{background:var(--green-soft);color:var(--green)}
.badge-full{background:var(--yellow-soft);color:var(--yellow)}
.model-hardware{font-size:.875rem;color:var(--dim);margin-bottom:12px;line-height:1.6}
.model-hardware strong{color:var(--text)}
.model-link{font-size:.875rem;font-weight:600}

/* ---- Workload Leaderboard ---- */
.leaderboard-tabs{
  display:flex;
  gap:4px;
  justify-content:center;
  margin-bottom:24px;
  flex-wrap:wrap;
}
.leaderboard-tabs .tab{
  padding:10px 20px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  color:var(--dim);
  font-size:.875rem;
  font-weight:600;
  cursor:pointer;
  transition:all var(--transition);
  font-family:inherit;
}
.leaderboard-tabs .tab:hover{color:var(--text);border-color:var(--border-hover)}
.leaderboard-tabs .tab.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-hover)}
.leaderboard-content{display:none}
.leaderboard-content.active{display:block}
.leaderboard-table{
  width:100%;
  border-collapse:collapse;
  background:var(--surface);
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--border);
}
.leaderboard-table thead{background:var(--surface2)}
.leaderboard-table th{
  padding:12px 16px;
  text-align:left;
  font-size:.75rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--dim);
}
.leaderboard-table td{
  padding:14px 16px;
  border-top:1px solid var(--border);
  font-size:.9375rem;
}
.leaderboard-table tbody tr:hover{background:var(--surface2)}
.leaderboard-rank{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;height:28px;
  border-radius:50%;
  background:var(--surface3);
  font-weight:700;
  font-size:.8125rem;
}
.leaderboard-rank.top-1{background:var(--accent-soft);color:var(--accent)}
.leaderboard-table .leaderboard-link{font-weight:600;font-size:.875rem}

/* ---- Category Explorer ---- */
.category-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:20px;
}
.category-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  padding:28px 24px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  text-decoration:none;
  color:var(--text);
  transition:all var(--transition);
}
.category-card:hover{
  border-color:var(--accent);
  transform:translateY(-2px);
  background:var(--surface2);
}
.category-card svg{width:32px;height:32px;color:var(--accent)}
.category-card h3{font-size:1.125rem;font-weight:700}
.category-card p{font-size:.875rem;color:var(--dim);line-height:1.5}

/* ---- Popular Comparisons ---- */
.comparison-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:16px;
}
.comparison-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 24px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  text-decoration:none;
  color:var(--text);
  font-weight:600;
  font-size:1rem;
  transition:all var(--transition);
}
.comparison-card:hover{
  border-color:var(--accent);
  background:var(--surface2);
  transform:translateY(-1px);
}
.comparison-card svg{width:18px;height:18px;color:var(--accent);flex-shrink:0}

/* ---- Methodology Proof ---- */
.methodology-proof{text-align:center}
.methodology-badges{
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.proof-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 20px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  font-size:.875rem;
  font-weight:600;
  color:var(--dim);
}
.proof-badge svg{width:18px;height:18px;color:var(--accent)}
.methodology-proof p{color:var(--dim);font-size:.9375rem}

/* ---- Affiliate Disclosure (compact) ---- */
.hp-disclosure{
  padding:24px 0;
  text-align:center;
}
.hp-disclosure p{
  font-size:.8125rem;
  color:var(--dimmer);
  max-width:800px;
  margin:0 auto;
  line-height:1.6;
}

/* ---- Footer (multi-column) ---- */
.site-footer{
  background:var(--surface);
  border-top:1px solid var(--border);
  padding:48px 0 24px;
  margin-top:0;
}
.footer-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:32px;
  margin-bottom:32px;
}
.footer-col h4{
  font-size:.8125rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--text);
  margin-bottom:12px;
}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:8px}
.footer-col a{font-size:.875rem;color:var(--dim);text-decoration:none}
.footer-col a:hover{color:var(--accent-hover)}
.footer-bottom{
  border-top:1px solid var(--border);
  padding-top:20px;
  text-align:center;
}
.footer-bottom p{font-size:.8125rem;color:var(--dimmer)}

/* ---- Responsive ---- */
@media(max-width:768px){
  .hero-workload-finder{padding:48px 0 40px}
  .workload-finder{padding:20px}
  .finder-options{grid-template-columns:repeat(2,1fr)}
  .finder-row{grid-template-columns:1fr}
  .stats-bar .container{grid-template-columns:repeat(2,1fr);gap:16px}
  .stat-number{font-size:1.375rem}
  .hp-section{padding:48px 0}
  .model-cards{grid-template-columns:1fr}
  .leaderboard-table{font-size:.8125rem}
  .leaderboard-table th,.leaderboard-table td{padding:10px 8px}
  .category-grid{grid-template-columns:1fr}
  .comparison-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:24px}
}

@media(max-width:480px){
  .finder-options{grid-template-columns:1fr}
  .stats-bar .container{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
}
