.cat-fnav-safe,
.cat-fnav-home{
  --page:#07110e;
  --block:#0b1a15;
  --card:#0d211a;
  --card-hover:#16382c;
  --gold:#a98a52;
  --gold-muted:#7e6942;
  --text:#e7e9e6;
  --muted:#aeb8b2;
  box-sizing:border-box;
}
.cat-fnav-safe *,
.cat-fnav-home *{box-sizing:border-box}

/* Existing catalogue */
.cat-fnav-safe{
  max-width:1180px;
  margin:28px auto;
  padding:30px;
  background:linear-gradient(145deg,var(--block),var(--page));
  border:1px solid rgba(169,138,82,.55);
  border-radius:18px;
  color:var(--text);
}
.cat-fnav-safe__head{margin-bottom:20px}
.cat-fnav-safe__eyebrow{
  color:var(--gold);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.cat-fnav-safe h2{color:var(--text);margin:0;font-size:clamp(26px,4vw,40px);line-height:1.15}
.cat-fnav-safe__head p{margin:10px 0 0;color:var(--muted);line-height:1.55}
.cat-fnav-safe__crumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:0 0 22px;
  padding:12px 0;
  border-top:1px solid rgba(169,138,82,.25);
  border-bottom:1px solid rgba(169,138,82,.25);
  font-size:13px;
}
.cat-fnav-safe__crumbs a{color:var(--gold);text-decoration:none}
.cat-fnav-safe__crumbs a:hover{text-decoration:underline}
.cat-fnav-safe__sep{color:var(--gold-muted)}
.cat-fnav-safe__current{color:var(--text)}
.cat-fnav-safe__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cat-fnav-safe__card{
  min-height:110px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:18px;
  border:1px solid rgba(169,138,82,.45);
  border-radius:12px;
  background:var(--card);
  color:var(--text);
  text-decoration:none;
  transition:.18s ease;
}
.cat-fnav-safe__card:hover{transform:translateY(-2px);background:var(--card-hover);border-color:var(--gold);color:var(--text)}
.cat-fnav-safe__card-title{font-size:16px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.cat-fnav-safe__card-meta{margin-top:8px;color:var(--muted);font-size:13px}
.cat-fnav-safe__card-action{margin-top:18px;color:var(--gold);font-size:13px}
.cat-fnav-safe__empty,
.cat-fnav-safe--error,
.cat-fnav-home--empty,
.cat-fnav-home--error{
  padding:28px;
  border:1px dashed rgba(169,138,82,.35);
  border-radius:12px;
  color:var(--muted);
  text-align:center;
}

/* Homepage vehicle tabs and brand logos */
.cat-fnav-home{
  max-width:1180px;
  margin:28px auto;
  overflow:hidden;
  border:1px solid rgba(169,138,82,.55);
  border-radius:18px;
  background:linear-gradient(145deg,var(--block),var(--page));
  color:var(--text);
  box-shadow:0 18px 48px rgba(0,0,0,.28);
}
.cat-fnav-home__tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-bottom:1px solid rgba(169,138,82,.35);
}
.cat-fnav-home__tab{
  appearance:none;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  padding:14px 18px;
  border:0!important;
  border-right:1px solid rgba(169,138,82,.25)!important;
  border-radius:0!important;
  background:#091711!important;
  color:var(--text)!important;
  font:inherit;
  font-weight:700!important;
  cursor:pointer;
  box-shadow:none!important;
  transform:none!important;
}
.cat-fnav-home__tab:last-child{border-right:0!important}
.cat-fnav-home__tab:hover{background:#10281f!important;transform:none!important;box-shadow:none!important}
.cat-fnav-home__tab.is-active{
  background:linear-gradient(180deg,#174a37 0%,#0f3125 100%)!important;
  color:#fff!important;
  box-shadow:inset 0 -2px 0 var(--gold)!important;
}
.cat-fnav-home__panel{padding:16px}
.cat-fnav-home__brands{
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:8px;
}
.cat-fnav-home__brand{
  min-width:0;
  min-height:78px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:7px 4px;
  border:1px solid rgba(169,138,82,.30);
  border-radius:8px;
  background:var(--card);
  color:var(--text)!important;
  text-decoration:none!important;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.cat-fnav-home__brand:hover{
  transform:translateY(-2px);
  background:var(--card-hover);
  border-color:var(--gold);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
  color:var(--text)!important;
}
.cat-fnav-home__brand-logo{
  width:50px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.cat-fnav-home__brand-logo img{display:block;max-width:50px;max-height:36px;width:auto;height:auto;object-fit:contain}
.cat-fnav-home__brand-fallback{
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(169,138,82,.55);
  border-radius:50%;
  color:var(--gold);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
}
.cat-fnav-home__brand-name{
  max-width:100%;
  color:var(--text);
  font-size:11px;
  font-weight:700;
  line-height:1.15;
  text-align:center;
  overflow-wrap:anywhere;
}

@media(max-width:1100px){
  .cat-fnav-home__brands{grid-template-columns:repeat(8,minmax(0,1fr))}
}
@media(max-width:900px){
  .cat-fnav-safe__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cat-fnav-home__brands{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media(max-width:700px){
  .cat-fnav-home__tabs{grid-template-columns:1fr}
  .cat-fnav-home__tab{border-right:0!important;border-bottom:1px solid rgba(169,138,82,.25)!important}
  .cat-fnav-home__tab:last-child{border-bottom:0!important}
  .cat-fnav-home__brands{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
}
@media(max-width:620px){
  .cat-fnav-safe{margin:16px 10px;padding:22px 14px}
  .cat-fnav-safe__grid{grid-template-columns:1fr}
  .cat-fnav-home{margin:16px 10px}
  .cat-fnav-home__panel{padding:10px}
  .cat-fnav-home__brands{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cat-fnav-home__brand{min-height:74px}
}
@media(max-width:420px){
  .cat-fnav-home__brands{grid-template-columns:repeat(2,minmax(0,1fr))}
}
