.abm-rv{--rv-bg:var(--abm-rv-bg,#073f3c);--rv-ink:var(--abm-rv-ink,#fffdf8);--rv-gold:var(--abm-rv-gold,#b98a45);--rv-serif:var(--font-heading--family,"Cormorant",Georgia,serif);--rv-sans:var(--font-body--family,Inter,Arial,sans-serif);position:relative;display:grid;grid-template-columns:clamp(90px,11vw,170px) minmax(0,1fr);gap:clamp(20px,4vw,60px);box-sizing:border-box;padding:clamp(40px,5.5vw,76px) clamp(28px,5.5vw,84px) clamp(34px,4.5vw,60px);overflow:hidden;background:var(--rv-bg);color:var(--rv-ink);isolation:isolate}
.abm-rv *,.abm-rv *:before,.abm-rv *:after{box-sizing:border-box}
.abm-rv:before{position:absolute;inset:0;z-index:-1;content:"";background:radial-gradient(120% 90% at 100% 0,rgba(185,138,69,.2),transparent 55%),radial-gradient(90% 80% at 0 100%,rgba(255,255,255,.06),transparent 60%)}
.abm-rv:after{position:absolute;inset:14px;z-index:-1;content:"";border:1px solid rgba(255,253,248,.1);pointer-events:none}
.abm-rv__mark{align-self:start;color:var(--rv-gold);font-family:var(--rv-serif);font-size:clamp(120px,13vw,200px);line-height:.7;user-select:none}
.abm-rv__body{min-width:0}
.abm-rv__top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:clamp(18px,2vw,26px)}
.abm-rv__eyebrow{margin:0;color:var(--rv-gold);font-family:var(--rv-sans);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.abm-rv__count{display:flex;align-items:center;gap:12px;margin:0 0 0 auto;color:rgba(255,253,248,.62);font-family:var(--rv-sans);font-size:12px;font-weight:600;letter-spacing:.14em;font-variant-numeric:tabular-nums}
.abm-rv__count [data-abm-rv-current]{color:var(--rv-ink)}
.abm-rv__sep{width:28px;height:1px;background:rgba(255,253,248,.35)}
.abm-rv__viewport{display:grid;outline:0;touch-action:pan-y}
.abm-rv__viewport:focus-visible{outline:2px solid var(--rv-gold);outline-offset:8px}
.abm-rv__slide{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .7s ease,transform .9s cubic-bezier(.22,1,.36,1),visibility 0s linear .7s}
.abm-rv__slide.is-active{opacity:1;visibility:visible;transform:none;transition-delay:.12s,.12s,0s}
.abm-rv__stars{display:flex;gap:4px;margin-bottom:clamp(16px,1.8vw,22px)}
.abm-rv__stars svg{width:15px;height:15px;fill:var(--rv-gold)}
.abm-rv__stars svg.is-empty{fill:rgba(255,253,248,.22)}
.abm-rv__quote{max-width:34ch;margin:0;font-family:var(--rv-serif);font-size:clamp(28px,3.1vw,48px);font-weight:var(--font-heading--weight,500);letter-spacing:-.01em;line-height:1.16;text-wrap:pretty}
.abm-rv__author{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:clamp(20px,2.4vw,30px);font-family:var(--rv-sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.abm-rv__author strong{font-weight:600}
.abm-rv__author span{display:inline-flex;align-items:center;gap:16px;color:rgba(255,253,248,.66);font-weight:500}
.abm-rv__author strong+span:before{width:22px;height:1px;content:"";background:var(--rv-gold)}
.abm-rv__controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:clamp(28px,3.6vw,46px);padding-top:clamp(20px,2.2vw,26px);border-top:1px solid rgba(255,253,248,.14)}
.abm-rv__progress{display:flex;flex:1 1 auto;gap:8px;max-width:420px}
.abm-rv__dot{flex:1 1 0;max-width:56px;height:24px;padding:0;border:0;background:none;cursor:pointer}
.abm-rv__dot span{position:relative;display:block;height:2px;overflow:hidden;background:rgba(255,253,248,.2);transition:background .3s}
.abm-rv__dot span:after{position:absolute;inset:0;content:"";background:var(--rv-gold);transform:scaleX(0);transform-origin:left}
.abm-rv__dot.is-done span:after,.abm-rv__dot.is-active span:after{transform:scaleX(1)}
.abm-rv.is-running .abm-rv__dot.is-active span:after{animation:abm-rv-fill var(--abm-rv-interval,7s) linear forwards}
.abm-rv.is-paused .abm-rv__dot.is-active span:after{animation-play-state:paused}
.abm-rv__dot:hover span{background:rgba(255,253,248,.4)}
.abm-rv__dot:focus-visible{outline:2px solid var(--rv-gold);outline-offset:2px}
.abm-rv__arrows{display:flex;gap:10px}
.abm-rv__arrow{display:inline-grid;place-items:center;width:50px;height:50px;padding:0;border:1px solid rgba(255,253,248,.3);border-radius:50%;background:transparent;color:var(--rv-ink);cursor:pointer;transition:background .3s,border-color .3s,color .3s,transform .3s}
.abm-rv__arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.abm-rv__arrow:hover{border-color:var(--rv-gold);background:var(--rv-gold);color:#fff}
.abm-rv__arrow:focus-visible{outline:2px solid var(--rv-gold);outline-offset:3px}
@keyframes abm-rv-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:749px){
  .abm-rv{grid-template-columns:1fr;gap:0;padding:30px 22px 26px}
  .abm-rv:after{inset:8px}
  .abm-rv__mark{position:absolute;top:18px;right:18px;font-size:110px;opacity:.9}
  .abm-rv__quote{font-size:clamp(25px,7vw,31px);line-height:1.2}
  .abm-rv__count{display:none}
  .abm-rv__controls{gap:16px}
  .abm-rv__arrow{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){.abm-rv__slide{transition:opacity .2s;transform:none}.abm-rv.is-running .abm-rv__dot.is-active span:after{animation:none;transform:scaleX(1)}}
/* compact */
.abm-rv{grid-template-columns:clamp(56px,6vw,90px) minmax(0,1fr);gap:clamp(16px,2.4vw,36px);padding:clamp(28px,3vw,42px) clamp(24px,3.6vw,56px) clamp(22px,2.4vw,32px)}
.abm-rv:after{inset:10px}
.abm-rv__mark{font-size:clamp(72px,7vw,110px)}
.abm-rv__top{margin-bottom:12px}
.abm-rv__stars{margin-bottom:12px}
.abm-rv__stars svg{width:13px;height:13px}
.abm-rv__quote{max-width:52ch;font-size:clamp(21px,1.8vw,28px);line-height:1.28}
.abm-rv__author{margin-top:16px;font-size:11px}
.abm-rv__controls{margin-top:20px;padding-top:16px}
.abm-rv__arrow{width:42px;height:42px}
.abm-rv__arrow svg{width:16px;height:16px}
@media(max-width:749px){.abm-rv{grid-template-columns:1fr;gap:0;padding:24px 20px 20px}.abm-rv__mark{top:12px;right:14px;font-size:76px}.abm-rv__quote{font-size:clamp(19px,5.4vw,23px);line-height:1.3}.abm-rv__arrow{width:40px;height:40px}}
