/* Automagno — ajustes propios de WordPress. Se carga después de automagno.css. Solo variables de tokens.css. */

/* Proporción estándar de las fotos de vehículos de Automagno (940×788). Todos los marcos de foto la usan. */
:root { --foto-vehiculo: 940 / 788; }

/* Ancho del contenido de TODO el sitio: 1240px (el diseño traía 1600px). Pedido del equipo: más margen a los lados.
   Navbar, hero, secciones, newsletter y footer siguen alineados al mismo borde porque todos usan esta variable. */
:root { --container-max: 1240px; }

/* Negro de la marca: #0f1922 (azul muy oscuro), no el negro neutro del diseño. Pedido del equipo 2026-10-05.
   Se redefine aquí la escala oscura de tokens.css (que no se edita) en el mismo tono, de más oscuro a más claro:
   fondos (950/900), tarjetas (800) y bordes (700). --black-rgb es el mismo #0f1922 para las transparencias. */
:root {
  --black-950: #0f1922;
  --black-900: #15212c;
  --black-800: #1c2a36;
  --black-700: #2e3c48;
  --ink: #0f1922;
  --black-rgb: 15, 25, 34;
}
/* Degradados de automagno.css (hero con foto y CTA) que traían el negro anterior escrito a mano */
.am-hero--photo::before { background: linear-gradient(90deg, rgba(var(--black-rgb), .96) 0%, rgba(var(--black-rgb), .88) 38%, rgba(var(--black-rgb), .2) 75%, rgba(var(--black-rgb), 0) 100%); }
.am-cta::before { background: linear-gradient(90deg, rgba(var(--black-rgb), .94) 0%, rgba(var(--black-rgb), .8) 45%, rgba(var(--black-rgb), .3) 100%); }
@media (max-width: 720px) {
  .am-hero--photo::before, .am-cta::before { background: rgba(var(--black-rgb), .82); }
}

/* Reglas del <style> del index.html aprobado */
body { margin: 0; background: var(--white); }
.am-nav { position: sticky; top: 0; z-index: 50; }
.am-hero--photo > *, .am-cta > * { position: relative; z-index: 1; }

/* Barra de administración de WordPress: el navbar fijo queda debajo */
.admin-bar .am-nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .am-nav { top: 46px; } }
@media (max-width: 600px) { .admin-bar .am-nav { top: 0; } }

/* Las anclas (#vender, #nosotros…) no quedan tapadas por el navbar */
html { scroll-padding-top: var(--navbar-height); scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Saltar al contenido (accesibilidad) */
.am-saltar { position: absolute; left: var(--space-4); top: -100px; z-index: 100; padding: var(--space-2) var(--space-4); background: var(--white); color: var(--ink); font-weight: 700; border-radius: var(--radius-sm); }
.am-saltar:focus { top: var(--space-4); outline: 2px solid var(--red-500); outline-offset: 2px; }

/* Logo enlazado al inicio */
.am-nav__home { display: block; flex: none; }
.am-nav__home:focus-visible, .am-nav__links a:focus-visible, .am-nav__menu:focus-visible, .am-footer a:focus-visible, .am-vcard__name a:focus-visible, .am-vcard__fav:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }

/* Tarjeta de vehículo: toda la tarjeta es clicable; el favorito queda encima */
.am-vcard__name a { color: inherit; text-decoration: none; }
.am-vcard__name a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.am-vcard__fav { z-index: 2; }

/* Mapa de Google Maps dentro del contenedor del diseño */
.am-map iframe { display: block; }

/* Menú hamburguesa SOLO en celulares (≤720px). En tablet y escritorio se ven los links. */
@media (min-width: 721px) {
  .am-nav__menu { display: none; }
}
/* Tablet: navbar más compacto para que quepan logo + links (Blair es ancha) */
@media (min-width: 721px) and (max-width: 1100px) {
  .am-nav, .am-nav__links { gap: var(--space-3); }
  .am-nav__links { margin: 0 0 0 auto; }
  body.am .am-nav__logo { height: 24px; }
}
/* El botón "Vender mi vehículo" del navbar no cabe en tablet (≤1000px); sigue en el hero y en el CTA */
@media (min-width: 721px) and (max-width: 1000px) {
  .am-nav > .am-btn { display: none; }
}
@media (max-width: 1024px) {
  .am-process { grid-template-columns: 1fr 1fr; row-gap: var(--space-8); }
  .am-process__arrow { display: none; }
  .am-testimonials { grid-template-columns: 1fr; }
  .am-testimonials__cards > * { min-width: 0; }
}
@media (max-width: 720px) {
  .am-nav.is-open .am-nav__links { display: flex; flex-direction: column; gap: var(--space-6); position: absolute; top: 100%; left: 0; right: 0; margin: 0; padding: var(--space-6) var(--gutter); background: var(--black-950); border-top: 1px solid var(--black-700); }
}

