.compare-chooser, .compare-results { padding-block: clamp(2.5rem, 5vw, 5rem); }
.compare-chooser h2, .compare-results h2 { font-size: clamp(1.75rem, 3vw, 2.25rem); }
.compare-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) auto; align-items: end; gap: var(--space-4); margin-top: var(--space-6); padding: var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-card); }
.compare-form__slot { position: relative; min-width: 0; }
.compare-form__slot select { width: 100%; }
.compare-search { display: none; position: relative; margin-bottom: .5rem; }
.nuovos-compare-js .compare-search { display: block; }
.compare-search__suggestions { position: absolute; top: 100%; right: 0; left: 0; z-index: 30; max-height: 17rem; overflow-y: auto; margin: .25rem 0 0; padding: .3rem; border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-bg-alt); box-shadow: 0 1rem 2rem rgb(0 0 0 / 40%); list-style: none; }
.compare-search__suggestions[hidden] { display: none; }
.compare-search__suggestions button { width: 100%; padding: .7rem; border: 0; border-radius: var(--radius-sm); color: var(--color-text); background: transparent; text-align: left; }
.compare-search__suggestions button:hover, .compare-search__suggestions button:focus-visible { color: var(--color-bg); background: var(--color-green); }
.compare-form > button { min-height: 2.75rem; }
.compare-results { padding-top: 0; }
.compare-results__empty { max-width: 38rem; }
.compare-scroll-hint { display: none; color: var(--color-muted); font-size: .875rem; }
.compare-table-scroll { overflow-x: auto; max-width: 100%; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.compare-table { width: 100%; min-width: var(--compare-min-width); border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.compare-table th, .compare-table td { padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--color-border); overflow-wrap: anywhere; text-align: left; vertical-align: top; }
.compare-table thead th { background: #16201a; font-size: .875rem; }
.compare-table thead th:first-child, .compare-table tbody th:not([colspan]) { width: 12rem; }
.compare-table tbody th:not([colspan]) { color: var(--color-muted); font-weight: 600; background: var(--color-bg-alt); }
.compare-table tbody td { background: var(--color-card); }
.compare-table__group th { color: var(--color-green); background: var(--color-bg); font-size: .875rem; letter-spacing: .02em; }
.compare-table__model { display: flex; align-items: center; gap: var(--space-3); color: var(--color-text); text-decoration: none; }
.compare-table__model img { width: 4rem; height: 3rem; object-fit: cover; border-radius: var(--radius-sm); }
.compare-table__model:hover { color: var(--color-green); }
.compare-mobile { display: none; }
.compare-articles { padding-bottom: clamp(2rem, 5vw, 5rem); }
.compare-articles__card { overflow: hidden; }
.compare-articles__card a { color: var(--color-text); text-decoration: none; }
.compare-articles__card img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.compare-articles__card h3, .compare-articles__card p { margin-inline: var(--space-4); }
.comparison-article, .comparison-archive { padding-block: clamp(2rem, 6vw, 6rem); }
.comparison-article__header { max-width: 70rem; margin-block: var(--space-5); }
.comparison-article__intro { font-size: clamp(1.15rem, 2vw, 1.5rem); }
.comparison-article__image img { display: block; width: 100%; max-height: 38rem; object-fit: cover; border-radius: var(--radius-lg); }
.comparison-article__evs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin-block: var(--space-6); }
.comparison-article__evs a { display: flex; align-items: center; gap: var(--space-4); color: var(--color-text); text-decoration: none; }
.comparison-article__evs img { width: 8rem; aspect-ratio: 4 / 3; object-fit: cover; }
.comparison-article__body { max-width: 48rem; margin-block: var(--space-6); }
.comparison-article__action { margin-block: var(--space-7); }
.comparison-archive > header { max-width: 50rem; margin-bottom: var(--space-7); }
.comparison-archive__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
.comparison-archive__card { overflow: hidden; }
.comparison-archive__card a { color: var(--color-text); text-decoration: none; }
.comparison-archive__card img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.comparison-archive__card h2, .comparison-archive__card p { margin-inline: var(--space-4); }
@media (prefers-reduced-motion: no-preference) { .comparison-archive__card, .compare-articles__card { transition: transform .22s ease; } .comparison-archive__card:hover, .compare-articles__card:hover { transform: translateY(-3px); } }
@media (max-width: 767px) { .comparison-archive__grid, .comparison-article__evs { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .compare-form { grid-template-columns: repeat(2, minmax(0, 1fr)); } .compare-form > button { grid-column: 1 / -1; } }
@media (max-width: 767px) {
  .compare-form { grid-template-columns: 1fr; }
  .compare-form > button { grid-column: auto; }
  .compare-scroll-hint { display: block; }
  .compare-table-scroll--pair { display: none; }
  .compare-table { min-width: var(--compare-mobile-min-width); }
  .compare-mobile { display: block; max-width: 100%; border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; }
  .compare-mobile__models, .compare-mobile__values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compare-mobile__models { gap: 1px; background: var(--color-border); }
  .compare-mobile__models a { display: flex; flex-direction: column; min-width: 0; padding: .8rem; background: var(--color-card); color: var(--color-text); font-size: .9rem; font-weight: 700; overflow-wrap: anywhere; text-decoration: none; }
  .compare-mobile__models img { width: 100%; max-height: 7rem; aspect-ratio: 16 / 10; margin-bottom: .5rem; object-fit: contain; }
  .compare-mobile__group h3 { margin: 0; padding: .65rem .8rem; background: var(--color-bg); color: var(--color-green); font-size: 1rem; }
  .compare-mobile__metric h4 { margin: 0; padding: .65rem .8rem .3rem; background: var(--color-bg-alt); color: var(--color-muted); font-size: .82rem; }
  .compare-mobile__values > div { min-width: 0; padding: .7rem .8rem .9rem; background: var(--color-card); border-bottom: 1px solid var(--color-border); font-size: .92rem; overflow-wrap: anywhere; }
  .compare-mobile__values > div + div { border-left: 1px solid var(--color-border); }
}
