/* AI Review Rating: front page. Loaded only on the front page.
   Tokens (--a-*) come from .airr-pdp in pdp.css, which .airr-home also carries. */

.airr-home{display:flex;flex-direction:column;gap:34px}

/* ---------------------------------------------------------------- hero --- */
.airr-hero{
  background:linear-gradient(180deg,var(--a-accent-soft),var(--a-card));
  border:1px solid var(--a-rule);
  border-radius:16px;
  padding:44px 34px 34px;
}
.airr-hero-in{max-width:720px}
.airr-home .airr-hero h1{
  font-size:clamp(1.9rem,4.4vw,2.9rem);
  line-height:1.12;letter-spacing:-.025em;font-weight:800;
  margin:0 0 12px;text-wrap:balance;color:var(--a-ink);
}
.airr-hero-sub{
  font-size:1.03rem;color:var(--a-ink2);margin:0 0 22px;max-width:60ch;
}
.airr-hero .airr-search{margin-bottom:24px;max-width:560px}

.airr-hero-stats{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;gap:12px 30px;
  border-top:1px solid var(--a-rule);padding-top:18px;
}
.airr-hero-stats li{display:flex;flex-direction:column;gap:1px}
.airr-hero-stats b{
  font-size:1.32rem;font-weight:750;color:var(--a-ink);
  font-variant-numeric:tabular-nums;line-height:1.1;
}
.airr-hero-stats span{font-size:.78rem;color:var(--a-muted)}

/* ------------------------------------------------------------ sections --- */
.airr-hsec-head{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:16px;flex-wrap:wrap;margin-bottom:6px;
}
.airr-home .airr-hsec-head h2{
  font-size:1.24rem;font-weight:750;letter-spacing:-.015em;margin:0;color:var(--a-ink);
}
.airr-hsec-head a{
  font-size:.85rem;color:var(--a-accent);text-decoration:none;white-space:nowrap;font-weight:600;
}
.airr-hsec-head a:hover{text-decoration:underline}
.airr-hsec-note{font-size:.85rem;color:var(--a-muted);margin:0 0 16px;max-width:66ch}
.airr-hsec-note a{color:var(--a-accent)}

/* ---------------------------------------------------------- rank list --- */
.airr-rank{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.airr-rank > li{
  background:var(--a-card);border:1px solid var(--a-rule);
  border-radius:10px;transition:border-color .12s;
}
.airr-rank > li:hover{border-color:var(--a-accent)}
.airr-rank a{
  display:grid;
  grid-template-columns:30px 34px minmax(0,1fr) auto;
  align-items:center;gap:14px;
  padding:13px 18px;text-decoration:none;color:inherit;
}
.airr-rank-n{
  font-size:.92rem;font-weight:700;color:var(--a-muted);
  font-variant-numeric:tabular-nums;text-align:center;
}
.airr-rank a img,.airr-rank .airr-mini{border-radius:7px}
.airr-rank-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.airr-rank-body b{font-size:1rem;font-weight:680;color:var(--a-ink);letter-spacing:-.01em}
.airr-rank-tag{
  font-size:.85rem;color:var(--a-ink2);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.airr-rank-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:2px}
.airr-rank-score{
  font-size:1.22rem;font-weight:760;color:var(--a-accent);
  font-variant-numeric:tabular-nums;
}

/* ------------------------------------------------------ category grid --- */
.airr-catgrid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:10px;
}
.airr-catcard{
  display:flex;flex-direction:column;gap:3px;
  background:var(--a-card);border:1px solid var(--a-rule);border-radius:10px;
  padding:14px 16px;text-decoration:none;transition:border-color .12s,background .12s;
}
.airr-catcard:hover{border-color:var(--a-accent);background:var(--a-accent-soft)}
.airr-catcard b{font-size:.94rem;font-weight:650;color:var(--a-ink);letter-spacing:-.01em}
.airr-catcard span{font-size:.79rem;color:var(--a-muted);font-variant-numeric:tabular-nums}

/* ---------------------------------------------------------- newsletter --- */
.airr-news{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:22px;background:var(--a-card2);border:1px solid var(--a-rule);
  border-radius:14px;padding:26px 30px;
}
.airr-news-copy{max-width:46ch}
.airr-home .airr-news h2{margin:0 0 5px;font-size:1.16rem;font-weight:750;color:var(--a-ink)}
.airr-news-copy p{margin:0;font-size:.9rem;color:var(--a-ink2)}
.airr-news-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.airr-news-form input[type=email]{
  min-width:250px;padding:10px 13px;font-size:.92rem;
  border:1px solid var(--a-rule2);border-radius:8px;background:var(--a-card);color:var(--a-ink);
}
.airr-news-form input[type=email]:focus-visible{outline:2px solid var(--a-accent);outline-offset:1px}
.airr-news-form button{
  padding:10px 20px;font-size:.92rem;font-weight:650;cursor:pointer;
  background:var(--a-accent);color:#fff;border:1px solid var(--a-accent);border-radius:8px;
}
.airr-news-form button:hover{filter:brightness(1.08)}
.airr-news-ok{margin:0;font-size:.92rem;font-weight:600;color:var(--a-good)}
.airr-news-err{margin:6px 0 0;font-size:.86rem;color:var(--a-warn);flex-basis:100%}
/* Honeypot: off-canvas rather than display:none, which some bots detect. */
.airr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.airr-home a:focus-visible,.airr-news-form button:focus-visible{
  outline:2px solid var(--a-accent);outline-offset:2px;border-radius:6px;
}

@media (max-width:680px){
  .airr-hero{padding:30px 20px 24px}
  .airr-rank a{grid-template-columns:24px 30px minmax(0,1fr) auto;gap:10px;padding:11px 13px}
  .airr-rank-tag{white-space:normal}
  .airr-news{padding:22px}
  .airr-news-form input[type=email]{min-width:0;flex:1}
}
@media (prefers-reduced-motion:reduce){
  .airr-home *{transition:none!important}
}