/* Páginas internas (index.php / inventario) */
.am-contenido { max-width: 760px; }
.am-contenido > * + * { margin-top: var(--space-4); }
.am-contenido p, .am-contenido li { font-size: 16px; line-height: 26px; color: var(--ink); }
.am-contenido a { color: var(--red-600); }
.am-contenido h2, .am-contenido h3 { font-family: var(--font-display); font-weight: 400; }
.am-paginacion { margin-top: var(--space-12); }
.am-paginacion .nav-links { display: flex; gap: var(--space-2); flex-wrap: wrap; }
.am-paginacion .page-numbers { display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 var(--space-3); border: 1px solid var(--gray-500); border-radius: var(--radius-sm); color: var(--ink); text-decoration: none; font-weight: 700; font-size: 14px; }
.am-paginacion .page-numbers.current { background: var(--red-500); border-color: var(--red-500); color: var(--white); }

/* ---------- Footer ampliado ---------- */
.am-footer__top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-8); flex-wrap: wrap; padding-bottom: var(--space-8); margin-bottom: var(--space-8); border-bottom: 1px solid var(--black-700); }
.am-footer__marca { max-width: 420px; }
.am-footer__marca .am-footer__logo { height: 32px; margin-bottom: var(--space-4); }
.am-footer__marca p { font-size: 14px; line-height: 22px; }
.am-footer__cta { display: flex; align-items: center; gap: var(--space-6); flex-wrap: wrap; }
.am-footer .am-footer__cta-titulo { font-family: var(--font-display); font-size: clamp(16px, 1.05vw, 20px); line-height: 1.3; color: var(--white); }
.am-footer__cta-botones { display: flex; gap: var(--space-3); flex-wrap: wrap; }
.am-footer .am-btn--primary, .am-footer .am-btn--primary:hover { color: var(--white); }
.am-footer .am-btn--outline-dark { color: var(--white); }
.am-footer .am-btn--outline-dark:hover { color: var(--black-950); }
.am-footer__links li + li, .am-footer__contact li + li { margin-top: var(--space-2); }
.am-footer__links a { display: inline-block; transition: color .15s; }
.am-footer__links a:hover, .am-footer__contact a:hover { color: var(--white); text-decoration: underline; text-underline-offset: 3px; }
.am-footer__contact li { align-items: flex-start; }
.am-footer__contact svg { flex: none; margin-top: 3px; }
.am-footer__contact .am-footer__horario { padding-left: calc(14px + var(--space-2)); margin-top: 0; }
.am-footer__social { display: flex; gap: var(--space-2); margin-top: var(--space-4); }
.am-footer__social a { width: 40px; height: 40px; display: grid; place-items: center; color: var(--white); border: 1px solid var(--black-700); border-radius: var(--radius-sm); transition: border-color .15s, color .15s; }
.am-footer__social a:hover { border-color: var(--red-500); color: var(--red-400); }
.am-footer__social svg { width: 18px; height: 18px; }
.am-footer__legal { display: flex; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; text-align: left; }
.am-footer__legal a:hover { color: var(--white); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 720px) {
  .am-footer__top { flex-direction: column; align-items: flex-start; }
  .am-footer__cta { flex-direction: column; align-items: flex-start; gap: var(--space-4); }
}
@media (max-width: 480px) {
  .am-footer__cta-botones, .am-footer__cta-botones .am-btn { width: 100%; }
  .am-footer__legal { flex-direction: column; }
}

/* ---------- Inventario ---------- */
.am-cabecera-interna { padding-block: var(--space-8); border-top: 1px solid var(--black-700); }
.am-cabecera-interna .am-eyebrow { margin-bottom: var(--space-1); }
.am-inventario-seccion { padding-block: var(--space-8) var(--section-y); }
.am-vacio { display: grid; gap: var(--space-4); justify-items: start; padding: var(--space-12) 0; }
.am-vacio p { font-size: 16px; line-height: 26px; color: var(--gray-600); margin: 0; }
.am-paginacion ul.page-numbers { display: flex; gap: var(--space-2); flex-wrap: wrap; list-style: none; margin: 0; padding: 0; border: 0; height: auto; min-width: 0; }
.am-paginacion a.page-numbers:hover { border-color: var(--ink); }
.am-paginacion a.page-numbers:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* Donde sí carga woocommerce.css (".woocommerce-page img { height: auto }"), el diseño manda */
body.am .am-nav__logo, body.am .am-footer__logo { height: 28px; width: auto; max-width: none; }
body.am .am-footer__marca .am-footer__logo { height: 32px; }
body.am .am-vcard__media img { width: 100%; height: 100%; }
@media (max-width: 480px) { body.am .am-nav__logo { height: 24px; } }

/* Celular pequeño: los títulos en mayúsculas (más anchos con Blair) no caben en 2 columnas */
.am-feature, .am-step { min-width: 0; }
@media (max-width: 480px) {
  .am-features, .am-process { grid-template-columns: 1fr; }
  .am-step__text { max-width: none; }
}

