/* APE 2026 — Home (M2-final: slider proprietario + searchband centrata). */
.ape-home__slider { max-width: var(--ape-maxw); margin-inline: auto; }
.ape-home__slider .ape-slider { border-radius: 0; }
@media (min-width: 1024px) {
  .ape-home__slider { padding-inline: var(--ape-s4); margin-top: var(--ape-s4); }
  .ape-home__slider .ape-slider { border-radius: var(--ape-r-card); overflow: hidden; }
}

/* Fascia ricerca: integrata sotto lo slider, TUTTO centrato */
.ape-searchband {
  background: var(--ape-surface-2);
  border-block: 1px solid var(--ape-line);
  padding-block: var(--ape-s6);
  margin-top: var(--ape-s4);
}
.ape-searchband__inner { max-width: 860px; text-align: center; }
.ape-searchband__label {
  font-size: 15px; font-weight: 650; color: var(--ape-ink);
  margin-bottom: var(--ape-s3);
}
.ape-homevehicle {
  display: grid; gap: var(--ape-s2); max-width: 860px; margin-inline: auto;
  grid-template-columns: 1fr;
}
.ape-homevehicle .ape-select { background-color: var(--ape-surface); } /* solo il colore: background cancellava la freccia disegnata (02/10/2026) */
.ape-homevehicle .ape-btn { width: 100%; }
@media (min-width: 768px) {
  .ape-homevehicle { grid-template-columns: 1fr 1fr auto; }
  .ape-homevehicle .ape-btn { width: auto; padding-inline: var(--ape-s8); }
}
.ape-searchband__hint { font-size: 12px; color: var(--ape-ink-soft); margin: var(--ape-s2) 0 0; } /* ink-mute su surface-2 = 4.3:1, sotto soglia WCAG */

/* Step numerati (1 marca · 2 modello) — pallino nel campo, stile "Autodoc" */
.ape-hv-field { position: relative; }
.ape-hv-field::before {
  content: attr(data-n); position: absolute; left: 10px; top: 50%; transform: translateY(-50%);
  width: 24px; height: 24px; border-radius: 50%; z-index: 1; pointer-events: none;
  background: var(--ape-surface-2); color: var(--ape-ink-soft);
  display: grid; place-items: center; font-size: 12px; font-weight: 700;
}
.ape-homevehicle .ape-hv-field .ape-select { padding-left: 44px; }
/* link "auto non presente" */
.ape-searchband__notfound { display: inline-block; margin-top: var(--ape-s3); font-size: 12.5px; font-weight: 600; color: var(--ape-accent-ink); text-decoration: underline; }
.ape-searchband__notfound:hover { color: var(--ape-ink); }

/* Desktop (01/10/2026): il configuratore va SOPRA lo slider, fascia scura a tutta larghezza subito sotto il menu.
   Prima era una card sotto lo slider: a 1366×768 partiva a 943px, cioè non si vedeva senza scorrere.
   Il telefono non cambia (sotto 1024px resta la fascia chiara sotto lo slider). */
