.rp-hero{position:relative;width:100vw;margin-left:calc(50% - 50vw);height:100vh;min-height:560px;max-height:900px;overflow:hidden;background:#000;color:#fff;isolation:isolate}
.rp-cols{position:absolute;inset:0;display:flex;gap:12px;padding:0 12px;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent)}
.rp-col{flex:1;min-width:0;overflow:hidden}
.rp-track{display:flex;flex-direction:column;animation:rp-up 32s linear infinite;will-change:transform}
.rp-col:nth-child(even) .rp-track{animation-name:rp-down;animation-duration:40s}
.rp-col:nth-child(3n) .rp-track{animation-duration:46s}
@keyframes rp-up{to{transform:translate3d(0,-50%,0)}}
@keyframes rp-down{from{transform:translate3d(0,-50%,0)}to{transform:translate3d(0,0,0)}}

/* Colunas da esquerda: cartões vazios, desfasados entre si */
.rp-card.rp-empty{cursor:default;pointer-events:none;background:#04E76245}
.rp-decor:nth-child(1) .rp-track{animation-delay:-6s}
.rp-decor:nth-child(2) .rp-track{animation-delay:-19s}
.rp-decor:nth-child(3) .rp-track{animation-delay:-11s}
.rp-decor:nth-child(4) .rp-track{animation-delay:-27s}
.rp-decor:nth-child(5) .rp-track{animation-delay:-3s}
.rp-decor:nth-child(6) .rp-track{animation-delay:-15s}

/* Cartão com thumbnail */
.rp-card{display:block;position:relative;width:100%;margin:0 0 12px;padding:0;border:0;font:inherit;color:inherit;aspect-ratio:9/14;border-radius:10px;overflow:hidden;background:#123524;contain:paint;cursor:pointer;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.rp-card video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.rp-card:hover,.rp-card:focus-visible{transform:scale(1.03) rotate(-1deg)}
.rp-card:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.rp-col:hover .rp-track{animation-play-state:paused}
.rp-hero.rp-paused .rp-track{animation-play-state:paused}

/* Botão de play (salta e pulsa ao passar o rato) */
.rp-play{position:absolute;left:50%;top:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 6px 20px rgba(0,0,0,.35);pointer-events:none;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.rp-play::after{content:"";position:absolute;inset:0;background:#123524;clip-path:polygon(40% 30%,40% 70%,72% 50%)}
.rp-card:hover .rp-play,.rp-card:focus-visible .rp-play{transform:scale(1.25) rotate(-8deg);animation:rp-pulse 1s ease-out infinite}
@keyframes rp-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}100%{box-shadow:0 0 0 18px rgba(255,255,255,0)}}

.rp-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.88) 0,rgba(0,0,0,.15) 38%,rgba(0,0,0,0) 62%)}
.rp-text{position:absolute;z-index:2;left:5%;top:50%;transform:translateY(-50%);max-width:min(50vw,90vw)}
.rp-hero .rp-text > p:nth-child(2) {margin:0;font-size:clamp(50px,4vw,60px);font-weight:400;line-height:1.15;color:#fff; text-transform: none; max-width: 770px; padding: 20px 0px;}
.rp-text>h1:first-child { font-family: "Maitree", serif; font-size:clamp(18px,4vw,20px); line-height: 1; }
.rp-text>p:not(:first-child){margin:20px 0 0;font-size:1rem;line-height:1.5;opacity:.9;color:#fff; max-width: 600px;}
.rp-btn{display:inline-block;margin-top:28px;padding:10px 22px;border:1px solid #fff;border-radius:999px;color:#fff;text-decoration:none;font-size:14px;transition:background .2s,color .2s}
.rp-btn:hover,.rp-btn:focus-visible{background:#fff;color:#000}

/* Player (abre ao clicar num cartão) */
html.rp-lock{overflow:hidden;scrollbar-gutter:stable}
.rp-modal{--rp-h:min(78vh,820px);position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden;overscroll-behavior:contain}
@supports (height:1dvh){.rp-modal{--rp-h:min(78dvh,820px)}}
.rp-modal[open]{display:flex;align-items:center;justify-content:center}
.rp-modal::backdrop{background:transparent}
.rp-modal .rp-backdrop{position:absolute;inset:0;background:rgba(4,14,9,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.rp-modal .rp-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;max-width:100%}
.rp-modal .rp-stage{width:min(92vw,calc(var(--rp-h) * 9 / 16));aspect-ratio:9/16;border-radius:18px;overflow:hidden;background:#000;box-shadow:0 30px 90px rgba(0,0,0,.65);will-change:transform}
.rp-modal .rp-player{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.rp-modal .rp-cta{display:inline-block;padding:11px 26px;border-radius:999px;background:#fff;color:#123524;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.rp-modal .rp-cta[hidden]{display:none}
.rp-modal .rp-cta:hover,.rp-modal .rp-cta:focus-visible{transform:scale(1.08) rotate(-2deg)}
.rp-modal .rp-close{position:absolute;z-index:4;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(0,0,0,.4);color:#fff;font:300 28px/1 sans-serif;cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .2s}
.rp-modal .rp-close:hover,.rp-modal .rp-close:focus-visible{transform:rotate(90deg) scale(1.1);background:rgba(0,0,0,.65)}
.logo_rep { position: absolute; top: 10%; left: 5%; z-index: 9;}

@media (prefers-reduced-motion:reduce){
  .rp-track{animation:none}
  .rp-card,.rp-play,.rp-cta,.rp-close{transition:none}
  .rp-card:hover,.rp-card:focus-visible{transform:none}
  .rp-card:hover .rp-play,.rp-card:focus-visible .rp-play{animation:none;transform:none}
}
@media (max-width:800px){
  .rp-hero{height:auto;max-height:none}
  .rp-hero::before{display:none}
  .rp-text{position:relative;transform:none;top:auto;left:auto;padding:12vh 20px 5vh; order: 1}
  .rp-cols{position:relative;height:70vh;-webkit-mask-image:none;mask-image:none}
  .rp-decor{display:none}
  .rp-text{max-width: 100vw}
  .rp-hero {display: inline-grid;}
.logo_rep {	top: 2%;	max-width: 175px !important; }
  .rp-cols {order: 2;}
  .rp-text > h1:first-child { max-width: 88vw;}
}