/* ---------- Favoritos ---------- */
.am-vcard__fav { transition: color .15s, transform .15s; }
.am-vcard__fav:hover { color: var(--red-500); }
.am-vcard__fav.is-active, .am-ficha__fav.is-active { color: var(--red-500); }
.am-vcard__fav.is-active svg, .am-ficha__fav.is-active svg { fill: currentColor; }
.am-vcard__fav:active { transform: scale(.92); }
.am-nav__fav { position: relative; display: grid; place-items: center; width: 32px; height: 32px; color: var(--white); flex: none; }
.am-nav__fav[hidden] { display: none; }
.am-nav__fav svg { width: 20px; height: 20px; }
.am-nav__fav:hover { color: var(--red-400); }
.am-nav__fav:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-nav__fav-num { position: absolute; top: -2px; right: -4px; min-width: 16px; height: 16px; padding: 0 var(--space-1); border-radius: var(--radius-full); background: var(--red-500); color: var(--white); font-size: 10px; line-height: 16px; font-weight: 800; text-align: center; }
@media (max-width: 720px) {
  .am-nav__fav { margin-left: auto; }
  .am-nav__fav:not([hidden]) ~ .am-btn, .am-nav__fav:not([hidden]) ~ .am-nav__menu { margin-left: 0; }
}
.am-section-head .am-btn[hidden] { display: none; }

/* ---------- Ficha del vehículo ---------- */
.am-ficha__version { font-size: 16px; line-height: 24px; color: var(--gray-600); margin: calc(-1 * var(--space-2)) 0 var(--space-4); }
.am-ficha__specs { list-style: none; margin: var(--space-6) 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4) var(--space-6); }
.am-ficha__specs li { display: flex; gap: var(--space-3); align-items: center; font-size: 14px; line-height: 20px; font-weight: 700; color: var(--ink); }
.am-ficha__specs svg { width: 24px; height: 24px; flex: none; color: var(--red-500); }
.am-ficha__label { display: block; font-size: 11px; line-height: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray-600); }
.am-ficha__acciones { display: flex; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-3); }
.am-ficha__acciones .am-btn { min-height: 44px; }
.am-ficha__ref { font-size: 12px; color: var(--gray-600); margin: 0; }
body.am.single-product .product_title { font-family: var(--font-display); font-weight: 400; font-size: clamp(24px, 2vw, 36px); line-height: 1.2; text-transform: uppercase; }
body.am.single-product div.product p.price { color: var(--red-600); font-size: 24px; font-weight: 800; }

/* ---------- Inventario: columna de filtros a la izquierda (estilo Mercado Libre) ---------- */
.am-resultados__cabeza { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-6); flex-wrap: wrap; margin-bottom: var(--space-6); }
.am-resultados__acciones { display: flex; align-items: flex-end; gap: var(--space-3); flex-wrap: wrap; }
.am-resultados__acciones .am-btn { min-height: 44px; }
.am-resultados__acciones .am-btn[hidden] { display: none; }
.am-resultados__filtrar { display: none; }
.am-orden { display: grid; gap: var(--space-2); }
.am-orden select.am-input { min-width: 220px; padding-right: var(--space-8); appearance: none; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111214' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right var(--space-3) center; background-size: 16px; }
.am-filtros__label { display: block; font-size: 11px; line-height: 16px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--ink); margin: 0 0 var(--space-3); }
.am-resultados__titulo { font-family: var(--font-display); font-weight: 400; font-size: clamp(18px, 1.25vw, 24px); line-height: 1.3; margin: 0; }
.am-orden .am-filtros__label { margin: 0; }