@media (min-width: 1024px) {
  .ape-home { display: flex; flex-direction: column; }
  .ape-home > * { width: 100%; }   /* nel flex le sezioni .ape-container (margin auto) si stringevano al contenuto */
  .ape-home > .ape-searchband { order: -1; }
  .ape-searchband {
    margin-top: 0; padding-block: var(--ape-s5, 20px);
    background: #0f1115; border: 0; border-bottom: 3px solid var(--ape-accent);
  }
  .ape-searchband__inner {
    max-width: var(--ape-maxw); display: grid; align-items: center; text-align: left;
    grid-template-columns: auto minmax(0, 1fr); column-gap: var(--ape-s6); row-gap: 2px;
  }
  .ape-searchband__label { grid-row: 1; grid-column: 1; align-self: center; margin: 0; font-size: 22px; font-weight: 800; color: #fff; line-height: 1.15; }
  .ape-homevehicle { grid-row: 1; grid-column: 2; max-width: none; margin: 0; grid-template-columns: 1fr 1fr auto; gap: var(--ape-s3); }
  .ape-homevehicle .ape-select { height: 54px; font-size: 16px; border: 0; border-radius: 10px; }
  .ape-homevehicle .ape-btn { height: 54px; font-size: 16px; font-weight: 800; padding-inline: var(--ape-s8); border-radius: 10px; }
  .ape-homevehicle .ape-btn:disabled { opacity: .78; background: var(--ape-accent); border-color: var(--ape-accent); color: #111; }
  .ape-searchband__hint { margin: 6px 0 0; font-size: 13px; color: #b9bfcc; }
  .ape-searchband__hint, .ape-searchband__notfound { grid-column: 2; justify-self: start; }
  .ape-searchband__notfound { margin-top: 4px; color: #ffd84d; }
  .ape-searchband__notfound:hover { color: #fff; }
  .ape-home__slider { margin-top: var(--ape-s5, 20px); }
}

.ape-trustbar { border-bottom: 1px solid var(--ape-line); background: var(--ape-surface); }
.ape-trustbar__row {
  display: flex; gap: var(--ape-s6); overflow-x: auto; padding-block: var(--ape-s3);
  scrollbar-width: none;
}
@media (min-width: 1024px) { .ape-trustbar__row { justify-content: center; } }
.ape-trustbar__row::-webkit-scrollbar { display: none; }
.ape-trust {
  display: inline-flex; align-items: center; gap: var(--ape-s2);
  font-size: 13px; font-weight: 500; color: var(--ape-ink-soft); white-space: nowrap;
}
.ape-trust .ape-icon { color: var(--ape-ok); }

/* Fascia riconoscimento — classifica la Repubblica/ITQF */
.ape-award { background: var(--ape-ink); color: #fff; }
.ape-award__inner {
  display: flex; align-items: center; justify-content: center;
  gap: var(--ape-s4); padding-block: var(--ape-s4);
}
.ape-award__badge {
  flex: 0 0 auto; display: grid; place-items: center;
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--ape-accent); color: var(--ape-on-accent);
}
.ape-award__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ape-award__title { font-size: 15px; font-weight: 750; line-height: 1.3; }
.ape-award__sub { font-size: 12.5px; opacity: .78; line-height: 1.35; }
.ape-award__sub em { font-style: italic; font-weight: 600; }
@media (max-width: 640px) {
  .ape-award__badge { width: 40px; height: 40px; }
  .ape-award__title { font-size: 14px; }
}

.ape-home__cats { padding-block: var(--ape-s8); }
.ape-home__cats-title { text-align: center; }
.ape-catgrid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;
}
/* con un numero dispari di card, l'ultima occupa la riga intera (niente buco a destra) */
.ape-catcard:last-child:nth-child(odd) { grid-column: 1 / -1; }
/* card orizzontale compatta: foto prodotto reale + nome + conteggio (+ freccia su desktop) */
.ape-catcard {
  display: flex; align-items: center; gap: 12px; min-width: 0;
  padding: 10px 12px;
  background: var(--ape-surface); border: 1px solid var(--ape-line); border-radius: var(--ape-r-card);
  text-decoration: none;
  transition: border-color var(--ape-t-med) var(--ape-ease), transform var(--ape-t-med) var(--ape-ease), box-shadow var(--ape-t-med) var(--ape-ease);
}
.ape-catcard__media {
  flex: 0 0 56px; width: 56px; height: 56px;
  display: grid; place-items: center;
  background: var(--ape-surface-2); border-radius: 12px; overflow: hidden;
  color: var(--ape-ink-mute);
}
.ape-catcard__img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.ape-catcard__body { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
/* span esplicito: vince sui colori link dei CSS plugin caricati dopo */
a.ape-catcard span.ape-catcard__name { font-weight: 700; font-size: 0.92rem; line-height: 1.25; color: var(--ape-ink); }
a.ape-catcard span.ape-catcard__count { font-size: 0.75rem; color: var(--ape-ink-mute); }
.ape-catcard__arrow { display: none; margin-left: auto; color: var(--ape-ink-mute); }
@media (min-width: 900px) {
  .ape-catgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } /* 9 categorie = 3x3 (griglie aggiunte 15/09/2026) */
  .ape-catcard:last-child:nth-child(odd) { grid-column: auto; }
  .ape-catcard { padding: 14px 16px; gap: 14px; }
  .ape-catcard__media { flex-basis: 64px; width: 64px; height: 64px; }
  .ape-catcard__arrow { display: flex; }
}
@media (hover: hover) {
  .ape-catcard:hover { transform: translateY(-1px); border-color: var(--ape-accent); box-shadow: var(--ape-shadow-1); }
  .ape-catcard:hover .ape-catcard__arrow { color: var(--ape-ink); }
}

/* Recensioni Trustindex (2026-07-14) */
.ape-home__reviews { padding-block: var(--ape-s8); }
.ape-home__reviews-title { text-align: center; margin-bottom: var(--ape-s6); }
.ape-home__reviews [data-src] { min-height: 120px; }
.ape-home__reviews-d { display: none; }
@media (min-width: 1024px) {   /* desktop: solo il widget a recensioni per esteso (01/10/2026) */
  .ape-home__reviews-m { display: none; }
  .ape-home__reviews-d { display: block; min-height: 300px; }
}
