/* ========================================================================
   CLUBBIX — REMODELO v1
   Camada de redesign da home. Carregada DEPOIS de style.css: sobrepoe o
   visual das secoes da home (header, hero, sobre, planos, Bixie, CTA,
   rodape) sem tocar nos componentes funcionais (indicacao, formulario de
   contato, chatbot, calculadora) que continuam vindo do style.css.
   Classes novas usam o prefixo .rm- para nao colidir com o legado.
   ======================================================================== */

:root{
  --rm-bg-hero:#241439;
  --rm-bg-about:#160a28;
  --rm-bg-cta:#2b123d;
  --rm-bg-footer:#150522;
  --rm-text:#f3e9f5;
  --rm-muted:#a78fbd;
  --rm-grad:linear-gradient(120deg,#f5841f 0%,#ea5a1c 36%,#b43ac6 72%,#7c2ba8 100%);
  --rm-grad-cta:linear-gradient(125deg,#ea5a1c 1%,#7c2ba8 110%);
  --rm-maxw:1280px;
}

.rm-container{
  max-width:var(--rm-maxw);margin:0 auto;padding:0 40px;width:100%;
}
.rm-grad-text{
  background:var(--rm-grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 28px;border-radius:var(--pill);
  font-family:'Poppins',sans-serif;font-weight:600;font-size:15.7px;
  white-space:nowrap;border:none;cursor:pointer;
  transition:transform .25s var(--ease),filter .25s var(--ease),box-shadow .25s var(--ease);
}
.rm-btn:hover{transform:translateY(-3px);filter:brightness(1.07)}
.rm-btn:active{transform:translateY(-1px) scale(.99)}
.rm-btn-primary{background:var(--rm-grad-cta);color:#fff;box-shadow:0 14px 30px rgba(234,90,28,.28)}
.rm-btn-outline{border:1px solid #f5841f;color:#fff;background:transparent}

/* =========================== CABECALHO ================================= */
.page-home .site-header{
  background:rgba(20,9,36,.9);
  border-bottom:1px solid rgba(255,255,255,.11);
}
/* os blobs flutuantes do layout antigo ficam invisíveis atrás das seções
   opacas do remodelo — desligamos para não pagar blur+animação à toa */
.page-home .bg-decor{display:none}
.page-home .header-inner{max-width:var(--rm-maxw);padding:0 40px;min-height:66px;gap:24px}
.page-home .brand-tag{display:none}
.page-home .brand-name{font-size:21px}
.page-home .main-nav{gap:6px}
.page-home .tab{font-size:14.4px;padding:10px 16px;color:var(--rm-muted)}
.page-home .tab:hover{color:var(--rm-text)}
.page-home .header-actions .btn-sm{padding:8px 20px;font-size:14.4px}
.page-home #navLoginBtn{
  background:transparent;border:1px solid var(--ember);color:#fff;box-shadow:none;
}
.page-home #navLoginBtn:hover{background:rgba(234,90,28,.14);box-shadow:none}

/* ============================== HERO =================================== */
.rm-hero{
  background:radial-gradient(circle at center,#352155 0%,#241439 58%,#1b0f2e 100%);
  position:relative;overflow:hidden;padding:100px 0 0;z-index:1;
}
.rm-hero-orb{
  position:absolute;left:50%;bottom:-540px;
  width:4900px;height:880px;transform:translateX(-50%);
  border-radius:90%;
  background:radial-gradient(circle,
    rgba(245,132,31,.4) 0%,rgba(234,90,28,.22) 24%,
    rgba(180,58,198,.1) 44%,rgba(36,20,57,0) 64%);
  filter:blur(115px);z-index:0;pointer-events:none;
}
.rm-hero .rm-container{
  display:flex;align-items:stretch;justify-content:space-between;
  gap:40px;min-height:640px;position:relative;z-index:2;
}
.rm-hero-copy{
  flex:1 1 480px;display:flex;flex-direction:column;justify-content:center;
  transform:translateY(-38px);text-align:left;
}
/* o recuo lateral do modelo só entra quando sobra margem fora do container,
   senão o título vaza pela borda esquerda em telas de ~1280px */
@media (min-width:1400px){
  .rm-hero-copy{transform:translate(-54px,-38px)}
}
.rm-hero h1{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(44px,5.6vw,72px);line-height:1.06;color:var(--rm-text);
}
.rm-hero-lead{
  margin-top:20px;font-size:20px;line-height:1.35;
  color:var(--rm-muted);max-width:420px;
}
.rm-hero-lead strong{color:var(--rm-text);font-weight:700}
.rm-hero-cta{margin-top:55px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.rm-member-note{margin-top:28px;font-size:15px;color:var(--rm-muted)}
.rm-member-note a{color:var(--ember);font-weight:700;text-decoration:underline;text-underline-offset:3px}

.rm-hero-visual{position:relative;flex:0 0 560px;max-width:560px}
.rm-hero-rings{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  transform:translateX(34px);z-index:1;isolation:isolate;
}
.rm-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.9}
.rm-ring-outer{
  width:140%;height:360%;opacity:1;z-index:1;
  background-size:contain;background-repeat:no-repeat;background-position:center;
  background-image:url("../img/orange-circle-dot.png");
  animation:rmSpin 90s linear infinite;
}
.rm-ring-middle{
  width:130%;aspect-ratio:1/1;z-index:0;
  background-size:contain;background-repeat:no-repeat;
  background-image:url("../img/yellow-circle.png");
  animation:rmSpin 40s linear infinite;
}
.rm-ring-inner{width:95%;z-index:2;animation:rmSpin 60s linear infinite reverse}
@keyframes rmSpin{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes rmSpinBack{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
.rm-badge-orbit{position:absolute;inset:0;z-index:3;pointer-events:none;transform-origin:50% 50%}
.rm-badge-anchor{position:absolute;width:auto;height:auto;z-index:4}
/* posicionamento percentual: alinha os badges sobre os pontos do circulo */
.rm-a1{left:30%;top:64%}    /* +300 empresas */
.rm-a2{left:63%;top:35%}    /* Under Armour */
.rm-a3{left:20%;top:62%}    /* Petz */
.rm-a4{left:86%;top:56%}    /* Vivara */
.rm-a5{left:73%;top:38%}    /* Tampatinhas */
.rm-a6{left:2%;top:44%}     /* Escape 60 */
.rm-a7{left:89%;top:50%}    /* Centauro */
.rm-a8{left:84%;top:43%}    /* Espaco La Vieh */
.rm-a9{left:7%;top:57%}     /* Riquepro */
.rm-a10{left:7%;top:40%}    /* Coloiado Fitness */
.rm-a11{left:.5%;top:49%}   /* Evino */
.rm-a12{left:2%;top:53%}    /* Farmacias */
.rm-a13{left:23%;top:36%}   /* Cinemas */
.rm-a14{left:40%;top:34%}   /* Academia MOVE */
.rm-float-badge{
  position:absolute;top:0;left:0;
  display:flex;align-items:center;gap:6px;
  /* sem backdrop-filter: são 14 badges animando ao mesmo tempo e o blur
     por trás de cada um derrubava o frame rate. O fundo escuro já basta. */
  background:rgba(20,9,36,.82);border:1px solid rgba(255,255,255,.15);
  border-radius:var(--pill);padding:9px 16px;
  font-family:'Poppins',sans-serif;font-weight:700;font-size:11.8px;color:#fff;
  white-space:nowrap;box-shadow:0 10px 22px rgba(0,0,0,.3);
  transform:translate(-50%,-50%);pointer-events:auto;
  /* contra-rotacao: mantem o badge na horizontal enquanto orbita */
  animation:rmSpinBack 90s linear infinite;
}
.rm-hero-person{
  position:absolute;left:50%;bottom:0;z-index:2;
  width:116%;max-width:none;height:auto;display:block;
  transform:translateX(-50%);
}
.rm-hero-baseline{
  position:absolute;bottom:0;left:56%;width:350px;max-width:88%;height:5px;
  transform:translateX(-50%);background:#e07722;z-index:3;pointer-events:none;
}

/* ============================== SOBRE ================================== */
.rm-about{
  background:var(--rm-bg-about);position:relative;overflow:hidden;padding:30px 0;z-index:1;
}
.rm-about::before{
  content:"";position:absolute;left:50%;top:18%;
  width:3800px;height:620px;transform:translate(-50%,-50%);
  border-radius:60% 70% 50% 50%/50% 55% 65% 50%;
  background:radial-gradient(circle,
    rgba(245,132,31,.34) 0%,rgba(234,90,28,.18) 22%,
    rgba(180,58,198,.12) 40%,rgba(36,20,57,0) 68%);
  filter:blur(110px);z-index:0;pointer-events:none;
}
.rm-about .rm-container{
  display:grid;grid-template-columns:.82fr 1.18fr;gap:0;align-items:end;
  position:relative;z-index:2;min-height:620px;padding-top:12px;
}
.rm-about-visual{
  position:relative;display:flex;align-items:center;justify-content:center;
  align-self:center;margin-left:-90px;width:560px;min-height:560px;overflow:visible;
}
.rm-about-visual img{
  position:relative;z-index:4;display:block;
  width:clamp(340px,31vw,500px);max-height:585px;height:auto;object-fit:contain;
}
.rm-about h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(32px,3.6vw,48px);line-height:1.14;color:var(--rm-text);
}
.rm-about-lead{margin-top:24px;font-size:19.5px;line-height:1.6;color:#fff;max-width:520px}
.rm-stat-row{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap}
.rm-stat-card{
  flex:1 1 180px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);border-radius:18px;
  padding:22px 22px 18px;min-height:110px;
  display:flex;flex-direction:column;justify-content:center;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.rm-stat-card .rm-num{
  font-family:'Poppins',sans-serif;font-weight:800;font-size:32px;
  background:linear-gradient(118deg,#f5841f 33%,#b43ac6 82%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-stat-card .rm-label{margin-top:6px;font-size:15px;color:var(--rm-muted);font-weight:500}

/* ============================== PLANOS ================================= */
.rm-plans{
  background:radial-gradient(circle at center,
    rgba(75,35,72,.96) 0%,rgba(25,11,34,.98) 38%,rgba(11,7,19,1) 100%);
  position:relative;overflow:hidden;padding:110px 0 120px;text-align:center;z-index:1;
}
.rm-plans::before,.rm-plans::after{
  content:"";position:absolute;border-radius:50%;filter:blur(120px);
  pointer-events:none;z-index:0;
}
.rm-plans::before{
  width:980px;height:980px;left:50%;top:52%;transform:translate(-50%,-50%);
  background:radial-gradient(circle,
    rgba(255,135,60,.18) 0%,rgba(255,135,60,.08) 20%,
    rgba(180,58,198,.04) 42%,rgba(36,20,57,0) 70%);
}
.rm-plans::after{
  width:760px;height:760px;left:50%;bottom:-220px;transform:translateX(-50%);
  background:radial-gradient(circle,
    rgba(255,150,80,.14) 0%,rgba(180,58,198,.08) 32%,rgba(36,20,57,0) 70%);
}
.rm-plans .rm-container{position:relative;z-index:2}
.rm-plans h2{
  font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(42px,4vw,78px);line-height:.98;letter-spacing:-.06em;
  color:var(--rm-text);max-width:760px;margin:0 auto;
}
.rm-plans-sub{
  margin:26px auto 0;max-width:640px;color:var(--rm-muted);
  font-size:18.2px;line-height:1.6;
}
.rm-plans-grid{
  margin:52px auto 0;display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));
  gap:18px;align-items:end;max-width:1020px;
}
.rm-plan{
  background:rgba(95,67,108,.34);border:1px solid rgba(255,255,255,.08);
  border-radius:26px;padding:34px 26px 22px;text-align:left;position:relative;
  min-height:420px;display:flex;flex-direction:column;justify-content:space-between;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.rm-plan:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(16,7,22,.42)}
.rm-plan.is-featured{
  background:linear-gradient(180deg,rgba(113,62,135,.8) 0%,rgba(90,66,117,.52) 100%);
  border:1px solid rgba(255,255,255,.14);
  padding-top:52px;margin-top:-18px;min-height:500px;
  box-shadow:0 22px 44px rgba(16,7,22,.38);
}
.rm-plan-badge{
  position:absolute;top:-18px;left:50%;transform:translateX(-50%);
  background:linear-gradient(123deg,#fbb13c 0%,#f5841f 55%,#ea5a1c 100%);
  color:#fff;font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;
  padding:9px 22px;border-radius:var(--pill);white-space:nowrap;
  box-shadow:0 12px 18px rgba(234,90,28,.28);
}
.rm-plan-eyebrow{
  font-size:12px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:#ff783f;
}
.rm-plan.is-featured .rm-plan-eyebrow{color:var(--gold)}
.rm-plan-name{
  margin-top:12px;font-family:'Poppins',sans-serif;font-weight:800;
  font-size:30px;color:var(--rm-text);
}
.rm-plan-price{margin-top:16px;display:flex;align-items:baseline;gap:6px}
.rm-plan-price .rm-cur{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:16.8px;color:var(--ember);
}
.rm-plan.is-featured .rm-plan-price .rm-cur{color:var(--gold)}
.rm-plan-price .rm-val{
  font-family:'Poppins',sans-serif;font-weight:800;font-size:32.8px;color:var(--rm-text);
}
.rm-plan.is-featured .rm-plan-price .rm-val{color:#fff}
.rm-plan-feats{margin-top:22px;list-style:none;display:flex;flex-direction:column;gap:14px}
.rm-plan-feats li{
  display:flex;align-items:flex-start;gap:12px;
  font-size:15px;line-height:1.5;color:var(--rm-text);
}
.rm-plan-feats .rm-check{
  flex-shrink:0;width:19px;height:19px;border-radius:50%;
  background:var(--warm-grad);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:11px;line-height:1;margin-top:3px;
}
.rm-plan.is-featured .rm-plan-feats .rm-check{background:var(--magenta)}
.rm-plan-cta{
  margin-top:26px;display:block;width:100%;text-align:center;
  padding:13px 0;border-radius:var(--pill);
  border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:15.7px;
  transition:transform .25s var(--ease),background .25s var(--ease),filter .25s var(--ease);
}
.rm-plan-cta:hover{transform:translateY(-2px);background:rgba(255,255,255,.08)}
.rm-plan.is-featured .rm-plan-cta{
  border:1px solid #ffe5bc;
  background:linear-gradient(120deg,#f5841f 0%,#ea5a1c 100%);
  box-shadow:0 12px 18px rgba(234,90,28,.24);
}
.rm-plan.is-featured .rm-plan-cta:hover{filter:brightness(1.07)}

/* ========================= BIXIE / DUVIDAS ============================= */
.rm-qa{
  background:var(--rm-bg-about);position:relative;overflow:hidden;padding:110px 0;z-index:1;
}
.rm-qa::before{
  content:"";position:absolute;inset:0;
  background-image:url("../img/chat-bg.png");
  background-position:center 18%;background-repeat:no-repeat;background-size:cover;
  opacity:.07;pointer-events:none;z-index:0;
}
.rm-qa .rm-container{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;
  position:relative;z-index:2;
}
.rm-qa h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(30px,3.4vw,45.6px);line-height:1.15;color:var(--rm-text);
}
.rm-qa-lead{margin-top:24px;font-size:18.2px;line-height:1.6;color:var(--rm-muted);max-width:480px}
.rm-qa .rm-btn{margin-top:32px}
.rm-chat-mock{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
  border-radius:24px;padding:28px;cursor:pointer;
  transition:transform .3s var(--ease),border-color .3s var(--ease);
}
.rm-chat-mock:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.22)}
.rm-chat-bubble{display:flex;gap:14px;align-items:flex-start}
.rm-chat-bubble .rm-avatar{
  width:44px;height:44px;border-radius:50%;background:var(--rm-grad);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.rm-chat-bubble .rm-avatar img{width:30px;height:30px;object-fit:contain}
.rm-chat-bubble p{
  background:rgba(255,255,255,.06);border-radius:16px;padding:16px 18px;
  font-size:15px;line-height:1.6;color:#f2e3ff;
}
.rm-chat-placeholder{margin-top:18px;display:flex;flex-direction:column;gap:12px}
.rm-chat-placeholder span{height:16px;border-radius:8px;background:rgba(255,255,255,.08);display:block}
.rm-chat-placeholder span:nth-child(1){width:70%}
.rm-chat-placeholder span:nth-child(2){width:85%}
.rm-chat-placeholder span:nth-child(3){width:55%}

/* ============================ CTA FINAL ================================ */
.rm-cta{
  background:var(--rm-bg-cta);position:relative;overflow:hidden;padding:42px 0 54px;z-index:1;
}
.rm-cta::before{
  content:"";position:absolute;right:-90px;top:-96%;
  width:1100px;height:1100px;border-radius:50%;
  background-image:url("../img/logo.png"),
    radial-gradient(circle,
      rgba(255,170,118,.7) 0%,rgba(255,107,129,.42) 28%,
      rgba(164,72,166,.18) 54%,rgba(164,72,166,0) 78%);
  background-repeat:no-repeat,no-repeat;
  background-position:right center,center;
  background-size:62% auto,100% 100%;
  opacity:.12;pointer-events:none;z-index:0;transform:rotate(36deg);
}
.rm-cta::after{
  content:"";position:absolute;left:-10%;top:50%;
  width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,
    rgba(255,149,96,.12) 0%,rgba(255,149,96,.02) 45%,transparent 78%);
  pointer-events:none;z-index:0;
}
.rm-cta .rm-container{
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:2;min-height:420px;
}
.rm-cta-copy{
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;max-width:610px;margin:0 auto;
}
.rm-cta h2{
  font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(38px,4.2vw,94px);line-height:.84;letter-spacing:-.06em;
  color:var(--rm-text);margin:0;
}
.rm-cta .rm-grad-text{display:block}
.rm-cta .rm-btn{
  margin-top:47px;font-size:18px;padding:20px 30px;border-radius:18px;
  background:var(--rm-grad);box-shadow:none;
  min-width:420px;width:max-content;font-weight:700;
}

/* ============================== RODAPE ================================= */
.page-home .site-footer{background:var(--rm-bg-footer);padding:64px 0 0}
.page-home .footer-top{
  max-width:var(--rm-maxw);padding:0 40px 48px;
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;
}
.page-home .footer-brand p{
  font-size:14.7px;line-height:1.6;color:rgba(255,255,255,.78);max-width:280px;
}
.page-home .footer-col h4{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:16px;color:#fff;margin-bottom:16px;
}
.page-home .footer-col a,
.page-home .footer-col .footer-addr{font-size:14.4px;color:rgba(255,255,255,.78)}
.page-home .footer-cnpj{font-size:13.1px;opacity:.7}
.page-home .footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  font-size:13.4px;color:rgba(255,255,255,.78);
}

/* ======================= SECOES LEGADAS NA HOME ======================== */
/* paineis Exclusividade / Indique / Filantropia e o bloco de contato
   herdam o fundo escuro do novo desenho */
.page-home .tab-panel .section,
.page-home .section.contact{background:var(--rm-bg-about);position:relative;z-index:1}

/* =========================== RESPONSIVO ================================ */
@media (max-width:1100px){
  .rm-hero-copy{transform:translateY(-20px)}
  .rm-hero-visual{flex:0 0 460px;max-width:460px}
  .rm-about-visual{margin-left:-40px;width:auto}
}
@media (max-width:900px){
  .rm-container{padding:0 22px}

  .rm-hero{padding:56px 0 0}
  .rm-hero .rm-container{flex-direction:column;min-height:0;gap:0}
  .rm-hero-copy{flex:none;transform:none;text-align:center;align-items:center}
  .rm-hero h1{font-size:clamp(34px,8.4vw,52px)}
  .rm-hero-lead{font-size:17.5px;max-width:none}
  .rm-hero-cta{margin-top:34px;justify-content:center}
  .rm-hero-orb{width:900px;height:700px;bottom:-260px}
  .rm-hero-visual{
    position:relative;flex:none;width:100%;max-width:340px;height:330px;margin:34px auto 0;z-index:1;
  }
  .rm-hero-rings{transform:none}
  .rm-ring-outer{width:100%;height:100%}
  .rm-ring-middle,.rm-ring-inner,.rm-badge-orbit,.rm-hero-baseline{display:none}
  .rm-hero-person{width:100%}

  .rm-about{padding:56px 0}
  .rm-about .rm-container{grid-template-columns:1fr;min-height:0;gap:34px;align-items:start;padding-top:0}
  .rm-about-visual{margin-left:0;width:100%;min-height:0;justify-content:center}
  .rm-about-visual img{width:min(80vw,380px);max-height:none}
  .rm-about-lead{max-width:none}

  .rm-plans{padding:64px 0 72px}
  .rm-plans h2{font-size:clamp(32px,7.6vw,48px);letter-spacing:-.03em}
  .rm-plans-sub{font-size:16.5px}
  .rm-plans-grid{grid-template-columns:1fr;max-width:400px;margin-top:44px}
  .rm-plan{min-height:0}
  .rm-plan.is-featured{margin-top:16px;min-height:0;padding-top:46px}

  .rm-qa{padding:64px 0}
  .rm-qa .rm-container{grid-template-columns:1fr;gap:34px}
  .rm-qa-lead{max-width:none}
  .rm-chat-mock{padding:22px}

  .rm-cta{padding:56px 0 64px}
  .rm-cta .rm-container{min-height:0}
  .rm-cta h2{font-size:clamp(32px,7.8vw,52px);line-height:.95}
  .rm-cta .rm-btn{min-width:0;width:100%;margin-top:34px;font-size:16.5px;padding:18px 22px}

  .page-home .header-inner{padding:10px 16px}
  .page-home .footer-top{grid-template-columns:1fr 1fr;padding:0 22px 36px}
}
@media (max-width:600px){
  .rm-container{padding:0 20px}
  .rm-hero h1{font-size:clamp(31px,8.6vw,42px)}
  .rm-hero-cta{width:100%}
  .rm-hero-cta .rm-btn{width:100%}
  .rm-hero-visual{max-width:290px;height:280px}
  .rm-stat-card{flex:1 1 100%;min-height:0;padding:18px 20px}
  .rm-stat-card .rm-num{font-size:28px}
  .rm-plan{padding:28px 22px 20px}
  .rm-plan-name{font-size:26px}
  .page-home .site-footer{padding:48px 0 0}
  .page-home .footer-top{grid-template-columns:1fr;gap:32px}
  .page-home .footer-brand p{max-width:none}
}

/* ------------------------- movimento reduzido -------------------------- */
@media (prefers-reduced-motion:reduce){
  .rm-ring-outer,.rm-ring-middle,.rm-ring-inner,.rm-float-badge{animation:none!important}
}
/* aparelhos pequenos: desliga as orbitas por completo */
@media (max-width:380px){
  .rm-ring-outer{animation:none}
}

/* ========================================================================
   PÁGINA UNIVAG — hero "círculo laranja" + blocos da página do convênio
   ======================================================================== */
.rm-u-hero{
  background:#160a28;position:relative;overflow:hidden;padding:80px 0;z-index:1;
}
.rm-u-hero::before{
  content:"";position:absolute;left:44%;top:50%;width:1500px;height:560px;
  transform:translate(-50%,-50%);
  border-radius:60% 70% 50% 50%/50% 55% 65% 50%;
  background:radial-gradient(circle,
    rgba(245,132,31,.3) 0%,rgba(234,90,28,.16) 24%,
    rgba(180,58,198,.1) 44%,rgba(36,20,57,0) 70%);
  filter:blur(100px);pointer-events:none;z-index:0;
}
.rm-u-hero .rm-container{
  position:relative;z-index:2;
  display:grid;grid-template-columns:540px 1fr;gap:56px;align-items:center;
}

/* ---- coluna visual: disco + anel + foto + chips em órbita ---- */
.rm-u-visual{
  position:relative;height:500px;
  display:flex;align-items:center;justify-content:center;
}
.rm-u-disc{
  position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);
  width:390px;height:390px;border-radius:50%;
  background:linear-gradient(150deg,#f5841f 0%,#ea5a1c 46%,#b43ac6 100%);
  box-shadow:0 30px 70px rgba(234,90,28,.28);
}
.rm-u-arc{
  position:absolute;top:42%;left:50%;
  width:490px;height:490px;border-radius:50%;
  border:2px dashed rgba(245,132,31,.42);
  animation:rmSpin 70s linear infinite;
}
.rm-u-photo{
  position:relative;top:22px;z-index:3;width:440px;max-width:100%;
  /* a foto é recortada, mas a bancada chega reta na borda de baixo:
     o fade dissolve a base dela no fundo da seção */
  -webkit-mask-image:linear-gradient(to bottom,#000 62%,rgba(0,0,0,.35) 86%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 62%,rgba(0,0,0,.35) 86%,transparent 100%);
}
.rm-u-orbit{
  position:absolute;inset:0;z-index:5;pointer-events:none;
  animation:rmTurn 80s linear infinite;
}
.rm-u-anchor{position:absolute}
.rm-u-anchor .rm-u-chip{
  position:absolute;top:0;left:0;
  /* contra-rotação: o chip dá a volta com o anel, mas o texto nunca vira */
  animation:rmTurnBack 80s linear infinite;
}
@keyframes rmTurn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes rmTurnBack{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
/* posições sobre o anel pontilhado (raio ~240px, centro 50% / 44%) */
.rm-u-o1{left:94%;top:44%}
.rm-u-o2{left:85.6%;top:72.2%}
.rm-u-o3{left:63.6%;top:89.7%}
.rm-u-o4{left:36.4%;top:89.7%}
.rm-u-o5{left:14.4%;top:72.2%}
.rm-u-o6{left:6%;top:44%}
.rm-u-o7{left:14.4%;top:15.8%}
.rm-u-o8{left:36.4%;top:-1.7%}
.rm-u-o9{left:63.6%;top:-1.7%}
.rm-u-o10{left:85.6%;top:15.8%}
.rm-u-chip{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(20,9,36,.86);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--pill);padding:8px 15px;
  font-family:'Poppins',sans-serif;font-weight:700;font-size:11.6px;color:#fff;
  white-space:nowrap;box-shadow:0 10px 22px rgba(0,0,0,.34);
}
.rm-u-chip.is-hot{
  background:linear-gradient(120deg,#f5841f 0%,#ea5a1c 100%);
  border-color:rgba(255,229,188,.5);
}

/* ---- coluna de texto ---- */
.rm-u-copy{display:flex;flex-direction:column}
.rm-u-eyebrow{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  padding:8px 16px;border-radius:var(--pill);
  background:rgba(245,132,31,.14);border:1px solid rgba(245,132,31,.34);
  color:#ffb877;font-family:'Poppins',sans-serif;font-weight:600;
  font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;
}
.rm-u-eyebrow .ico{width:15px;height:15px}
.rm-u-hero h1{
  margin-top:22px;font-family:'Poppins',sans-serif;font-weight:800;
  letter-spacing:-.02em;font-size:clamp(38px,4.4vw,62px);line-height:1.06;
  color:var(--rm-text);
}
.rm-u-lead{margin-top:20px;font-size:18.5px;line-height:1.5;color:var(--rm-muted);max-width:470px}
.rm-u-lead strong{color:var(--rm-text);font-weight:700}
.rm-u-cta{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}
.rm-u-stats{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}
.rm-u-stat{
  flex:1 1 150px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px 18px;
}
.rm-u-stat b{
  display:block;font-family:'Poppins',sans-serif;font-weight:800;font-size:29px;
  background:linear-gradient(118deg,#f5841f 33%,#b43ac6 82%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-u-stat > span{display:block;margin-top:4px;font-size:13.5px;color:var(--rm-muted);font-weight:500}
.rm-u-stat b .counter{display:inline}
.rm-u-note{margin-top:20px;font-size:13px;color:#8f7aa5}

/* ---- card usado no aviso de manutenção da calculadora ---- */
.rm-u-card{
  max-width:640px;margin:0 auto;text-align:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);
  border-radius:26px;padding:44px 38px;
  box-shadow:0 22px 44px rgba(16,7,22,.3);
}
.rm-u-card h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(26px,3vw,36px);line-height:1.14;color:var(--rm-text);margin-bottom:14px;
}
.rm-u-card p{color:var(--rm-muted);line-height:1.6;font-size:16px}
.rm-u-status{
  display:inline-flex;align-items:center;gap:9px;margin:22px 0;
  padding:11px 20px;border-radius:var(--pill);
  background:rgba(245,132,31,.12);border:1px solid rgba(245,132,31,.3);
  font-size:13.5px;color:#ffb877;font-weight:600;
}
.rm-u-status i{
  width:8px;height:8px;border-radius:50%;background:var(--gold);
  animation:rmPulse 2s ease-in-out infinite;
}
@keyframes rmPulse{0%,100%{opacity:1}50%{opacity:.35}}
.rm-u-card-actions{
  display:flex;flex-direction:column;gap:12px;max-width:360px;margin:26px auto 0;
}
.rm-u-card-actions .rm-btn{width:100%}
.rm-u-card-foot{margin-top:26px;font-size:13.5px;color:#8f7aa5}
.rm-u-card-foot a{color:#c58ae8;font-weight:600}

/* ---- responsivo ---- */
@media (max-width:1080px){
  .rm-u-hero .rm-container{grid-template-columns:1fr;gap:44px}
  .rm-u-copy{order:-1}
  .rm-u-visual{height:400px}
  .rm-u-photo{width:min(92vw,440px)}
  .rm-u-disc{width:330px;height:330px}
  .rm-u-arc{width:400px;height:400px}
  .rm-u-orbit{display:none}
  .rm-u-lead{max-width:none}
}
@media (max-width:600px){
  .rm-u-hero{padding:52px 0 44px}
  .rm-u-visual{height:320px}
  .rm-u-disc{width:250px;height:250px}
  .rm-u-arc{width:305px;height:305px}
  .rm-u-photo{width:min(94vw,360px);top:14px}
  .rm-u-stat{flex:1 1 100%}
  .rm-u-cta .rm-btn{width:100%}
  .rm-u-card{padding:32px 22px}
}
@media (prefers-reduced-motion:reduce){
  .rm-u-arc,.rm-u-orbit,.rm-u-anchor .rm-u-chip{animation:none!important}
}

/* faixa de desconto em destaque no card "quer saber seu desconto?" */
.rm-u-range{
  margin:26px auto;padding:22px 26px;max-width:420px;
  background:rgba(245,132,31,.08);border:1px solid rgba(245,132,31,.26);
  border-radius:20px;
}
.rm-u-range b{
  display:block;font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(34px,5vw,46px);line-height:1;letter-spacing:-.02em;
  background:linear-gradient(118deg,#f5841f 20%,#b43ac6 88%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-u-range span{
  display:block;margin-top:8px;font-size:14px;color:var(--rm-muted);font-weight:500;
}
@media (max-width:600px){
  .rm-u-range{padding:18px 20px;margin:22px auto}
}