.am-inventario { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: var(--space-8); align-items: start; }
.am-inventario--sin-filtros { grid-template-columns: minmax(0, 1fr); }
.am-filtros { padding: var(--space-6); background: var(--white); border: 1px solid var(--gray-200); border-radius: var(--radius-md); }
.am-filtros__cabeza { display: flex; align-items: center; justify-content: space-between; padding-bottom: var(--space-4); margin-bottom: var(--space-6); border-bottom: 2px solid var(--ink); }
.am-filtros__titulo { font-family: var(--font-display); font-size: 20px; line-height: 1.2; margin: 0; }
.am-filtros__cerrar { display: none; }
.am-filtros__grupo { padding: var(--space-6) 0; border-bottom: 1px solid var(--gray-200); }
.am-filtros__grupo:first-of-type { padding-top: 0; }
.am-filtros__grupo:last-child { border-bottom: 0; }
.am-filtros__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.am-filtros__lista a { display: inline-block; font-size: 14px; line-height: 22px; color: var(--ink); text-decoration: none; }
.am-filtros__lista a:hover { color: var(--red-600); }
.am-filtros__n { color: var(--gray-600); font-size: 13px; }
.am-filtros__chips { list-style: none; margin: 0 0 var(--space-3); padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.am-filtros__chips a { display: inline-flex; align-items: center; gap: var(--space-2); min-height: 32px; padding: var(--space-1) var(--space-3); font-size: 13px; font-weight: 700; color: var(--ink); text-decoration: none; background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: var(--radius-sm); }
.am-filtros__chips a span { font-size: 16px; line-height: 1; color: var(--gray-600); }
.am-filtros__chips a:hover { border-color: var(--ink); }
.am-filtros__chips a:hover span { color: var(--red-600); }
.am-filtros__limpiar { font-size: 13px; font-weight: 700; color: var(--red-600); }
.am-filtros a:focus-visible, .am-filtros button:focus-visible, .am-resultados__acciones :focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-grid-inventario { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.am-inventario--sin-filtros .am-grid-inventario { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1280px) { .am-grid-inventario, .am-inventario--sin-filtros .am-grid-inventario { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Celular y tablet: la columna se vuelve un panel lateral que se abre con "Filtrar" */
@media (max-width: 900px) {
  .am-inventario { grid-template-columns: minmax(0, 1fr); }
  .am-js .am-resultados__filtrar { display: inline-flex; }
  .am-js .am-filtros { position: fixed; inset: 0 auto 0 0; z-index: 60; width: min(360px, 88vw); overflow-y: auto; border: 0; border-radius: 0; box-shadow: var(--shadow-card-hover); transform: translateX(-105%); transition: transform .2s; }
  .am-js .am-filtros.is-open { transform: none; }
  .am-js .am-filtros__cerrar { display: grid; place-items: center; }
  .am-filtros__cerrar { width: 40px; height: 40px; font-size: 28px; line-height: 1; color: var(--ink); background: none; border: 1px solid var(--gray-200); border-radius: var(--radius-sm); cursor: pointer; }
  body.am-filtros-abiertos { overflow: hidden; }
  body.am-filtros-abiertos::after { content: ""; position: fixed; inset: 0; z-index: 55; background: rgba(var(--black-rgb), .5); }
  .am-orden select.am-input { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) { .am-js .am-filtros { transition: none; } }
@media (max-width: 480px) {
  .am-grid-inventario, .am-inventario--sin-filtros .am-grid-inventario { grid-template-columns: 1fr; }
  .am-resultados__acciones { width: 100%; }
  .am-resultados__acciones > * { flex: 1 1 auto; }
}

/* ---------- Tarjeta: nombre + modelo arriba, versión, 4 datos con íconos ---------- */
.am-vcard__cabeza { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.am-vcard__cabeza .am-vcard__name { margin: 0; }
.am-vcard__anio { flex: none; padding: 1px var(--space-2); font-size: 12px; line-height: 16px; font-weight: 800; color: var(--white); background: var(--black-950); border-radius: var(--radius-sm); }
.am-vcard__version { font-size: 13px; line-height: 18px; color: var(--gray-600); margin: var(--space-1) 0 0; }
.am-vcard__specs { list-style: none; margin: var(--space-3) 0; padding: var(--space-3) 0 0; border-top: 1px solid var(--gray-200); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2) var(--space-3); }
.am-vcard__specs li { display: flex; align-items: center; gap: var(--space-2); min-width: 0; font-size: 12px; line-height: 18px; color: var(--ink); }
.am-vcard__specs svg { width: 16px; height: 16px; flex: none; color: var(--red-500); }

/* Grupos de filtros plegables y "Ver todos" */
.am-filtros__grupo > summary { display: flex; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; margin: 0; }
.am-filtros__grupo > summary::-webkit-details-marker { display: none; }
.am-filtros__grupo > summary::after { content: ""; width: 8px; height: 8px; border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); transform: rotate(45deg); transition: transform .15s; margin-right: var(--space-1); }
.am-filtros__grupo[open] > summary::after { transform: rotate(-135deg); }
.am-filtros__grupo[open] > summary { margin-bottom: var(--space-3); }
.am-filtros__grupo > summary:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-filtros__mas { display: none; margin-top: var(--space-3); padding: 0; font: 700 13px/20px var(--font-sans); color: var(--red-600); background: none; border: 0; cursor: pointer; }
.am-js .am-filtros__mas { display: inline-block; }
.am-js .am-filtros__extra { display: none; }
.am-js .am-filtros__grupo.is-completo .am-filtros__extra { display: list-item; }

/* ---------- Página del vehículo ---------- */
.am-vehiculo { padding-block: var(--space-4) var(--section-y); }
.am-migas { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-bottom: var(--space-3); font-size: 13px; line-height: 20px; color: var(--gray-600); }
.am-migas a { color: var(--gray-600); text-decoration: none; }
.am-migas a:hover { color: var(--ink); text-decoration: underline; }
.am-vehiculo__izq, .am-vehiculo__der { display: grid; gap: var(--space-6); align-content: start; min-width: 0; }
.am-vehiculo__cabeza { display: grid; gap: var(--space-4); }
.am-vehiculo__cabeza .am-eyebrow { margin: 0; }
.am-vehiculo__contacto { display: grid; gap: var(--space-4); padding: var(--space-6); background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: var(--radius-md); }
.am-vehiculo__contacto .am-vehiculo__garantias { grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.am-vehiculo__contacto .am-checklist li { align-items: flex-start; font-size: 13px; }
.am-vehiculo__titulo { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.am-vehiculo__titulo .am-h2 { text-transform: uppercase; }
.am-vehiculo__titulo .am-vcard__anio { font-size: 14px; line-height: 20px; padding: 2px var(--space-3); }
.am-vehiculo__version { font-size: 16px; line-height: 24px; color: var(--gray-600); margin: calc(-1 * var(--space-2)) 0 0; }
.am-vehiculo__rapidos { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.am-vehiculo__rapidos li { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-1) var(--space-3); font-size: 13px; line-height: 20px; font-weight: 700; background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: var(--radius-sm); }
.am-vehiculo__rapidos svg { width: 16px; height: 16px; color: var(--red-500); }
.am-vehiculo__precio { font-size: clamp(28px, 2vw, 36px); line-height: 1.1; font-weight: 800; color: var(--red-600); margin: var(--space-2) 0 0; }
.am-vehiculo__desc { padding-top: var(--space-6); border-top: 1px solid var(--gray-200); }
.am-vehiculo__desc .am-filtros__label { margin-bottom: var(--space-2); }
.am-vehiculo__desc p { font-size: 15px; line-height: 24px; color: var(--gray-600); margin: 0 0 var(--space-3); }
.am-vehiculo__desc p:last-child { margin-bottom: 0; }
/* Descripción larga: nunca desborda la página (palabras largas, espacios duros) y se recorta a la
   altura de la tarjeta de contacto con "Ver más" (assets/js/descripcion.js fija --alto-desc). */
.am-vehiculo__desc { min-width: 0; overflow-wrap: anywhere; }
.am-vehiculo__desc-texto { position: relative; }
.am-vehiculo__desc.is-recortada .am-vehiculo__desc-texto { max-height: var(--alto-desc, 360px); overflow: hidden; }
.am-vehiculo__desc.is-recortada .am-vehiculo__desc-texto::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 72px; background: linear-gradient(rgba(255, 255, 255, 0), var(--white)); pointer-events: none; }
.am-vehiculo__ver-mas { margin-top: var(--space-3); padding: 0; background: none; border: 0; font: inherit; font-size: 12px; line-height: 18px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--red-600); cursor: pointer; display: inline-flex; align-items: center; gap: var(--space-2); }
.am-vehiculo__ver-mas::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .15s; }
.am-vehiculo__ver-mas[aria-expanded="true"]::after { transform: translateY(2px) rotate(-135deg); }
.am-vehiculo__ver-mas:hover { color: var(--red-500); }
.am-vehiculo__ver-mas:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-vehiculo__acciones { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.am-vehiculo__acciones .am-btn { min-height: 44px; }
.am-vehiculo__acciones { flex-wrap: nowrap; }
.am-vehiculo__acciones .am-btn { flex: 1 1 auto; padding-inline: var(--space-4); }
.am-vehiculo__acciones .am-btn--icono { flex: 0 0 44px; width: 44px; padding: 0; }
.am-vehiculo__acciones .am-btn--icono svg { width: 18px; height: 18px; }
.am-vehiculo__ref { font-size: 12px; color: var(--gray-600); margin: 0; }
.am-vehiculo__ficha { background: var(--gray-50); }
.am-specs { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); }
.am-specs li { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); background: var(--white); border: 1px solid var(--gray-200); border-radius: var(--radius-md); font-size: 15px; line-height: 22px; font-weight: 800; color: var(--ink); min-width: 0; }
.am-specs svg { width: 28px; height: 28px; flex: none; color: var(--red-500); }
.am-specs__label { display: block; font-size: 11px; line-height: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray-600); }
@media (max-width: 1280px) { .am-specs { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) {
  .am-specs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .am-specs { grid-template-columns: minmax(0, 1fr); }
  .am-vehiculo__contacto { padding: var(--space-4); }
}

/* Tarjetas: el marco de la foto toma la proporción real de las fotos (el diseño traía 4:3 y recortaba) */
.am-vcard__media { aspect-ratio: var(--foto-vehiculo); }
body.am .am-vcard__media img { object-fit: cover; object-position: center; }

/* ---------- Galería del vehículo (compacta, miniaturas verticales como Mercado Libre) ---------- */
/* La foto se ajusta al alto de la pantalla para que los botones (Me interesa, Agendar, Llamar) se vean sin bajar:
   ancho entre 440px y 560px según lo que permita el alto de la ventana con la proporción 940:788. */
.am-vehiculo__top { display: grid; grid-template-columns: clamp(440px, calc((100vh - 360px) * 940 / 788), 560px) minmax(0, 1fr); gap: var(--space-12); align-items: start; }
.am-galeria { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "principal"; gap: var(--space-2); }
.am-galeria--varias { grid-template-areas: "principal" "minis"; }
.am-galeria__principal { grid-area: principal; position: relative; aspect-ratio: var(--foto-vehiculo); display: grid; place-items: center; background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: var(--radius-md); overflow: hidden; color: var(--gray-600); font-size: 14px; }
.am-galeria__ampliar { display: block; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; touch-action: pan-y; }
.am-galeria__ampliar img { width: 100%; height: 100%; object-fit: contain; display: block; user-select: none; -webkit-user-drag: none; }
.am-galeria__ampliar:focus-visible { outline: 2px solid var(--red-500); outline-offset: -4px; }
.am-galeria__lupa { position: absolute; right: var(--space-3); bottom: var(--space-3); width: 36px; height: 36px; display: grid; place-items: center; color: var(--ink); background: var(--white); border-radius: var(--radius-sm); box-shadow: var(--shadow-card-hover); pointer-events: none; }
.am-galeria__lupa svg { width: 18px; height: 18px; }
.am-galeria__nav { position: absolute; top: 50%; translate: 0 -50%; width: 40px; height: 40px; display: grid; place-items: center; color: var(--ink); background: var(--white); border: 1px solid var(--gray-200); border-radius: var(--radius-sm); cursor: pointer; opacity: 0; transition: opacity .15s; }
.am-galeria__nav svg { width: 20px; height: 20px; }
.am-galeria__nav--prev { left: var(--space-3); }
.am-galeria__nav--next { right: var(--space-3); }
.am-galeria__principal:hover .am-galeria__nav, .am-galeria__nav:focus-visible { opacity: 1; }
.am-galeria__nav:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-galeria__contador { position: absolute; left: var(--space-3); bottom: var(--space-3); padding: 2px var(--space-2); font-size: 12px; line-height: 18px; font-weight: 700; color: var(--white); background: rgba(var(--black-rgb), .7); border-radius: var(--radius-sm); pointer-events: none; }
.am-galeria__fav { z-index: 2; width: 40px; height: 40px; box-shadow: var(--shadow-card-hover); }
.am-galeria__fav svg { width: 20px; height: 20px; }
.am-galeria__miniaturas { grid-area: minis; list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 5 * var(--space-2)) / 6); gap: var(--space-2); overflow-x: auto; scrollbar-width: thin; }
.am-galeria__miniaturas li { flex: none; }
.am-galeria__miniaturas button { display: block; width: 100%; aspect-ratio: var(--foto-vehiculo); padding: 0; border: 2px solid var(--gray-200); border-radius: var(--radius-sm); overflow: hidden; background: var(--gray-50); cursor: pointer; opacity: .75; transition: opacity .15s, border-color .15s; }
.am-galeria__miniaturas button:hover { opacity: 1; }
.am-galeria__miniaturas button[aria-current="true"] { border-color: var(--red-500); opacity: 1; }
.am-galeria__miniaturas button:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-galeria__miniaturas img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Visor para ampliar (pantalla completa) */
.am-visor { width: 100vw; height: 100vh; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; color: var(--white); background: rgba(var(--black-rgb), .96); }
.am-visor::backdrop { background: rgba(var(--black-rgb), .6); }
.am-visor[open] { display: grid; grid-template-rows: auto minmax(0, 1fr); }
.am-visor__barra { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-6); }
.am-visor__contador { font-size: 14px; font-weight: 700; min-width: 60px; }
.am-visor__ayuda { font-size: 13px; color: var(--gray-400); }
.am-visor__cerrar { width: 44px; height: 44px; display: grid; place-items: center; color: var(--white); background: none; border: 1px solid var(--black-700); border-radius: var(--radius-sm); cursor: pointer; }
.am-visor__cerrar svg { width: 22px; height: 22px; }
.am-visor__marco { display: grid; grid-template-rows: minmax(0, 1fr); place-items: center; overflow: hidden; padding: 0 88px var(--space-8); touch-action: pan-y; }
.am-visor__marco img { max-width: calc(100vw - 176px); max-height: calc(100vh - 120px); max-height: calc(100dvh - 120px); object-fit: contain; cursor: zoom-in; transition: transform .25s; user-select: none; -webkit-user-drag: none; }
.am-visor__marco.is-zoom img { transform: scale(2.2); cursor: zoom-out; }
.am-visor__nav { position: absolute; top: 50%; translate: 0 -50%; width: 52px; height: 52px; display: grid; place-items: center; color: var(--white); background: rgba(28, 42, 54, .8); border: 1px solid var(--black-700); border-radius: var(--radius-sm); cursor: pointer; }
.am-visor__nav:hover { border-color: var(--red-500); }
.am-visor__nav svg { width: 26px; height: 26px; }
.am-visor__nav--prev { left: var(--space-6); }
.am-visor__nav--next { right: var(--space-6); }
.am-visor button:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
body.am-visor-abierto { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .am-visor__marco img, .am-galeria__nav { transition: none; } }
/* Pantallas angostas: "Me interesa" arriba a todo el ancho; "Agendar visita" + teléfono debajo. */
@media (max-width: 600px) {
  .am-vehiculo__acciones { flex-wrap: wrap; }
  .am-vehiculo__acciones .am-btn--primary { flex: 1 1 100%; }
  .am-vehiculo__acciones .am-btn--outline-light:not(.am-btn--icono) { flex: 1 1 0; }
}

