/* ===== Fátima · Reseñas premium (fm-reviews) ===== */
.fmr{--fm-ink:#12343F;--fm-ink-2:#4A6470;--fm-teal:#0EAFA5;--fm-teal-d:#0B8F87;--fm-blue:#7EAEC2;--fm-pink:#E07CA0;--fm-ease:cubic-bezier(.2,.8,.2,1);
  position:relative;width:100%;font-family:"Public Sans",sans-serif;color:var(--fm-ink)}
.fmr *,.fmr *::before,.fmr *::after{box-sizing:border-box}

/* Entrada suave */
.fmr-js .fmr [data-fmr]{opacity:0;translate:0 30px;transition:opacity .9s var(--fm-ease) var(--d,0s),translate 1.1s var(--fm-ease) var(--d,0s)}
.fmr-js .fmr .fmr-h2[data-fmr]{translate:none;transition:opacity .9s ease}
.fmr-js .fmr [data-fmr].is-in{opacity:1;translate:0 0}

.fmr-stars{font-style:normal;color:#F5B301;letter-spacing:.1em;background:linear-gradient(90deg,#F5B301 0 40%,#FFE08A 50%,#F5B301 60%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fmrShine 3.5s linear infinite}
@keyframes fmrShine{from{background-position:100% 0}to{background-position:-200% 0}}

/* Botones */
.fmr-btns{display:flex;flex-wrap:wrap;gap:10px}
.fmr .fmr-btn{position:relative;display:inline-flex;align-items:center;gap:9px;padding:14px 20px;border-radius:999px;font:600 .88rem/1 "Public Sans",sans-serif;text-decoration:none!important;overflow:hidden;isolation:isolate;
  transition:transform .35s var(--fm-ease),box-shadow .35s,background-color .3s,background-position .6s}
.fmr-btn svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s var(--fm-ease)}
.fmr-btn::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;z-index:-1;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .8s var(--fm-ease)}
.fmr-btn:hover::after{left:130%}
.fmr-btn:hover{transform:translateY(-2px)}
.fmr .fmr-btn--grad{color:#fff!important;background:linear-gradient(110deg,var(--fm-teal),#3E9DB7 50%,var(--fm-pink));background-size:200% 100%;box-shadow:0 14px 30px -14px rgba(14,175,165,.75)}
.fmr-btn--grad:hover{background-position:100% 0}
.fmr-btn--grad:hover svg{transform:translateX(4px)}
.fmr .fmr-btn--light{color:var(--fm-ink)!important;background:#fff;border:1px solid rgba(18,52,63,.12);box-shadow:0 10px 26px -18px rgba(18,52,63,.5)}
.fmr-btn--light:hover svg{transform:rotate(-10deg)}

/* Tarjeta de reseña */
.fmr-card{display:flex;flex-direction:column;gap:14px;padding:24px 26px;background:#fff;border-radius:24px;border:1px solid rgba(18,52,63,.07);box-shadow:0 24px 50px -40px rgba(18,52,63,.5);
  transition:border-color .4s,box-shadow .4s,transform .4s var(--fm-ease)}
.fmr-card:hover{border-color:rgba(14,175,165,.35);box-shadow:0 34px 60px -38px rgba(18,52,63,.55);transform:translateY(-3px)}
.fmr-card__top{display:flex;justify-content:space-between;align-items:center}
.fmr-card__top .fmr-stars{font-size:1.05rem}
.fmr-g{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(18,52,63,.14);font:800 .9rem/1 "Public Sans",sans-serif;color:#4285F4}
.fmr-card__txt{margin:0;font:400 .95rem/1.7 "Public Sans",sans-serif;color:var(--fm-ink-2)}
.fmr-card__who{display:flex;align-items:center;gap:12px;font:400 .95rem/1.25 "Public Sans",sans-serif;color:var(--fm-ink)}
.fmr-card__who b{display:block;font-weight:600}
.fmr-card__who small{display:block;margin-top:3px;font-size:.76rem;color:var(--fm-ink-2)}
.fmr-av{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:#fff;font:400 1rem/1 "Tenor Sans",serif;letter-spacing:.02em;
  background:linear-gradient(135deg,var(--fm-teal),var(--fm-blue));box-shadow:0 8px 18px -8px rgba(14,175,165,.8)}
.fmr-av--1{background:linear-gradient(135deg,var(--fm-blue),var(--fm-pink));box-shadow:0 8px 18px -8px rgba(126,174,194,.8)}
.fmr-av--2{background:linear-gradient(135deg,var(--fm-pink),#F5B301);box-shadow:0 8px 18px -8px rgba(224,124,160,.8)}

/* ===== Versión completa ===== */
.fmr--full::before{content:"“";position:absolute;top:-.3em;left:-.05em;z-index:-1;font:400 clamp(14rem,26vw,24rem)/1 Georgia,serif;color:rgba(14,175,165,.07);pointer-events:none}
.fmr-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(40px,6vw,90px);align-items:center;max-width:1240px;margin:0 auto}
.fmr-aside{display:flex;flex-direction:column;align-items:flex-start}
.fmr-eyebrow{display:inline-flex;align-items:center;gap:12px;font:600 .76rem/1.2 "Public Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--fm-teal-d);margin:0 0 20px}
.fmr-eyebrow::before{content:"";width:30px;height:1px;background:linear-gradient(90deg,var(--fm-teal),var(--fm-pink))}
.fmr .fmr-h2{font:400 clamp(2rem,3.4vw,3.1rem)/1.08 "Tenor Sans",serif;color:var(--fm-ink);letter-spacing:-.025em;margin:0;text-wrap:balance}
.fmr-h2 em{font-style:normal;background:linear-gradient(100deg,var(--fm-teal) 0%,var(--fm-blue) 45%,var(--fm-pink) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fmrGrad 8s ease-in-out infinite alternate}
@keyframes fmrGrad{to{background-position:100% 0}}
.fmr-lead{font:400 clamp(1rem,1.15vw,1.1rem)/1.75 "Public Sans",sans-serif;color:var(--fm-ink-2);margin:22px 0 0;max-width:34em}
.fmr-lead strong{color:var(--fm-ink);font-weight:600}
.fmr-score{display:flex;flex-direction:column;gap:18px;width:100%;max-width:440px;margin-top:30px;padding:26px 28px;background:#fff;border-radius:28px;border:1px solid rgba(18,52,63,.07);box-shadow:0 40px 70px -50px rgba(18,52,63,.55)}
.fmr-score__num{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:16px;font:500 .85rem/1.3 "Public Sans",sans-serif;color:var(--fm-ink-2)}
.fmr-score__num b{grid-row:span 2;font:400 4rem/.9 "Tenor Sans",serif;background:linear-gradient(120deg,var(--fm-teal),var(--fm-pink));-webkit-background-clip:text;background-clip:text;color:transparent}
.fmr-score__num .fmr-stars{font-size:1.35rem;align-self:end}
.fmr-score__num small{font-size:.85rem;align-self:start}
.fmr-score__bars{display:flex;flex-direction:column;gap:7px;font:500 .76rem/1 "Public Sans",sans-serif;color:var(--fm-ink-2)}
.fmr-score__bars span{display:grid;grid-template-columns:26px 1fr 36px;align-items:center;gap:10px}
.fmr-score__bars i{font-style:normal}
.fmr-score__bars i:last-child{text-align:right}
.fmr-score__bars em{display:block;height:6px;border-radius:6px;background:rgba(18,52,63,.07);position:relative;overflow:hidden}
.fmr-score__bars em::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:6px;background:linear-gradient(90deg,var(--fm-teal),var(--fm-blue));transform-origin:left;transition:transform 1.6s var(--fm-ease) .4s}
.fmr-js .fmr-score:not(.is-in) .fmr-score__bars em::after{transform:scaleX(0)}

/* Muro con dos columnas en movimiento */
.fmr-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;height:680px;overflow:hidden;align-items:start;
  -webkit-mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
.fmr-vtrack{display:flex;flex-direction:column;gap:18px}
.fmr-anim .fmr-vtrack{animation:fmrUp var(--dur,60s) linear infinite}
.fmr-anim .fmr-col--rev .fmr-vtrack{animation-direction:reverse}
.fmr-wall:hover .fmr-vtrack{animation-play-state:paused}
@keyframes fmrUp{to{transform:translateY(calc(-50% - 9px))}}

/* ===== Versión compacta (páginas antiguas) ===== */
.fmr--compact{display:flex;flex-direction:column;gap:28px;padding-top:10px}
.fmr-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-radius:24px;background:#fff;border:1px solid rgba(18,52,63,.07);box-shadow:0 30px 60px -48px rgba(18,52,63,.55);max-width:1140px;width:100%;margin:0 auto}
.fmr-bar__score{display:flex;align-items:center;gap:14px}
.fmr-bar__score b{font:400 3rem/.9 "Tenor Sans",serif;background:linear-gradient(120deg,var(--fm-teal),var(--fm-pink));-webkit-background-clip:text;background-clip:text;color:transparent}
.fmr-bar__score span{display:flex;flex-direction:column;gap:4px;text-align:left}
.fmr-bar__score .fmr-stars{font-size:1.15rem}
.fmr-bar__score small{font:500 .82rem/1.3 "Public Sans",sans-serif;color:var(--fm-ink-2)}
.fmr-rows{display:flex;flex-direction:column;gap:18px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.fmr-row{display:flex;overflow:hidden;padding:6px 0 10px}
.fmr-track{display:flex;gap:18px;flex:none;text-align:left}
.fmr-track .fmr-card{width:min(360px,80vw);flex:none}
.fmr-anim .fmr-track{animation:fmrSide var(--dur,70s) linear infinite}
.fmr-anim .fmr-row--rev .fmr-track{animation-direction:reverse}
.fmr-rows:hover .fmr-track{animation-play-state:paused}
@keyframes fmrSide{to{transform:translateX(calc(-50% - 9px))}}

/* ===== Responsive ===== */
@media (max-width:1024px){
  .fmr-grid{grid-template-columns:1fr}
  .fmr-wall{display:flex;height:auto;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;-webkit-mask-image:none;mask-image:none;padding:4px 2px 24px;scrollbar-width:none}
  .fmr-wall::-webkit-scrollbar{display:none}
  .fmr-col,.fmr-vtrack{display:contents}
  .fmr-anim .fmr-vtrack{animation:none}
  .fmr-wall .fmr-card{flex:0 0 min(84%,420px);scroll-snap-align:start}
  .fmr-wall [aria-hidden="true"]{display:none}
}
@media (max-width:767px){
  .fmr-score{padding:22px}
  .fmr-btns{width:100%}
  .fmr .fmr-btn{flex:1 1 auto;justify-content:center}
  .fmr-bar{flex-direction:column;align-items:stretch}
  .fmr-bar__score{justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .fmr *,.fmr *::before,.fmr *::after{animation:none!important}
  .fmr-js .fmr [data-fmr]{transition:none!important;opacity:1;translate:none}
}
