@charset "utf-8";
/* ============================================================
   Limusinas · index (listado) · Rediseño estilo Apple.
   Se carga DESPUÉS de mainStyles.css.
   ============================================================ */

:root{
  --ap-bg:#f5f5f7;
  --ap-card:#ffffff;
  --ap-ink:#1d1d1f;
  --ap-muted:#6e6e73;
  --ap-line:#e3e3e6;
  --ap-blue:#1E90FF;
  --ap-blue-d:#0a6fe0;
  --ap-font:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;
}

*{ font-family:var(--ap-font); }
body{ background:var(--ap-bg); color:var(--ap-ink); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }

/* ---------- Header / footer / carrito ---------- */
#top{ background:transparent !important; }
.topHeader{ background:#fff !important; }
.bottomHeader{ background:transparent !important; }
.nameLogotype{ color:var(--ap-ink) !important; font-weight:600 !important; letter-spacing:-.5px; }
a.dropbtn{ color:var(--ap-ink) !important; font-weight:500 !important; }
a.menuIconsItem,a.menuIconsItem:hover{ background:transparent !important; border:none !important; border-radius:0 !important; backdrop-filter:none !important; color:#fff !important; }
a.menuIconsItem p{ color:#fff !important; transition:color .2s ease; }
a.menuIconsItem:hover,a.menuIconsItem:hover p{ color:#17c3d4 !important; }
.topHeaderItem{ background:var(--ap-card) !important; border:1px solid var(--ap-line) !important; box-shadow:none !important; border-radius:12px !important; }
.topHeaderItem p{ color:var(--ap-ink) !important; }
.footer{ background:var(--ap-bg) !important; border:1px solid var(--ap-line); border-radius:18px !important; }
.title{ color:var(--ap-ink) !important; font-weight:600 !important; }
.box_footer_son a{ color:var(--ap-blue) !important; }
/* Carrito flotante: usa el estilo teal/goldenrod global (igual que el inicio) */

/* Hero + título de sección */
#title{ letter-spacing:-1px !important; font-weight:600 !important; }
.titleItems{ color:var(--ap-ink) !important; font-family:var(--ap-font) !important; font-weight:600 !important; letter-spacing:-.4px !important; }

/* Recomendación */
.recomendation p{
  color:var(--ap-ink) !important; font-family:var(--ap-font) !important;
  font-weight:600 !important; letter-spacing:-.4px !important; font-size:clamp(24px,3.4vw,34px) !important;
}

/* ---------- Cards del listado ---------- */
.itemsInside{ gap:22px; }
.item{
  background:var(--ap-card) !important;
  border:1px solid var(--ap-line) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  margin:0 !important;
  box-shadow:0 10px 30px rgba(0,0,0,.06) !important;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease !important;
}
.item:hover{ transform:translateY(-4px); box-shadow:0 18px 44px rgba(0,0,0,.1) !important; border-color:rgba(30,144,255,.35) !important; }
.itemImg{ width:100% !important; height:220px !important; object-fit:cover !important; display:block; border-radius:0 !important; margin:0 !important; }
.itemTitle{
  color:var(--ap-ink) !important; font-family:var(--ap-font) !important; font-weight:600 !important;
  letter-spacing:-.3px !important; font-size:19px !important; padding:0 18px; margin:16px 0 !important;
}
.item .text{ display:none !important; }

/* Accesos rápidos (products) */
.item1{ border-radius:16px !important; overflow:hidden; }
.item1 p{ font-family:var(--ap-font) !important; font-weight:600 !important; text-shadow:0 2px 10px rgba(0,0,0,.55); }

/* ============================================================
   PRODUCTS - el titulo nunca debe salirse del tile
   (banda inferior centrada, con wrap, en TODOS los tamanos)
   ============================================================ */
.item1{ position:relative !important; overflow:hidden !important; }
.item1 p{
  position:absolute !important;
  left:8px !important; right:8px !important; bottom:10px !important; top:auto !important;
  width:auto !important; max-width:calc(100% - 16px) !important;
  margin:0 !important; padding:6px 10px !important; box-sizing:border-box !important;
  text-align:center !important;
  font-size:clamp(14px,2vw,24px) !important; line-height:1.15 !important;
  overflow-wrap:break-word !important; word-break:break-word !important; hyphens:auto;
  color:#fff !important; background:rgba(0,0,0,.45) !important; border-radius:12px !important;
}
/* Tablet (vertical y horizontal): version movil, 2 por fila */
@media (max-width:1024px){
  .item1{ flex:2 2 calc(50% - 10px) !important; }
  .item1 p{ font-size:clamp(14px,2.6vw,20px) !important; }
}
/* Smartphone: 1 por fila */
@media (max-width:600px){
  .item1{ flex:1 1 100% !important; height:170px !important; }
  .item1 p{ font-size:18px !important; }
}