@media (max-width: 1100px) { .am-vehiculo__top { gap: var(--space-8); } }
@media (max-width: 900px) {
  .am-vehiculo__top { grid-template-columns: minmax(0, 1fr); }
  /* Celular/tablet: foto → nombre y precio → botones → descripción. */
  .am-vehiculo__top { display: flex; flex-direction: column; align-items: stretch; gap: var(--space-6); }
  .am-vehiculo__izq, .am-vehiculo__der { display: contents; }
  .am-galeria { order: 1; }
  .am-vehiculo__cabeza { order: 2; }
  .am-vehiculo__contacto { order: 3; }
  .am-vehiculo__desc { order: 4; }
  .am-vehiculo__contacto .am-vehiculo__garantias { grid-template-columns: minmax(0, 1fr); }
  .am-galeria__miniaturas { grid-auto-columns: 72px; }
  .am-galeria__nav { opacity: 1; width: 36px; height: 36px; }
  .am-visor__marco { padding: 0 var(--space-2) 88px; }
  .am-visor__marco img { max-width: calc(100vw - 16px); max-height: calc(100dvh - 180px); }
  .am-visor__nav { width: 44px; height: 44px; top: auto; bottom: var(--space-6); translate: none; }
  .am-visor__ayuda { display: none; }
}

