/* ChayanKart Honors — ceremonial award-page styling.
   Distinct from /best-under/ buying guides: bigger hero typography, more
   white space around each winner, accent-tinted hero banner per page.
   Loaded ALONGSIDE main.css, not instead of — see honors/*.html. */

.honor-page {
  max-width: 920px;
  margin: 0 auto;
  padding: var(--s-5);
}

/* ----- Hero banner ----- */
.honor-hero-banner {
  text-align: center;
  padding: var(--s-7) var(--s-5) var(--s-6);
  border-bottom: 1px solid var(--border);
  margin-bottom: var(--s-6);
}
.honor-breadcrumb {
  font-family: var(--font-data);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-bottom: var(--s-4);
}
.honor-breadcrumb a { color: var(--brand); text-decoration: none; }
.honor-h1 {
  font-family: var(--font-serif);
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: var(--ink);
  margin: 0 0 var(--s-3);
}
.honor-tagline {
  font-family: var(--font-serif);
  font-size: clamp(17px, 2vw, 21px);
  font-style: italic;
  color: var(--ink-muted);
  line-height: 1.4;
  max-width: 640px;
  margin: 0 auto var(--s-4);
}
.honor-byline {
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-soft);
}
.honor-byline strong { color: var(--ink); }

/* Accent ribbons — different page type, different mood */
.honor-page.accent-gold  .honor-hero-banner { background: linear-gradient(180deg, #fcf5e1 0%, transparent 100%); }
.honor-page.accent-blue  .honor-hero-banner { background: linear-gradient(180deg, #e8edf7 0%, transparent 100%); }
.honor-page.accent-green .honor-hero-banner { background: linear-gradient(180deg, #e8f4ec 0%, transparent 100%); }
.honor-page.accent-wine  .honor-hero-banner { background: linear-gradient(180deg, #f4e6ea 0%, transparent 100%); }

/* ----- Intro + methodology ----- */
.honor-intro p {
  font-size: 17px;
  line-height: 1.7;
  color: var(--ink-muted);
  margin-bottom: var(--s-5);
}
.honor-methodology {
  background: var(--surface-elev);
  border-left: 4px solid var(--accent-deep, #b85c1f);
  padding: var(--s-4) var(--s-5);
  border-radius: var(--radius-md);
  font-size: 14px;
  line-height: 1.6;
  color: var(--ink);
  margin-bottom: var(--s-6);
}
.honor-page.accent-wine  .honor-methodology { border-left-color: #6b1d3a; }
.honor-page.accent-green .honor-methodology { border-left-color: #2a7e3e; }
.honor-page.accent-blue  .honor-methodology { border-left-color: #1a3a8a; }

/* ----- Winner cards ----- */
.honor-list { margin-bottom: var(--s-7); }
.honor-card {
  background: var(--surface-elev);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: var(--s-6);
  margin-bottom: var(--s-5);
  position: relative;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.honor-card:hover { transform: translateY(-2px); box-shadow: 0 6px 24px rgba(0,0,0,0.08); }

/* The #1 winner gets a stronger highlight */
.honor-card-first {
  border-width: 2px;
  background: linear-gradient(180deg, #fefbf4 0%, var(--surface-elev) 60%);
}
.honor-page.accent-gold  .honor-card-first { border-color: #c98c20; }
.honor-page.accent-blue  .honor-card-first { border-color: #1a3a8a; }
.honor-page.accent-green .honor-card-first { border-color: #2a7e3e; }
.honor-page.accent-wine  .honor-card-first { border-color: #6b1d3a; }

.honor-rank {
  display: inline-block;
  background: var(--ink);
  color: var(--surface);
  padding: 5px 14px;
  border-radius: 999px;
  font-family: var(--font-data);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: var(--s-4);
}
.honor-card-first .honor-rank { background: var(--accent, #c98c20); }
.honor-page.accent-wine  .honor-card-first .honor-rank { background: #6b1d3a; }
.honor-page.accent-green .honor-card-first .honor-rank { background: #2a7e3e; }
.honor-page.accent-blue  .honor-card-first .honor-rank { background: #1a3a8a; }

.honor-hero {
  display: flex;
  gap: var(--s-5);
  align-items: flex-start;
  margin-bottom: var(--s-4);
  flex-wrap: wrap;
}
.honor-img {
  width: 140px;
  height: 170px;
  background: white;
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}
.honor-img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.honor-info { flex: 1; min-width: 220px; }
.honor-title {
  font-family: var(--font-serif);
  font-size: 23px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ink);
  margin: 0 0 var(--s-2);
  line-height: 1.25;
}
.honor-meta {
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink-muted);
}

.honor-why {
  background: #faf6ee;
  border-left: 4px solid var(--accent, #c98c20);
  padding: var(--s-4) var(--s-5);
  border-radius: var(--radius-sm);
  margin-bottom: var(--s-4);
}
.honor-page.accent-wine  .honor-why { background: #faf0f3; border-left-color: #6b1d3a; }
.honor-page.accent-green .honor-why { background: #f0f8f3; border-left-color: #2a7e3e; }
.honor-page.accent-blue  .honor-why { background: #f1f4fa; border-left-color: #1a3a8a; }
.honor-why h4 {
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--ink-muted);
  margin: 0 0 var(--s-2);
}
.honor-why p {
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink);
  margin: 0;
}

/* ----- Related honors strip ----- */
.honor-related {
  margin: var(--s-7) 0 var(--s-6);
  padding-top: var(--s-6);
  border-top: 1px solid var(--border);
}
.honor-related h2 {
  font-family: var(--font-serif);
  font-size: 24px;
  margin-bottom: var(--s-4);
}
.honor-related-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--s-3);
}
.related-honor {
  background: var(--surface-elev);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--s-4);
  text-decoration: none;
  color: var(--ink);
  transition: all 0.15s ease;
}
.related-honor:hover {
  border-color: var(--accent-deep, #b85c1f);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}
.related-honor strong {
  display: block;
  font-family: var(--font-serif);
  font-size: 16px;
  margin-bottom: 6px;
  line-height: 1.3;
}
.related-honor span {
  font-size: 12px;
  color: var(--ink-muted);
  line-height: 1.4;
}

/* ----- Trust footer block ----- */
.honor-trust {
  background: var(--surface-elev);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: var(--s-5) var(--s-6);
  margin: var(--s-6) 0;
}
.honor-trust h2 {
  font-family: var(--font-serif);
  font-size: 20px;
  margin: 0 0 var(--s-3);
}
.honor-trust p {
  font-size: 14px;
  line-height: 1.65;
  color: var(--ink-muted);
  margin: 0;
}
