.grna-wrap-front{position:relative;width:100%;font-family:inherit;color:#172033;box-sizing:border-box}.grna-wrap-front *{box-sizing:border-box}.grna-head{display:flex;justify-content:space-between;align-items:center;gap:28px;margin:0 auto 24px;padding:0 2px}.grna-business-title{display:flex;align-items:center;gap:10px;min-width:0}.grna-business-title strong{font-size:20px;line-height:1.25;color:#101828}.grna-google-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;background:#f5f7fa;color:#5f6368;padding:5px 9px;border:1px solid #e7eaee;border-radius:999px;white-space:nowrap}.grna-google-g{font-weight:800;font-size:13px;color:#4285f4}.grna-overall{display:flex;align-items:center;gap:8px;white-space:nowrap}.grna-score{font-size:18px;font-weight:700;color:#101828}.stars{color:var(--grna-accent,#f4b400);letter-spacing:1px;font-size:15px;line-height:1}.grna-count{font-size:13px;color:#667085}.grna-track{display:grid;grid-template-columns:repeat(var(--grna-cols),minmax(260px,1fr));gap:var(--grna-gap);align-items:stretch}.grna-layout-grid .grna-track{justify-content:center}.grna-layout-grid .grna-review{width:100%}.grna-layout-list .grna-track{grid-template-columns:1fr;max-width:900px;margin:0 auto}.grna-review{background:#fff;border-radius:var(--grna-radius);padding:24px;min-width:0;min-height:245px;display:flex;flex-direction:column;border:1px solid #edf0f3;box-shadow:0 8px 26px rgba(16,24,40,.07);transition:transform .2s ease,box-shadow .2s ease}.grna-review:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(16,24,40,.10)}.grna-card-clean .grna-review{box-shadow:0 8px 26px rgba(16,24,40,.07)}.grna-card-soft .grna-review{background:#f8fafc;border-color:#eef2f6}.grna-card-bordered .grna-review{box-shadow:none;border:1px solid #e4e7ec}.grna-card-glass .grna-review{background:rgba(255,255,255,.78);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.65)}.grna-review-top{display:flex;align-items:center;gap:12px}.grna-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eef2f6;color:#475467;font-weight:700;font-size:15px;flex:none;overflow:hidden}.grna-avatar-img{object-fit:cover}.grna-author{display:flex;flex-direction:column;min-width:0}.grna-author a{text-decoration:none;color:inherit}.grna-author strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px;color:#175cd3}.grna-author small{color:#98a2b3;margin-top:3px;font-size:12px}.grna-review-rating{margin-top:13px;height:17px}.grna-review p{margin:13px 0 0;line-height:1.62;color:#344054;font-size:15px;flex:1}.grna-review-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;text-decoration:none;font-size:13px;font-weight:600;color:#175cd3}.grna-review-link:hover{text-decoration:underline}.grna-layout-carousel{overflow:hidden}.grna-layout-carousel .grna-track{display:flex;transition:transform .4s ease}.grna-layout-carousel .grna-review{flex:0 0 calc((100% - (var(--grna-gap) * (var(--grna-cols) - 1))) / var(--grna-cols))}.grna-prev,.grna-next{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #e4e7ec;width:42px;height:42px;border-radius:50%;background:#fff;box-shadow:0 6px 18px rgba(16,24,40,.12);font-size:27px;line-height:1;cursor:pointer;z-index:2;color:#344054}.grna-prev{left:8px}.grna-next{right:8px}.grna-dots{text-align:center;margin-top:16px}.grna-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d0d5dd;margin:0 4px;cursor:pointer}.grna-dot.active{background:#475467}.grna-source{text-align:center;margin-top:22px}.grna-source a{color:#175cd3;text-decoration:none;font-size:14px;font-weight:600}.grna-source a:hover{text-decoration:underline}.grna-attribution{text-align:center;margin-top:8px;color:#98a2b3;font-size:11px;line-height:1.5}.grna-badge{display:flex;align-items:center;gap:14px;padding:17px 20px;border-radius:14px;background:#fff;border:1px solid #edf0f3;box-shadow:0 7px 24px rgba(16,24,40,.08);max-width:440px}.grna-badge-google{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:20px;font-weight:800;background:#f5f7fa;color:#4285f4}.grna-badge small{color:#667085;margin-left:6px}.grna-error{padding:14px;border-radius:10px;background:#fff4f4;color:#b42318}.grna-empty{padding:16px;border-radius:12px;background:#f8fafc;color:#667085;text-align:center}@media(max-width:900px){.grna-head{align-items:flex-start;flex-direction:column;gap:12px}.grna-track{grid-template-columns:repeat(2,minmax(0,1fr))}.grna-layout-carousel .grna-review{flex-basis:calc((100% - var(--grna-gap))/2)}}@media(max-width:600px){.grna-business-title strong{font-size:18px}.grna-head{gap:10px}.grna-overall{flex-wrap:wrap}.grna-track{grid-template-columns:1fr}.grna-layout-carousel .grna-review{flex-basis:100%}.grna-review{min-height:0;padding:20px}.grna-prev{left:3px}.grna-next{right:3px}}
.grna-dynamic{position:relative}.grna-dynamic-inner{position:relative}.grna-dynamic .grna-track{width:100%}
.grna-layout-carousel .grna-dynamic-inner{position:relative;padding:0 54px}.grna-layout-carousel .grna-track{overflow:visible}.grna-layout-carousel .grna-prev,.grna-layout-carousel .grna-next{top:calc(50% - 12px);transform:translateY(-50%);display:grid;place-items:center}.grna-layout-carousel .grna-prev:disabled,.grna-layout-carousel .grna-next:disabled{opacity:.35;cursor:not-allowed}.grna-layout-carousel .grna-dots{display:flex;justify-content:center;gap:4px}.grna-layout-carousel .grna-dot{border:0;padding:0;width:8px;height:8px}.grna-layout-carousel .grna-review{flex:0 0 calc((100% - (var(--grna-gap) * 2)) / 3)}
@media(max-width:900px){.grna-layout-carousel .grna-dynamic-inner{padding:0 48px}.grna-layout-carousel .grna-review{flex-basis:calc((100% - var(--grna-gap))/2)}}
@media(max-width:600px){.grna-layout-carousel .grna-dynamic-inner{padding:0 42px}.grna-layout-carousel .grna-review{flex-basis:100%}}

/* CTW 2.8 - carrusel */
.grna-layout-carousel .grna-dynamic-inner{overflow:hidden}
.grna-layout-carousel .grna-track{display:flex!important;flex-wrap:nowrap!important;width:max-content;max-width:none;gap:var(--grna-gap);transform:translate3d(0,0,0);transition:transform .4s ease}
.grna-layout-carousel .grna-review{display:flex!important;flex:0 0 calc((100vw - 108px - (var(--grna-gap)*2))/3);width:auto}
.grna-layout-carousel .grna-prev,.grna-layout-carousel .grna-next{pointer-events:auto!important;z-index:20}
@media(max-width:900px){.grna-layout-carousel .grna-review{flex-basis:calc((100vw - 96px - var(--grna-gap))/2)}}
@media(max-width:600px){.grna-layout-carousel .grna-review{flex-basis:calc(100vw - 84px)}}

/* CTW 2.9 - carrusel definitivo: 5 tarjetas cargadas, 3 visibles */
.grna-layout-carousel .grna-dynamic-inner{position:relative;overflow:hidden;padding:0 54px}
.grna-layout-carousel .grna-track{display:flex!important;flex-wrap:nowrap!important;width:max-content!important;max-width:none!important;gap:var(--grna-gap)!important;transition:transform .4s ease!important;will-change:transform}
.grna-layout-carousel .grna-review{display:flex!important;flex:0 0 calc((100% - (var(--grna-gap) * 2))/3)!important;width:calc((100% - (var(--grna-gap) * 2))/3)!important;min-width:0!important}
.grna-layout-carousel .grna-prev,.grna-layout-carousel .grna-next{pointer-events:auto!important;z-index:50!important;visibility:visible}
.grna-layout-carousel .grna-prev{left:8px}.grna-layout-carousel .grna-next{right:8px}
@media(max-width:900px){
 .grna-layout-carousel .grna-dynamic-inner{padding:0 48px}
 .grna-layout-carousel .grna-review{flex-basis:calc((100% - var(--grna-gap))/2)!important;width:calc((100% - var(--grna-gap))/2)!important}
}
@media(max-width:600px){
 .grna-layout-carousel .grna-dynamic-inner{padding:0 42px}
 .grna-layout-carousel .grna-review{flex-basis:100%!important;width:100%!important}
}

/* CTW 3.0 - CAROUSEL HARD OVERRIDE */
.grna-wrap-front.grna-layout-carousel .grna-dynamic-inner{
  position:relative!important;
  overflow:hidden!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:0 58px!important;
}
.grna-wrap-front.grna-layout-carousel .grna-track{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  gap:var(--grna-gap)!important;
  /* La posición la controla JavaScript mediante transform inline. */
  transition:transform .45s ease!important;
}
.grna-wrap-front.grna-layout-carousel .grna-review{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  flex:0 0 calc((100% - (2 * var(--grna-gap))) / 3)!important;
  width:calc((100% - (2 * var(--grna-gap))) / 3)!important;
  max-width:calc((100% - (2 * var(--grna-gap))) / 3)!important;
  min-width:0!important;
  margin:0!important;
}
.grna-wrap-front.grna-layout-carousel .grna-prev,
.grna-wrap-front.grna-layout-carousel .grna-next{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:100!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  visibility:visible!important;
}
.grna-wrap-front.grna-layout-carousel .grna-prev{left:8px!important}
.grna-wrap-front.grna-layout-carousel .grna-next{right:8px!important}
.grna-wrap-front.grna-layout-carousel .grna-dots{
  display:flex!important;
  justify-content:center!important;
  gap:7px!important;
  margin-top:16px!important;
}
@media(max-width:900px){
 .grna-wrap-front.grna-layout-carousel .grna-review{
  flex-basis:calc((100% - var(--grna-gap))/2)!important;
  width:calc((100% - var(--grna-gap))/2)!important;
  max-width:calc((100% - var(--grna-gap))/2)!important;
 }
}
@media(max-width:600px){
 .grna-wrap-front.grna-layout-carousel .grna-dynamic-inner{padding:0 48px!important}
 .grna-wrap-front.grna-layout-carousel .grna-review{
  flex-basis:100%!important;width:100%!important;max-width:100%!important;
 }
}

/* CTW 3.2 - no mostrar valoración general / contador */
.grna-wrap-front .grna-overall{display:none!important}