/* ---------- Tarjetas parejas: mismo alto y cada parte a la misma altura aunque cambie el texto ---------- */
.am-grid-4 { align-items: stretch; }
.am-vcard__body { display: flex; flex-direction: column; flex: 1 1 auto; }
/* Nombre + versión juntos: la versión va pegada al nombre y el bloque reserva 2 líneas de nombre + 1 de versión. */
.am-vcard__titulo { min-height: calc(2 * 18px + var(--space-1) + 18px); }
.am-vcard__name a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; }
.am-vcard__version { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.am-vcard__version:empty { display: none; }
.am-vcard__specs { min-height: calc(2 * 18px + var(--space-2) + var(--space-3)); align-content: start; }
.am-vcard__specs li { overflow: hidden; }
.am-vcard__specs li { white-space: nowrap; text-overflow: ellipsis; }
.am-vcard__price { margin-top: auto; }

/* ---------- Ofertas (precio rebajado) ---------- */
.am-oferta { position: absolute; top: var(--space-3); left: var(--space-3); z-index: 2; display: inline-flex; align-items: center; gap: var(--space-1); padding: var(--space-1) var(--space-2); font-size: 11px; line-height: 16px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--white); background: var(--red-500); border-radius: var(--radius-sm); pointer-events: none; }
.am-oferta--linea { position: static; vertical-align: middle; }
.am-vcard__media { position: relative; }
.am-vcard__price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: var(--space-2); }
.am-precio-antes { font-size: 13px; line-height: 18px; font-weight: 600; color: var(--gray-600); text-decoration: line-through; }
.am-vehiculo__precios { display: grid; gap: var(--space-1); margin-top: var(--space-2); }
.am-vehiculo__precios .am-vehiculo__precio { margin: 0; }
.am-vehiculo__antes { display: flex; align-items: center; gap: var(--space-3); margin: 0; }
.am-vehiculo__antes .am-precio-antes { font-size: 16px; line-height: 22px; }
.am-vehiculo__ahorro { margin: 0; font-size: 14px; line-height: 20px; font-weight: 800; color: var(--red-600); }

