.elementor-65 .elementor-element.elementor-element-a4059be{margin-top:40px;margin-bottom:40px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-65 .elementor-element.elementor-element-ab040d6 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-65 .elementor-element.elementor-element-ab040d6{padding:25px 0px 0px 0px;}.elementor-65 .elementor-element.elementor-element-9746d53:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-9746d53 > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-65 .elementor-element.elementor-element-47041cf img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-5a33f2a:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-5a33f2a > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-65 .elementor-element.elementor-element-27dcacc img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-e6248d3:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-e6248d3 > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-65 .elementor-element.elementor-element-995f2ab img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-63cebc3 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-65 .elementor-element.elementor-element-63cebc3{padding:25px 0px 0px 0px;}.elementor-65 .elementor-element.elementor-element-065745f:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-065745f > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-65 .elementor-element.elementor-element-0ce16ad img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-e6c70e7:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-e6c70e7 > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-65 .elementor-element.elementor-element-34a0a80 img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-b5ac00c:hover > .elementor-element-populated{box-shadow:0px 0px 25px 0px rgba(0,0,0,0.16);}.elementor-65 .elementor-element.elementor-element-b5ac00c > .elementor-element-populated{margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:25px 25px 25px 25px;}.elementor-65 .elementor-element.elementor-element-3706bd6 img{max-width:45%;}.elementor-65 .elementor-element.elementor-element-15afa08 > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-7a0a6ec img{width:10%;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-65 .elementor-element.elementor-element-bcb4519{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-65 .elementor-element.elementor-element-bcb4519 .elementor-divider-separator{width:100%;}.elementor-65 .elementor-element.elementor-element-bcb4519 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-65 .elementor-element.elementor-element-6160266 > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-9b9960d img{width:20%;}.elementor-65 .elementor-element.elementor-element-32ce4fd{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-65 .elementor-element.elementor-element-32ce4fd .elementor-divider-separator{width:100%;}.elementor-65 .elementor-element.elementor-element-32ce4fd .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-65 .elementor-element.elementor-element-103a5f4 > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-158c7a0 img{width:15%;}.elementor-65 .elementor-element.elementor-element-af2189c{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-65 .elementor-element.elementor-element-af2189c .elementor-divider-separator{width:100%;}.elementor-65 .elementor-element.elementor-element-af2189c .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-65 .elementor-element.elementor-element-f78bc03 > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-9225492 img{width:20%;}.elementor-65 .elementor-element.elementor-element-92f3e33{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-65 .elementor-element.elementor-element-92f3e33 .elementor-divider-separator{width:100%;}.elementor-65 .elementor-element.elementor-element-92f3e33 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-65 .elementor-element.elementor-element-ec8c193 > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-604ee23 img{width:15%;}.elementor-65 .elementor-element.elementor-element-71a845b{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-65 .elementor-element.elementor-element-71a845b .elementor-divider-separator{width:100%;}.elementor-65 .elementor-element.elementor-element-71a845b .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-65 .elementor-element.elementor-element-8cc90fd > .elementor-background-overlay{background-color:#2C3E5017;opacity:0.5;}.elementor-65 .elementor-element.elementor-element-166e3d6 img{width:15%;}.elementor-65 .elementor-element.elementor-element-7a6ed4d{margin-top:40px;margin-bottom:0px;}.elementor-widget-toggle .elementor-toggle-title, .elementor-widget-toggle .elementor-toggle-icon{color:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-toggle-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-tab-title.elementor-active a, .elementor-widget-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon{color:var( --e-global-color-accent );}.elementor-widget-toggle .elementor-toggle-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-toggle .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-65 .elementor-element.elementor-element-47041cf img{max-width:60%;}.elementor-65 .elementor-element.elementor-element-27dcacc img{max-width:60%;}.elementor-65 .elementor-element.elementor-element-995f2ab img{max-width:60%;}.elementor-65 .elementor-element.elementor-element-0ce16ad img{max-width:60%;}.elementor-65 .elementor-element.elementor-element-34a0a80 img{max-width:60%;}.elementor-65 .elementor-element.elementor-element-3706bd6 img{max-width:60%;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-toggle .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-65 .elementor-element.elementor-element-a4059be{margin-top:5px;margin-bottom:5px;}.elementor-65 .elementor-element.elementor-element-332cd32 > .elementor-widget-container{margin:05px 0px 05px 0px;}.elementor-65 .elementor-element.elementor-element-ab040d6{padding:15px 0px 0px 0px;}.elementor-65 .elementor-element.elementor-element-9746d53 > .elementor-element-populated{margin:25px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-65 .elementor-element.elementor-element-47041cf img{max-width:41%;}.elementor-65 .elementor-element.elementor-element-e6248d3 > .elementor-element-populated{margin:25px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-65 .elementor-element.elementor-element-995f2ab img{max-width:53%;}.elementor-65 .elementor-element.elementor-element-63cebc3{padding:15px 0px 0px 0px;}.elementor-65 .elementor-element.elementor-element-065745f > .elementor-element-populated{margin:25px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-65 .elementor-element.elementor-element-0ce16ad img{max-width:53%;}.elementor-65 .elementor-element.elementor-element-e6c70e7 > .elementor-element-populated{margin:25px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-65 .elementor-element.elementor-element-34a0a80 img{max-width:40%;}.elementor-65 .elementor-element.elementor-element-7a0a6ec img{width:30%;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-65 .elementor-element.elementor-element-9b9960d img{width:59%;}.elementor-65 .elementor-element.elementor-element-158c7a0 img{width:40%;}.elementor-65 .elementor-element.elementor-element-9225492 img{width:45%;}.elementor-65 .elementor-element.elementor-element-604ee23 img{width:40%;}.elementor-65 .elementor-element.elementor-element-166e3d6 img{width:40%;}.elementor-widget-toggle .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS for html, class: .elementor-element-6396b48 */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-863ccf1 */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b590534 */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-502ed66 */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0ca3e7f */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-45c5b8f */:root {
  --color-bg: #ffffff;
  --color-text: #2C3E50;
  --color-accent: #E67E22;
  --color-light: #ECF0F1;
  --card-radius: 6px;
  --card-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.moto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

.moto-card {
  background: var(--color-bg);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s;
}

.moto-card:hover {
  transform: translateY(-4px);
}

.moto-image {
  height: 200px;           /* fija la altura de todas las imágenes */
  background: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
}
.moto-image img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.fav-btn {
  position: absolute;
  top: 8px; right: 8px;
  background: rgba(255,255,255,0.9);
  border: none;
  color: var(--color-accent);
  font-size: 1.2rem;
  padding: 4px 6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s;
}

.fav-btn:hover {
  background: var(--color-accent);
  color: #fff;
}

.moto-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 16px;
}

.moto-specs {
  list-style: none;
  padding: 0 16px;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.moto-specs li {
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.9rem;
  padding: 4px 8px;
  border-radius: 4px;
}

.moto-rating {
  display: flex;
  align-items: center;
  margin: 12px 16px;
  font-size: 0.9rem;
}

.star {
  font-size: 1rem;
  color: #ddd;
}

.star.active {
  color: var(--color-accent);
}

.rating-count {
  margin-left: 6px;
  color: var(--color-text);
}

.btn-ver {
  position: relative;
  /* damos z-index bajo al propio botón, para que cree un stacking context */
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  margin: 16px;
  padding: 10px 16px;
  background: var(--color-accent);  /* naranja por defecto */
  color: #fff;                       /* texto blanco */
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border: 2px solid --color-bg;
  border-radius: 4px;
  transition: color 0.3s ease, background 0.3s ease;
}

.btn-ver::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: var(--color-text);    /* gris oscuro al hacer hover */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  /* z-index más bajo que el del botón, para quedar DETRÁS */
  z-index: -1;
}

.btn-ver:hover::before {
  transform: scaleX(1);
}

/* Aunque no cambie el color del texto, nos aseguramos de que siga blanco */
.btn-ver:hover {
  color: #fff;
}

/* Responsive tweaks (móvil) */
@media (max-width: 480px) {
  .moto-title {
    font-size: 1rem;
    margin: 12px;
  }
  .btn-ver {
    margin: 12px;
    padding: 8px 12px;
  }
}/* End custom CSS */