/* ---------- Reseñas: slider ---------- */
.am-resenas__cabeza { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-6); flex-wrap: wrap; margin-bottom: var(--space-8); }
.am-resenas__resumen { display: flex; align-items: center; gap: var(--space-6); flex-wrap: wrap; }
.am-resenas__nota { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin: 0; }
.am-resenas__numero { font-family: var(--font-display); font-size: 32px; line-height: 1; color: var(--white); }
.am-resenas__total { font-size: 13px; color: var(--gray-400); }
.am-estrellas { display: inline-flex; gap: 2px; }
.am-estrellas__e svg { width: 16px; height: 16px; color: var(--gray-400); }
.am-estrellas__e.is-llena svg { color: var(--red-400); fill: currentColor; }
.am-resenas__nota .am-estrellas__e svg { width: 20px; height: 20px; }
.am-slider { position: relative; }
.am-slider__pista { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 2 * var(--space-4)) / 3); gap: var(--space-4); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain; }
.am-slider__pista::-webkit-scrollbar { display: none; }
.am-slider__pista:focus-visible { outline: 2px solid var(--red-500); outline-offset: 4px; }
.am-slider__pista > * { scroll-snap-align: start; min-width: 0; }
.am-slider__nav { position: absolute; top: calc(50% - var(--space-8)); translate: 0 -50%; z-index: 2; width: 44px; height: 44px; display: grid; place-items: center; color: var(--white); background: var(--black-800); border: 1px solid var(--black-700); border-radius: var(--radius-sm); cursor: pointer; }
.am-slider__nav:hover { border-color: var(--red-500); }
.am-slider__nav:focus-visible { outline: 2px solid var(--red-500); outline-offset: 2px; }
.am-slider__nav svg { width: 22px; height: 22px; }
.am-slider__nav--prev { left: -22px; }
.am-slider__nav--next { right: -22px; }
.am-slider.is-estatico .am-slider__nav, .am-slider.is-estatico .am-slider__puntos { display: none; }
.am-slider__puntos button { width: 6px; height: 6px; padding: 0; border: 0; border-radius: var(--radius-full); background: var(--gray-400); cursor: pointer; position: relative; }
.am-slider__puntos button::after { content: ""; position: absolute; inset: -10px; }
.am-slider__puntos button.is-active { width: 16px; background: var(--red-500); border-radius: var(--radius-sm); }
.am-slider__puntos button:focus-visible { outline: 2px solid var(--red-500); outline-offset: 3px; }
.am-resena { height: 100%; }
.am-resena__arriba { display: flex; align-items: center; justify-content: space-between; }
.am-resena__arriba .am-testimonial__mark { height: auto; line-height: 1; }
.am-resena__texto { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; line-clamp: 6; overflow: hidden; flex: 1 1 auto; }
.am-resena__mas { font-size: 12px; font-weight: 700; color: var(--red-400); }
.am-resena__autor { display: flex; align-items: center; gap: var(--space-3); margin-top: auto; padding-top: var(--space-4); border-top: 1px solid var(--black-700); }
.am-resena__foto { width: 40px; height: 40px; flex: none; border-radius: var(--radius-full); object-fit: cover; }
.am-resena__inicial { display: grid; place-items: center; font-weight: 800; color: var(--white); background: var(--red-500); }
.am-resena__autor > span { display: grid; min-width: 0; }
.am-resena__autor a { color: inherit; text-decoration: none; }
.am-resena__autor a:hover { text-decoration: underline; }
@media (max-width: 1024px) {
  .am-slider__pista { grid-auto-columns: calc((100% - var(--space-4)) / 2); }
  .am-slider__nav--prev { left: 0; }
  .am-slider__nav--next { right: 0; }
}
@media (max-width: 720px) {
  .am-slider__pista { grid-auto-columns: 86%; }
  .am-slider__nav { display: none; }
}
@media (prefers-reduced-motion: reduce) { .am-slider__pista { scroll-behavior: auto; } }

/* ---------- Responsive del inventario (celular) ---------- */
.am-filtros__pie, .am-resultados__chips { display: none; }
@media (max-width: 900px) {
  .am-js .am-filtros { display: flex; flex-direction: column; padding: 0; }
  .am-js .am-filtros__cabeza { flex: none; margin: 0; padding: var(--space-4) var(--space-6); border-bottom: 1px solid var(--gray-200); }
  .am-js .am-filtros > .am-filtros__grupo { padding-inline: var(--space-6); }
  .am-js .am-filtros > .am-filtros__grupo:first-of-type { padding-top: var(--space-6); }
  .am-js .am-filtros__pie { position: sticky; bottom: 0; margin-top: auto; display: flex; gap: var(--space-3); padding: var(--space-4) var(--space-6); background: var(--white); border-top: 1px solid var(--gray-200); }
  .am-js .am-filtros__pie .am-btn { flex: 1 1 0; min-height: 48px; }
  .am-filtros__lista a { display: block; padding: var(--space-2) 0; }
  .am-resultados__chips { display: flex; flex-wrap: nowrap; overflow-x: auto; margin: 0 0 var(--space-6); padding-bottom: var(--space-1); scrollbar-width: none; }
  .am-resultados__chips::-webkit-scrollbar { display: none; }
  .am-resultados__chips li { flex: none; }
  .am-resultados__cabeza { margin-bottom: var(--space-4); }
  .am-resultados__cabeza > div:first-child:empty { display: none; }
  .am-resultados__acciones { display: grid; grid-template-columns: 1fr 1fr; width: 100%; align-items: end; }
  .am-resultados__acciones > [data-favoritos-link]:not([hidden]) { grid-column: 1 / -1; order: 3; }
  .am-orden .am-filtros__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .am-orden select.am-input { width: 100%; height: 44px; }
}
/* Una sola columna de vehículos en celular */
@media (max-width: 600px) {
  .am-grid-4, .am-grid-inventario, .am-inventario--sin-filtros .am-grid-inventario { grid-template-columns: minmax(0, 1fr); }
}

/* Vehículo vendido (estado que manda acstech por el plugin "acstech Conector"). */
.am-vehiculo__vendido { margin: 0 0 var(--space-4, 16px); padding: var(--space-3, 12px) var(--space-4, 16px); border-left: 3px solid var(--red-500); background: var(--gray-50); font-size: 14px; }
.am-vehiculo__vendido a { color: var(--red-600); font-weight: 600; }
